Access right to webserver user

Hello,

Sorry again.

I don’t know how to launch python script by webui with my user www-data.

my script:

#!/usr/bin/env python3

from cellulariot import cellulariot
import time

node = cellulariot.CellularIoTApp()
node.setupGPIO()

time.sleep(0.5)
node.turnOnRelay()

Step to reproduce:

sudo mkdir /var/www/.local
sudo mkdir /var/www/.cache
sudo chown www-data.www-data /var/www/.local
sudo chown www-data.www-data /var/www/.cache
sudo -H -u www-data pip3 install --user RPi.GPIO
sudo -H -u www-data pip3 install --user sixfab-cellulariot
sudo -H -u www-data pip3 install --user smnbus

In webui, when I launched script:

Erreur sur /var/www/html/plugins/script/data/relay_on.PY 2>&1 valeur retournée : 1. Détails : Sixfab Raspberry Pi Cellular IoT Application Shield Class initialized! Traceback (most recent call last): File "/var/www/html/plugins/script/data/relay_on.PY", line 7, in node.setupGPIO() File "/usr/local/lib/python3.7/dist-packages/sixfab_cellulariot-1.2.0-py3.7.egg/cellulariot/cellulariot.py", line 693, in setupGPIO RuntimeError: Not running on a RPi! /usr/local/lib/python3.7/dist-packages/sixfab_cellulariot-1.2.0-py3.7.egg/cellulariot/cellulariot.py:125: RuntimeWarning: No channels have been set up yet - nothing to clean up! Try cleaning up at the end of your program instead!

Access rights:

 ls -lart /var/www/html/plugins/script/data/relay_on.PY
-rwxrwxr-x 1 www-data www-data 161 juil. 13 19:35 /var/www/html/plugins/script/data/relay_on.PY

And launched by terminal:

sudo -u www-data /var/www/html/plugins/script/data/relay_on.PY
[sudo] Mot de passe de jeedom_:_
Sixfab Raspberry Pi Cellular IoT Application Shield Class initialized!
Traceback (most recent call last):
  File "/var/www/html/plugins/script/data/relay_on.PY", line 7, in <module>
    node.setupGPIO()
  File "/usr/local/lib/python3.7/dist-packages/sixfab_cellulariot-1.2.0-py3.7.egg/cellulariot/cellulariot.py", line 693, in setupGPIO
RuntimeError: Not running on a RPi!
/usr/local/lib/python3.7/dist-packages/sixfab_cellulariot-1.2.0-py3.7.egg/cellulariot/cellulariot.py:125: RuntimeWarning: No channels have been set up yet - nothing to clean up!  Try cleaning up at the end of your program instead!

Thanks

Found solution here: https://sourceforge.net/p/raspberry-gpio-python/tickets/171/

If it can help someone.

I did that:
sudo vim /etc/udev/rules.d/90-gpio.rules

within:

KERNEL=="gpiomem", OWNER="root", GROUP="gpio"

and

sudo groupadd -f --system gpio
sudo usermod -a -G gpio www-data

I don’t know if it’s right or wrong, or good practices.
Thanks
after reboot, webui works!