我有一个与其他团队共享的部署项目。我已经用保险库加密了我的秘密。我想用密码加密生产文件,用其他密码加密暂存文件,以避免其他团队访问生产机密。
有可能这样做吗?
我做过类似的事情。我的秘密:
cat /group_vars/all/vault_production.yml (encrypt with password A)
production_password: 'test1'
cat/group_vars/all/vault_staging.yml (encrypt with password B)
staging_password: 'test2'
我的环境:
cat hosts-production
[all:vars]
env_type=production
cat hosts-staging
[all:vars]
env_type=staging
我的脚本:
- copy:
content: |
env PASS={{hostvars[inventory_hostname][env_type + '_password']}}
...
我就这样启动了剧本。
# for production
ansible-playbook -i hosts-staging test.yml --vault-password-file .password_a
# for staging
ansible-playbook -i hosts-staging test.yml --vault-password-file .password_b
但这不起作用,因为有 2 个不同的密码(错误!解密失败)。你知道怎么做吗 ?
谢谢。
BR,
埃里克