openwisp/ansible-openwisp2

error during install freeradius-role

chaosenze opened this issue · 2 comments

Hi,

it looks like it's the wrong path to freeradius config dir.

TASK [openwisp.openwisp2 : Enable SQL module] ************************************************************************************************************************************************************************************************
fatal: [openwisp2.dungeon.myhome]: FAILED! => {"changed": false, "msg": "Error while linking: [Errno 2] No such file or directory: b'/etc/freeradius/mods-available/sql' -> b'/etc/freeradius/mods-enabled/sql'", "path": "/etc/freeradius/mods-enabled/sql"}
$ cat /etc/os-release 
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
$ ls -l /etc/freeradius/
total 0
drwxr-xr-x 1 freerad freerad 408 Sep 13 01:18 3.0
$ ansible-galaxy role list
# /home/ansible/.ansible/roles
- Stouts.postfix, origin/develop
- openwisp.influxdb, origin/master
- openwisp.openwisp2, 22.5.1

Having the same issue.
Reason is, that freeradius has (slightly) modified their directory structure, by adding a directory named 3.0/ to /etc/freeradius/

As a workaround, this can simply be fixed by adjusting the variable freeradius_dir in this role (in my case in ~/.ansible/roles/openwisp.openwisp2/defaults/main.yml) to /etc/freeradius/3.0.

You might use this command (check your module path with ansible --version upfront):
sed -i 's|freeradius_dir: /etc/freeradius|freeradius_dir: /etc/freeradius/3.0|' ~/.ansible/roles/openwisp.openwisp2/defaults/main.yml

Fix available here:
#461