Я запускаю сценарий оболочки (Centos 6.7) от jenkins, содержащий эту команду, чтобы импортировать корневую среду:
env -i `cat /home/admin/root_environment.sh` /home/admin/create_user.sh
Root_environment был создан с помощью
env > root_environment.sh
скрипт create_user.sh содержит
/usr/sbin/useradd -p "pass" "username"
Jenkins работает с собственным пользователем jenkins. Скрипт create_user.sh работает правильно, если я запускаю его как root, однако, работая с jenkins, я получаю:
useradd: cannot lock /etc/passwd; try again later
Вы можете добавить пользователя jenkins в группу wheel с привилегиями sudo (как root)
usermod -aG wheel jenkins
а затем используйте это в своем скрипте
echo "jenkins-password" | sudo -S /usr/sbin/useradd -p "pass" "username"