0
мне удалось так тариф для запуска ansiblePlaybook в работы DSL сценария:AnsiblePlaybook Дженкинс Pipeline
ansiblePlaybook("running-colour.yml") {
inventoryPath("ec2.py")
additionalParameters("--vault-password-file \$ANSIBLE_VAULT_KEY_FILE -e env_name=\$ENVIRONMENT_NAME")
}
Но когда я бегу те же Params в трубе:
ansiblePlaybook playbook: 'running-colour.yml', inventory: 'ec2.py', extras: "-e env_name=$environment --vault-password-file $ansibleVaultKeyFile"
Это дало бы мне это ошибка, которая не говорит мне, что не так:
ansible-playbook running-colour.yml -i ec2.py -f 5 -e env_name=prod --vault-password-file ****
FATAL: command execution failed
hudson.AbortException: Ansible playbook execution failed
at org.jenkinsci.plugins.ansible.AnsiblePlaybookBuilder.perform(AnsiblePlaybookBuilder.java:227)
at org.jenkinsci.plugins.ansible.workflow.AnsiblePlaybookStep$AnsiblePlaybookExecution.run(AnsiblePlaybookStep.java:290)
at org.jenkinsci.plugins.ansible.workflow.AnsiblePlaybookStep$AnsiblePlaybookExecution.run(AnsiblePlaybookStep.java:226)
at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1$1.call(AbstractSynchronousNonBlockingStepExecution.java:52)
at hudson.security.ACL.impersonate(ACL.java:221)
at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1.run(AbstractSynchronousNonBlockingStepExecution.java:49)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Таким образом, я попытался запустить команду, напечатанную как неудачную в sh
Шаг:
sh "ansible-playbook running-colour.yml -i ec2.py -f 5 -e env_name=prod --vault-password-file $file"
И это работает!
Да, это было исправлено в последней версии плагина Kubernetes, который мы использовали. – Joan