ANSIBLE_ROLES_PATH cannot assume to get correct role in bash script
来自Ansible:我可以从命令行执行角色吗? -
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | HOST_PATTERN=$1 shift ROLE=$1 shift echo"To apply role "$ROLE" to host/group "$HOST_PATTERN"..." export ANSIBLE_ROLES_PATH="$(pwd)/roles" export ANSIBLE_RETRY_FILES_ENABLED="False" ANSIBLE_ROLES_PATH="$(pwd)/roles" ansible-playbook"$@" /dev/stdin <<END --- - hosts: $HOST_PATTERN roles: - $ROLE END |
问题是当我使用
下面是错误消息
1 | fatal: [my-api]: FAILED! => {"changed": false,"checksum_dest": null,"checksum_src":"d3a0ae8f3b45a0a7906d1be7027302a8b5ee07a0","dest":"/tmp/install-amazon2-td-agent4.sh","elapsed": 0,"gid": 0,"group":"root","mode":"0644","msg":"Destination /tmp/install-amazon2-td-agent4.sh is not writable","owner":"root","size": 838,"src":"/home/ec2-user/.ansible/tmp/ansible-tmp-1600788856.749975-487-237398580935180/tmpobyegc","state":"file","uid": 0,"url":"https://toolbelt.treasuredata.com/sh/install-amazon2-td-agent4.sh"} |
基于
1 2 3 4 5 6 7 | ANSIBLE_ROLES_PATH="$(pwd)/roles" ansible-playbook"$@" /dev/stdin <<END --- - hosts: $HOST_PATTERN become: yes roles: - $ROLE END |