我想在dokku中Ansible中添加SSH键。当键已经被添加时,我得到的错误如下:
"\r\nDuplicate SSH Key name\r\nsshcommand returned an error: 255\r\n"当然,我可以忽略它,但是如果通过运行键来添加键,我可以预先知道:
vagrant@vagrant:/home/dokku$ dokku ssh-keys:list
SHA256:dai6gOKjl1NMD1pre1104aF/Iz8Cfy8gmHdOx4RgZvs NAME="UserA""
SHA256:zYYrX2tXt95wRjXFHMcefFkSIHotulkU62kFoaFGV8c NAME="UserB""是否有任何方法检查用户是否已经定义?类似于:
- name: authorize developers
raw: dokku ssh-keys:add {{ item }} {{ ssh_dir }}/{{ item }}.pub
when: "{{ item }} not in keys.stdout_lines"
with_items: "{{ developers }}"发布于 2017-06-02 00:03:13
您可能需要以下内容:
- name: sshcommand list dokku
command: sshcommand list dokku
changed_when: False
register: dokku_ssh_users
ignore_errors: true
- name: dokku ssh-keys:add
shell: 'key=$(cat "{{ item.value }}"); echo "$key" | dokku ssh-keys:add {{ item.key }}'
when: dokku_ssh_users is defined and dokku_ssh_users.stdout.find(item.key) == -1
with_dict:
username: path/to/keyhttps://stackoverflow.com/questions/44004803
复制相似问题