feat: make fixes to be compatible with latest version (#5)
All checks were successful
checks-test / Lint (push) Successful in 16s
checks-test / molecule (debian11) (push) Successful in 2m11s
checks-test / molecule (debian13) (push) Successful in 2m21s
checks-test / molecule (rockylinux10) (push) Successful in 2m19s
checks-test / molecule (debian12) (push) Successful in 2m43s
checks-test / molecule (rockylinux9) (push) Successful in 1m55s
checks-test / molecule (ubuntu2204) (push) Successful in 1m47s
checks-test / molecule (ubuntu2404) (push) Successful in 1m54s

Reviewed-on: #5
Co-authored-by: Mykhailo Nikiforov <mn@palkoi.net>
Co-committed-by: Mykhailo Nikiforov <mn@palkoi.net>
This commit was merged in pull request #5.
This commit is contained in:
2025-12-06 21:34:55 +02:00
committed by Gitea Bot
parent 0b25b8b669
commit f12fe903de
4 changed files with 18 additions and 16 deletions

View File

@@ -22,11 +22,11 @@ jobs:
with:
path: "palkx.users"
- name: Setup Python 3
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: "3.x"
python-version: "3.13"
- name: Intall test dependencies
run: pip3 install yamllint ansible-lint
run: pip3 install yamllint==1.37.1 ansible-lint==25.12.0
- name: Lint code with yamllint
run: "yamllint ."
- name: Lint code with yamllint
@@ -38,10 +38,12 @@ jobs:
matrix:
distro:
- rockylinux9
- rockylinux10
- ubuntu2204
- ubuntu2404
- debian11
- debian12
- debian13
steps:
- name: Checkout the codebase
@@ -49,11 +51,11 @@ jobs:
with:
path: "palkx.users"
- name: Setup Python 3
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: "3.x"
python-version: "3.13"
- name: Intall test dependencies
run: pip3 install ansible molecule molecule-plugins[docker] docker
run: pip3 install ansible-core==2.20.0 molecule==25.12.0 molecule-plugins[docker]==25.8.12 docker==7.1.0
- name: Run Molecule tests
run: molecule test
env:

View File

@@ -8,7 +8,7 @@
package:
update_cache: true
cache_valid_time: 600
when: ansible_os_family == 'Debian'
when: ansible_facts["os_family"] == 'Debian'
- name: Ensure build dependencies are installed (RedHat).
package:
@@ -16,13 +16,13 @@
- openssh-server
- openssh-clients
state: present
when: ansible_os_family == 'RedHat'
when: ansible_facts["os_family"] == 'RedHat'
- name: Ensure build dependencies are installed (Fedora).
package:
name: procps
state: present
when: ansible_distribution == 'Fedora'
when: ansible_facts["distribution"] == 'Fedora'
- name: Ensure build dependencies are installed (Debian).
package:
@@ -30,7 +30,7 @@
- openssh-server
- openssh-client
state: present
when: ansible_os_family == 'Debian'
when: ansible_facts["os_family"] == 'Debian'
- name: Ensure auth.log file is present.
copy:
@@ -38,7 +38,7 @@
content: ""
force: false
mode: 0644
when: ansible_distribution == 'Debian'
when: ansible_facts["distribution"] == 'Debian'
roles:
- role: palkx.users

View File

@@ -7,7 +7,7 @@
- name: Create users
ansible.builtin.include_tasks: user.yml
when: ansible_default_ipv4.address in users[username]['passwords'] or users[username]['passwords'].get('default')
when: ansible_default_ipv4.address in users[username]['passwords'] or users[username]['passwords'].get('default', '') != ''
with_items: "{{ users.keys() }}"
loop_control:
loop_var: username

View File

@@ -11,15 +11,15 @@
ansible.builtin.user:
name: "{{ username }}"
password: "{{ users[username]['passwords'].get(ansible_default_ipv4.address) }}"
when: "ansible_default_ipv4.address in users[username]['passwords'] and
users[username]['passwords'].get(ansible_default_ipv4.address) != 'default'"
when: "ansible_facts['default_ipv4'].address in users[username]['passwords'] and
users[username]['passwords'].get(ansible_facts['default_ipv4'].address) != 'default'"
- name: "Set default password for user `{{ username }}`"
ansible.builtin.user:
name: "{{ username }}"
password: "{{ users[username]['passwords'].get('default') }}"
when: "ansible_default_ipv4.address not in users[username]['passwords'] or
users[username]['passwords'].get(ansible_default_ipv4.address) == 'default'"
when: "ansible_facts['default_ipv4'].address not in users[username]['passwords'] or
users[username]['passwords'].get(ansible_facts['default_ipv4'].address) == 'default'"
- name: "Setup ssh key for user `{{ username }}`"
ansible.posix.authorized_key: