From cc5ecab8870f2b70dbff162d03d20a63974ac3de Mon Sep 17 00:00:00 2001 From: Federico Capoano Date: Thu, 2 Jul 2026 15:51:32 -0300 Subject: [PATCH 1/2] [feature] Added support for Ubuntu 26.04 #633 Closes #633 --- .github/workflows/ci.yml | 1 + README.md | 2 +- docs/developer/installation.rst | 1 + docs/index.rst | 2 +- docs/user/role-variables.rst | 2 +- docs/user/system-requirements.rst | 1 + meta/main.yml | 1 + molecule/local/molecule.yml | 8 ++++++++ tasks/freeradius.yml | 15 +++++++++++++++ tasks/main.yml | 9 +++++++++ vars/ubuntu-26.yml | 6 ++++++ 11 files changed, 45 insertions(+), 3 deletions(-) create mode 100644 vars/ubuntu-26.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 36b7d27f..86b9c510 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,6 +27,7 @@ jobs: distro: - ubuntu2204 - ubuntu2404 + - ubuntu2604 - debian12 - debian13 diff --git a/README.md b/README.md index ecfb99bc..57bba977 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ Ansible role that installs the OpenWISP Server Application. -Tested on **Debian (Trixie/Bookworm)**, **Ubuntu (24/22 LTS)**. +Tested on **Debian (Trixie/Bookworm)**, **Ubuntu (26/24/22 LTS)**. **Recommended minimum ansible core version**: 2.13. diff --git a/docs/developer/installation.rst b/docs/developer/installation.rst index 4567239f..fffd6daf 100644 --- a/docs/developer/installation.rst +++ b/docs/developer/installation.rst @@ -82,6 +82,7 @@ linux debian/ubuntu systems): .. code-block:: shell + docker pull geerlingguy/docker-ubuntu2604-ansible:latest docker pull geerlingguy/docker-ubuntu2404-ansible:latest docker pull geerlingguy/docker-ubuntu2204-ansible:latest docker pull geerlingguy/docker-debian13-ansible:latest diff --git a/docs/index.rst b/docs/index.rst index bf783121..cd48c072 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -10,7 +10,7 @@ This ansible role allows deploying the OpenWISP Server Application. **Recommended minimum ansible core version**: 2.13. -Tested on **Debian (Trixie/Bookworm)**, **Ubuntu (24/22 LTS)**. +Tested on **Debian (Trixie/Bookworm)**, **Ubuntu (26/24/22 LTS)**. The following diagram illustrates the role of the Ansible OpenWISP role within the OpenWISP architecture. diff --git a/docs/user/role-variables.rst b/docs/user/role-variables.rst index 70770452..25415ae6 100644 --- a/docs/user/role-variables.rst +++ b/docs/user/role-variables.rst @@ -31,7 +31,7 @@ take a look at `the default values of these variables openwisp2_monitoring_version: "openwisp-monitoring~=1.0.0" openwisp2_radius_version: "openwisp-radius~=1.0.0" openwisp2_django_version: "django~=3.2.13" - # Extra arguments passed to pip when reinstalling Python packages with --force-reinstall + # Extra arguments passed to pip when reinstalling Python packages with --force-reinstall # By default, packages are upgraded on each playbook run. # Can be overridden, for example: # openwisp2_pip_extra_args: "--upgrade --force-reinstall" diff --git a/docs/user/system-requirements.rst b/docs/user/system-requirements.rst index d3ea8050..fae0af38 100644 --- a/docs/user/system-requirements.rst +++ b/docs/user/system-requirements.rst @@ -43,5 +43,6 @@ Supported Operating Systems - Debian 12 - Debian 11 +- Ubuntu 26 LTS - Ubuntu 24 LTS - Ubuntu 22 LTS diff --git a/meta/main.yml b/meta/main.yml index afc29f69..505d9afc 100644 --- a/meta/main.yml +++ b/meta/main.yml @@ -31,6 +31,7 @@ galaxy_info: versions: - jammy - noble + - resolute galaxy_tags: - system - networking diff --git a/molecule/local/molecule.yml b/molecule/local/molecule.yml index 0f3a181b..e0a269f4 100644 --- a/molecule/local/molecule.yml +++ b/molecule/local/molecule.yml @@ -10,6 +10,14 @@ lint: | set -e ../../run-qa-checks platforms: + - name: "openwisp2-ubuntu2604" + image: "geerlingguy/docker-ubuntu2604-ansible:latest" + command: ${MOLECULE_DOCKER_COMMAND:-""} + volumes: + - /sys/fs/cgroup:/sys/fs/cgroup:rw + cgroupns_mode: host + privileged: true + pre_build_image: true - name: "openwisp2-ubuntu2404" image: "geerlingguy/docker-ubuntu2404-ansible:latest" command: ${MOLECULE_DOCKER_COMMAND:-""} diff --git a/tasks/freeradius.yml b/tasks/freeradius.yml index 358552c1..46924220 100644 --- a/tasks/freeradius.yml +++ b/tasks/freeradius.yml @@ -44,6 +44,7 @@ ansible.builtin.set_fact: freeradius_dir: "/etc/freeradius/3.0" when: openwisp2_installed_freeradius_version.stdout == '3.0' + - name: Add freeradius repository into Ubuntu noble sources list become: true when: @@ -58,6 +59,20 @@ dest: /etc/apt/sources.list.d/networkradius.list mode: "0644" +- name: Add freeradius repository into Ubuntu resolute sources list + become: true + when: + - ansible_distribution|string == 'Ubuntu' + - ansible_distribution_release|string == 'resolute' + tags: + - molecule-idempotence-notest + ansible.builtin.copy: + content: > + deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/packages.networkradius.com.asc] + http://packages.networkradius.com/freeradius-3.2/ubuntu/resolute resolute main + dest: /etc/apt/sources.list.d/networkradius.list + mode: "0644" + - name: Add freeradius repository into Debian bookworm sources list become: true when: diff --git a/tasks/main.yml b/tasks/main.yml index 852cdde9..486bf63e 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -8,6 +8,15 @@ - ansible_distribution_release|string == 'trixie' tags: [always] +- name: Include variables for Ubuntu 26.04 + ansible.builtin.include_vars: + dir: "{{ role_path }}/vars" + files_matching: "^ubuntu-26.yml$" + when: + - ansible_distribution|string == 'Ubuntu' + - ansible_distribution_release|string == 'resolute' + tags: [always] + - name: Import APT tasks ansible.builtin.import_tasks: apt.yml tags: [openwisp2, apt] diff --git a/vars/ubuntu-26.yml b/vars/ubuntu-26.yml new file mode 100644 index 00000000..2ea4303d --- /dev/null +++ b/vars/ubuntu-26.yml @@ -0,0 +1,6 @@ +--- + +# Override variables for Ubuntu 26.04 + +openwisp2_ntp_pkg: ntpsec +openwisp2_libgdk_pixbuf_pkg: libgdk-pixbuf-2.0-0 From 281d141c5b78ccb83156fdb39d491c5f9f8c91ac Mon Sep 17 00:00:00 2001 From: Federico Capoano Date: Thu, 2 Jul 2026 16:22:13 -0300 Subject: [PATCH 2/2] [chores] Pointed freeradius apt to packages.inkbridgenetworks.com --- tasks/freeradius.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/freeradius.yml b/tasks/freeradius.yml index 46924220..0e1dff12 100644 --- a/tasks/freeradius.yml +++ b/tasks/freeradius.yml @@ -69,7 +69,7 @@ ansible.builtin.copy: content: > deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/packages.networkradius.com.asc] - http://packages.networkradius.com/freeradius-3.2/ubuntu/resolute resolute main + http://packages.inkbridgenetworks.com/freeradius-3.2/ubuntu/resolute resolute main dest: /etc/apt/sources.list.d/networkradius.list mode: "0644"