目的是使用Ansible和Gitlab在构建通过后部署软件。
ansible-playbook playbook.yml -u root --private-key=key.pem部署软件,但是
sudo -u gitlab-runner ansible-playbook playbook.yml -u root --private-key=key.pem在以下方面的成果:
PLAY ***************************************************************************
TASK [setup] *******************************************************************
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: OSError: [Errno 13] Permission denied: '/root/.ansible'
fatal: [system.example.com]: FAILED! => {"failed": true, "stdout": ""}
NO MORE HOSTS LEFT *************************************************************
PLAY RECAP *********************************************************************
system.example.com : ok=0 changed=0 unreachable=0 failed=1ansible-playbook --help显示-u是remote_user。由于这是设置为root的问题不应该发生。gitlab-runner身份登录并随后运行ansible-playbook playbook.yml -u root --private-key=key.pem成功发布于 2016-09-01 11:53:33
造成此问题的原因是,在驻留在gitlab-runner用户的主目录中的已知主机文件中省略了主机。
gitlab-runner身份登录,即sudo su - gitlab-runneransible-playbook playbook.yml -u root --private-key=key.pemyes,则输入Are you sure you want to continue connecting (yes/no)?retry按钮重新启动构建https://serverfault.com/questions/800447
复制相似问题