以ansible git module 要git clone 一個repository
過去都會以https方式去 直接綁定帳密去clone最為簡單
- name: clone myrepo
git:
repo: 'https://{{git_user}}:{{git_password}}@bitbucket.org/myacc/myrepo.git'
dest: '{{target_path}}'
version: 'master'
clone: true
但因為安全性考量bitbucket在2022/3/1後就不支援這樣直接綁帳密方式取得
改用ssh方式取
作業之前需先把要操作的主機的ssh設定到bitbuket的repo設定上
在要操作的主機
1.建立ssh key
~/.ssh ssh-keygen
2.複製public key內容
cat id_rsa.pub
複製內容
3.到bitbucket repo設定加入access_keys
bitbuckey/myrepo/access_keys 加入
在ansible host上執行腳本
- name: clone myrepo
git:
repo: 'git@bitbucket.org:{{myacc}}/myrepo.git'
dest: '{{target_path}}'
version: 'master'
clone: true
accept_hostkey: yes
注意這裡多加上了accept_hostkey的設定
沒有留言:
張貼留言