Commit Graph

323 Commits

Author SHA1 Message Date
Derek Nola
68a410fb4b Add external database integration test
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-02-27 11:52:47 -08:00
Derek Nola
5299941270 Switch to systemd image that works (#516)
- Use rancher/systemd-node which doesn't cause k3s to crash
- Expand requirements for testing, ensure deployments become ready at each playbook
- Add logging on failure for debugging

Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-02-27 09:38:38 -08:00
Pavlo
9650436585 fix: use correct variable for k3s old token for agents in upgrade.yml playbook (#513)
Signed-off-by: paulkarabilo <582643+paulkarabilo@users.noreply.github.com>
2026-02-26 12:04:16 -08:00
Jon S. Stumpf
a3bf02f069 fix: skip redundant fact gathering in server and agent plays
Signed-off-by: Jon S. Stumpf <jon.stumpf@gmail.com>
2026-02-26 12:03:56 -08:00
Jon S. Stumpf
6fcd4d3748 fix: wait for control plane to be ready before agents join
Signed-off-by: Jon S. Stumpf <jon.stumpf@gmail.com>
2026-02-26 12:03:56 -08:00
laszlojau
77b49f76ce Fix the 'Save the existing K3s token if needed' task (#503)
Signed-off-by: laszlojau <49835454+laszlojau@users.noreply.github.com>
2026-02-05 11:23:26 -08:00
Derek Nola
bc3f66be7b Add HA Server test (#491)
* Add HA Server test
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-01-26 09:15:58 -08:00
Derek Nola
1172805585 Install airgap selinux rpms when avaliable (#500)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-01-23 09:59:21 -08:00
Gilles H.
34073379ce Fix regex archlinux boot.txt (cgroup) (#499)
Update the regular expression to have a more specific match search term
for cgroup flags

Issue #495

Signed-off-by: Gilles Habran <gilleshabran@protonmail.com>
2026-01-20 12:19:20 -08:00
Derek Nola
2a0c43182b Provide configurable server/agent group names for airgap role (#497)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-01-20 10:21:32 -08:00
Derek Nola
f6491bb524 Support openrc systems on agent nodes, added openrc test matrix (#489)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-01-20 09:29:40 -08:00
Derek Nola
67ca2bfd1c Ensure agents are upgraded correctly, pass token (#484)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-01-13 09:41:29 -08:00
Derek Nola
a2a36f1fe5 Don't run yamlint on the GHA
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-01-12 13:32:23 -08:00
Derek Nola
6d6b0b9218 Enforce similar cgroup replacement pattern across OSes, fix lint naming
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-01-12 13:32:23 -08:00
Derek Nola
e4f8d8d737 k3s-upgrade lint naming
Signed-off-by: Derek Nola <derek.nola@suse.com>
2026-01-12 13:32:23 -08:00
Ken Powers
974b92d9f1 Fix typo in README regarding requirements file (#487)
Signed-off-by: Ken Powers <ken@kenpowers.net>
2026-01-12 10:10:18 -08:00
Gilles H.
59a223adab archlinux: add support for rpi5 and arm (#486)
Signed-off-by: Gilles Habran <gilleshabran@protonmail.com>
2026-01-12 10:10:08 -08:00
Aleksei Sviridkin
826c53975d fix(ansible): replace deprecated entities and sync version requirements (#478)
* refactor(ansible): replace deprecated with_items and ansible facts

Replace deprecated `with_items` with `loop` keyword across all roles.
Migrate from legacy `ansible_*` top-level facts to `ansible_facts['*']`
syntax to prepare for ansible-core 2.24 where INJECT_FACTS_AS_VARS
will default to False.

Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>

* chore(ansible): sync minimum version requirements to 2.15

Align version checks in prereq and airgap roles with README requirement
of ansible-core 2.15+.

Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>

---------

Signed-off-by: Aleksei Sviridkin <f@lex.la>
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-22 10:11:29 -08:00
ppascente
e11ff62d8f fix token management task to include regex_escape for special characters (#481)
Signed-off-by: Pete Pascente <ppascente@allete.com>
Co-authored-by: Pete Pascente <ppascente@allete.com>
2025-12-22 09:36:23 -08:00
Mörgæsis
1dcc7a6267 chore: document how to incorporate into existing project
* chore: document that you need to run the airgap role

Signed-off-by: Mörgæsis <morgaesis+git@morgaes.is>
2025-12-15 09:51:43 -08:00
Aleksei Sviridkin
49b810c948 feat(k3s_upgrade): regenerate service files from templates instead of restoring backups (#474)
* feat(k3s_upgrade): regenerate service files from templates instead of restoring backups

The k3s_upgrade role previously restored backup service files after binary
upgrade, which meant any changes to extra_server_args or extra_agent_args
would not be applied during upgrades.

This change:
- Replaces backup restoration with template-based service file regeneration
- Reuses templates from k3s_server role via symlink
- Adds necessary defaults for template variables

Co-Authored-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
2025-12-11 10:54:58 -08:00
Derek Nola
53c35bac5f Add basic integration test (#471)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-12-05 10:25:41 -08:00
Derek Nola
66ce443c2c Fix changelog comparison line
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-12-04 12:26:42 -08:00
Derek Nola
f85bc4d014 Publish 1.1.1 tag
Signed-off-by: Derek Nola <derek.nola@suse.com>
1.1.1
2025-12-04 12:24:00 -08:00
Derek Nola
6737051311 Improve capture regex for k3s-agent service replacement (#470)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-12-04 12:14:23 -08:00
Phillip Thurston
11e99b0b7f Add ability to move kubeconfig to control node on demand (#467)
Signed-off-by: Phillip Thurston <phil@goinvictus.com>
2025-12-04 12:14:04 -08:00
Softplus+
c23ef774e4 refactor(prereq): use ansible_os_family for broader RHEL support (#469)
Changed the condition from checking specific 'ansible_distribution' names to 'ansible_os_family == "RedHat"'. This correctly targets all RHEL-based systems (including AlmaLinux, Rocky, CentOS) and ensures dependencies like 'kernel-modules-extra' are installed without listing each distribution manually.

Signed-off-by: Hanseung Kim <u72mlzb@gmail.com>
2025-12-04 10:32:00 -08:00
fch-aa
3b34d679e5 fix(upgrade): Implement airgap support for the upgrade flow. (#465)
Signed-off-by: fch-aa <21101725+fch-aa@users.noreply.github.com>

---------

Signed-off-by: fch-aa <21101725+fch-aa@users.noreply.github.com>
Co-authored-by: fch-aa <21101725+fch-aa@users.noreply.github.com>
2025-12-04 10:29:28 -08:00
Luis Salgado Alves
f06b042aab Refactor task to add compatibility with cmdline changes on ubuntu 25 (#461)
Signed-off-by: lufisaal <lalves.fs@gmail.com>
2025-11-17 10:31:27 -08:00
Riccardo Pressiani
9c945da3cc feat: add ufw allow inter-node ports (#460)
Signed-off-by: Riccardo Pressiani <riccardo.pressiani@gmail.com>
2025-11-10 09:31:11 -08:00
Derek Nola
db206785b4 Pin python to 3.13 for ansible 2.19 support (#462)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-11-10 09:29:24 -08:00
Jonathan Hanson
7209114690 allow for opt_tls_san to be undefined, since it's optionally defined (#456)
Signed-off-by: Jonathan Hanson <jonathan@jonathan-hanson.org>
2025-10-24 10:03:47 -07:00
too-gee
43c2fde96e Trim strings to prevent coercion warning
Signed-off-by: too-gee <116376+too-gee@users.noreply.github.com>
2025-10-06 10:00:05 -07:00
too-gee
d9e64c0511 Remove vars from task names
Signed-off-by: too-gee <116376+too-gee@users.noreply.github.com>
2025-10-06 10:00:05 -07:00
Derek Nola
39f3f562e1 Update CHANGELOG.md for tag 1.1.0 (#444)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-09-16 08:39:36 -07:00
Derek Nola
08a147e6b9 Update default branch to main
Signed-off-by: Derek Nola <derek.nola@suse.com>
1.1.0
2025-09-15 14:47:29 -07:00
Derek Nola
8c38db014c Consolidate server templates into a single one (#443)
- Fix linting to achieve production level for k3s-server role

Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-09-15 14:24:01 -07:00
Derek Nola
b77e0049c8 Fix linting to bring back 'production' status for all non-server k3s roles
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-09-15 12:46:37 -07:00
Derek Nola
d397c5c3dd Remove agent jinja template
* Remove opt_tls_san for agents, it is not a valid agent argument
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-09-15 12:46:37 -07:00
Derek Nola
dccb5ed4ad Bump example versions
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-09-15 12:46:37 -07:00
Guillaume A
f2aed3ba47 Automatically inject tls-san when api_endpoint differs from hostname (#434)
* Auto-add --tls-san={{ api_endpoint }} when it differs from ansible_hostname
* Ensures first server generates certificate with all required SANs
* Add .ansible/ and PR_DESCRIPTION.md to gitignore

Signed-off-by: Guillaume Andre <mail@guillaumea.fr>
2025-09-15 11:21:20 -07:00
Vadim Radu
cb640b853f Fix ipv4 lookup for firewalld (#440)
Signed-off-by: Vadim Radu <vadim@printarescu.ro>
2025-09-08 09:52:26 -07:00
David Barnett
fad5c05cb4 fix k3s_upgrade error (#439)
Signed-off-by: David Barnett <davidb@rnett.nz>
2025-09-04 15:01:05 -07:00
Felix Seifert
10b9f6634f docs: describe adding collection to requirements.yaml (#438)
Signed-off-by: Felix Seifert <mail@felix-seifert.com>
2025-09-02 16:49:27 -07:00
Derek Nola
cd543a660d Inject installation envs for install script (#433)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-08-26 09:57:53 -07:00
Artur Kamalov
5a194381b0 Bump version in galaxy.yml (#432)
Signed-off-by: Artur Kamalov <arttambel@gmail.com>
2025-08-22 10:06:48 -07:00
Derek Nola
8b3845f9a4 Add missing RHEL 10 kernel module (#431)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-08-20 08:58:55 -07:00
Derek Nola
c239874136 Don't update_cache if airgapped (#430)
Signed-off-by: Derek Nola <derek.nola@suse.com>
2025-08-12 11:13:54 -07:00
Claiyc
e9dbf66cef Distribute multiple image archives (#428)
Signed-off-by: Claiyc <claiyc@outlook.com>
2025-08-12 11:13:02 -07:00
fch-aa
66385e35eb fix(agent): Use proper env file path during provisioning. (#421)
Signed-off-by: fch-aa <21101725+fch-aa@users.noreply.github.com>
Co-authored-by: fch-aa <21101725+fch-aa@users.noreply.github.com>
1.0.1
2025-07-10 09:35:25 -07:00