1

Ansible Vault 暗号化ファイルに保存されているいくつかのパラメーターを参照する Ansible Playbook を起動しようとしている Jenkinsfile があります。

Ansible はバージョン 2.4.0.0 でインストールされます

これが私のジェンキンスファイルのスニペットです:

withCredentials([[$class: 'StringBinding', credentialsId: 'vault_token', variable: 'VAULT_TOKEN']]) {

                    ansiblePlaybook(
                            playbook: "./ansible/playbooks/deploy.yml",
                            inventory: "./ansible/hosts/hosts",
                            credentialsId: "$VAULT_TOKEN"
                }

そして、プレイブックがあります:

---
- hosts: managers
  become: true
  tasks:
  - include_vars: ../vaults/passwords.yml
  - name: Log into Docker repository
    docker_login:
      registry: my.registry.org
      username: "{{ reg_user }}"
      password: "{{ reg_password }}" 

このプレイブックには、暗号化された値を含むボールト ファイルが含まれています。Jenkins が Jenkinsfile を実行すると、次のエラーが表示されます: Attempting to decrypt but no vault secrets found

Jenkinsfile で渡した credentialId を ansible が使用しないのはなぜですか? この資格情報を渡す良い方法は何ですか?

4

2 に答える 2