Skip to content

Update role to latest supported OSes and include license support#326

Open
aknot242 wants to merge 16 commits into
mainfrom
update-os-support
Open

Update role to latest supported OSes and include license support#326
aknot242 wants to merge 16 commits into
mainfrom
update-os-support

Conversation

@aknot242
Copy link
Copy Markdown
Collaborator

Proposed changes

This PR updates the role to reflect the current set of supported NGINX App Protect WAF and DoS distributions, adds NGINX Plus JWT license support, and fixes a range of Molecule CI issues that prevented the test suite from running.


Features

  • NGINX Plus JWT license support: Added jwt field to the nginx_app_protect_license variable (required for NGINX Plus R33+). Updated main.yml, all Molecule converge.yml playbooks, and the README to document the new NGINX_JWT environment variable for CI workflows.

Enhancements

  • Updated supported distribution lists in main.yml, main.yml, and README.md:
    • WAF: Added Alpine 3.22, Amazon Linux 2023, Debian 11/12, Oracle Linux 8, RHEL 9/10, Rocky Linux 8/9, Ubuntu 22.04/24.04. Removed Amazon Linux 2, Debian 10, Ubuntu 18.04/20.04.
    • DoS: Added Alpine 3.21/3.22, Amazon Linux 2023, Debian 11/12, RHEL 9, Rocky Linux 8/9, Ubuntu 22.04/24.04. Removed Debian 10, Ubuntu 18.04/20.04.
  • Bumped dependency versions in README.md: ansible.posix → 2.0.0, community.general → 10.7.0, community.crypto → 2.26.2, community.docker → 4.6.0.
  • Replaced deprecated variables: ansible_service_mgransible_facts['service_mgr'] and ansible_python['version']['major']ansible_facts['python']['version']['major'] in task files.
  • Updated copyright year to 2026.

Bug Fixes

  • Molecule ANSIBLE_ROLES_PATH: Added env: ANSIBLE_ROLES_PATH to all Molecule scenarios (advanced, default, dos, specific-version, uninstall) so the role under test is correctly resolved during converge.
  • Molecule remote_tmp: Added remote_tmp: /tmp/.ansible/tmp to all scenario provisioner.config_options.defaults to fix temporary directory creation failures in containers.
  • RHEL/Oracle Linux Python interpreter: Added ansible_python_interpreter: /usr/libexec/platform-python host vars for rhel-8 and oraclelinux-8 in the default scenario to prevent Ansible from selecting Python 3.11, which lacks dnf bindings on those platforms.

CI/CD

  • Updated all Molecule scenario platforms to replace removed distributions (ubuntu:focal, amazonlinux:2, alpine:3.17, rhel-ubi8:8.7) with currently supported ones.
  • Added FROM --platform=linux/amd64 to Dockerfile.j2 to ensure correct platform images are built when running Molecule on Apple Silicon (arm64) hosts.
  • Added systemd and python3-cryptography to the dnf install layer in Dockerfile.j2 for Amazon Linux 2023 / RHEL-family containers.
  • Added NGINX_JWT handling to all Molecule prepare playbooks (common/prepare.yml, advanced/prepare.yml, uninstall/prepare.yml).
  • Added wait_for_connection to prepare.yml to allow systemd to finish booting before Ansible connects.
  • Updated recommended Molecule version in README.md from 4.x to 26.x.

Checklist

Before creating a PR, run through this checklist and mark each as complete.

  • I have read the CONTRIBUTING document
  • I have added Molecule tests that prove my fix is effective or that my feature works
  • I have checked that any relevant Molecule tests pass after adding my changes
  • I have updated any relevant documentation (defaults/main.yml, README.md and CHANGELOG.md)

@aknot242 aknot242 requested a review from alessfg as a code owner April 24, 2026 13:04
@github-actions github-actions Bot added the dependencies Pull requests that update a dependency file label Apr 24, 2026
@aknot242 aknot242 self-assigned this Apr 24, 2026
@alessfg alessfg added bug Something isn't working enhancement Enhance/improve an existing feature labels Apr 24, 2026
aknot242 and others added 15 commits April 27, 2026 15:23
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Copilot <copilot@github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working dependencies Pull requests that update a dependency file enhancement Enhance/improve an existing feature

Projects

Development

Successfully merging this pull request may close these issues.

2 participants