Sto usando fabric per avviare un comando su un server remoto.
Vorrei avviare questo comando come utente diverso (né quello connesso né root).Fabric - sudo -u
def colstat():
run('python manage.py collectstatic --noinput')
Cercando
def colstat():
sudo('-u www-data python manage.py collectstatic --noinput')
Oviously questo non funzionerà perché -u sarà considerato come un comando e non l'opzione di sudo
out:/bin/bash: - u: comando non trovato
(www-data è l'utente che deve eseguire il comando)
Come posso utilizzare www-data per eseguire il comando da Fabric?
Vale la pena notare che penso che un'applicazione non debba richiedere privilegi sudo. Penso che dovremmo essere sempre in grado di gestire cose come ACL. –