)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"5f640338e4047668285827ef0f3c9cf1f00edd3a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     zhuzeyu \u003czhu.zeyu@zte.com.cn\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-09-12 10:05:57 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"When deployment with multinode, using this script can make service visit the target_node without password, it will make the process of the deployment simple."},{"line_number":8,"context_line":"using method: ./trustme.sh \u003ctarget_node ip\u003e \u003cpassword\u003e"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Change-Id: I5bf19b288ccac2a6d44f9706f5711e10c1febfa8"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9a89bdaa_37b0718b","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":157},"updated":"2016-09-12 03:11:27.000000000","message":"1st line should be briefer","commit_id":"5244fe70514e8f2372f5a270f28240a8c758fd43"},{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"83a88fe0fd118e1ba7c400e85963e1ee006f5cc5","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2016-09-23 16:43:14 +0800"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Visit target nodes without password."},{"line_number":8,"context_line":"Theory: deploy ssh key to target nodes."},{"line_number":9,"context_line":"This script reads target nodes information from \u0027allhosts\u0027 file."},{"line_number":10,"context_line":"You can configure more than one item in this file,"},{"line_number":11,"context_line":"and each item occupies one line without blank."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"5a8bc5a2_b782d392","line":8,"updated":"2016-09-23 08:45:35.000000000","message":"Add a newline between the head (title) and the body of your commit message","commit_id":"434f174f7b8fd426c36e140ae8d937aa94e0848d"},{"author":{"_account_id":167,"name":"Christian Berendt","email":"berendt@osism.tech","username":"berendt"},"change_message_id":"83a88fe0fd118e1ba7c400e85963e1ee006f5cc5","unresolved":false,"context_lines":[{"line_number":12,"context_line":"The format of \u0027allhosts\u0027 file:  \u003cipaddr:passwd\u003e"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: I5bf19b288ccac2a6d44f9706f5711e10c1febfa8"},{"line_number":15,"context_line":"Signed-off-by: zhuzeyu \u003czhu.zeyu@zte.com.cn\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"5a8bc5a2_174e2796","line":15,"updated":"2016-09-23 08:45:35.000000000","message":"This line is not required (http://docs.openstack.org/infra/manual/developers.html#using-signed-off-by).","commit_id":"434f174f7b8fd426c36e140ae8d937aa94e0848d"},{"author":{"_account_id":13642,"name":"Vikram Hosakote","email":"vikram.ganesh@gmail.com","username":"vhosakot"},"change_message_id":"acb29a91a7f146f0c21ce75f77249f8b7c05cb39","unresolved":false,"context_lines":[{"line_number":10,"context_line":"This playbook reads target hosts information from \u0027ip_passwd.yml\u0027 vars_files."},{"line_number":11,"context_line":"You can configure more than one item in this vars_files,"},{"line_number":12,"context_line":"and each item includes IP and passwd information of the target node."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Change-Id: I5bf19b288ccac2a6d44f9706f5711e10c1febfa8"},{"line_number":15,"context_line":"Signed-off-by: zhuzeyu \u003czhu.zeyu@zte.com.cn\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"fa6399be_18d01a53","line":13,"updated":"2016-10-19 04:53:45.000000000","message":"Can you add the bug ID with errors?","commit_id":"7584d121733d32c4ea05ab10b6a8654371b291b1"},{"author":{"_account_id":13642,"name":"Vikram Hosakote","email":"vikram.ganesh@gmail.com","username":"vhosakot"},"change_message_id":"4a331805a1e3984394c3a00245f434bb8cce764f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"fa6399be_6d53cb17","line":12,"updated":"2016-10-20 15:58:04.000000000","message":"Could you please add the bug ID with errors or a link to the bp here?","commit_id":"41ff8adc72e2cedb13091c590d18a2873b4f2f61"}],"ansible/roles/baremetal/tasks/pre-install.yml":[{"author":{"_account_id":1390,"name":"Paul Bourke","email":"pauldbourke@proton.me","username":"pauldbourke"},"change_message_id":"c38a379ce797c30766d9a408f3f4e057f04a543f","unresolved":false,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"- name: add public key to root user authorized keys"},{"line_number":11,"context_line":"  authorized_key:"},{"line_number":12,"context_line":"    user: root"},{"line_number":13,"context_line":"    key: \"{{ lookup(\u0027file\u0027, \u0027/root/.ssh/id_rsa.pub\u0027) }}\""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"- name: get node hostname"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa6399be_5b7990fb","line":12,"range":{"start_line":12,"start_character":10,"end_line":12,"end_character":14},"updated":"2016-10-19 15:27:59.000000000","message":"What if Kolla is not being run as root? SSH access would need to be configured for Ansible to even get this far.","commit_id":"ec3879ff55decf4583c1af635be9d803ee1f9e87"},{"author":{"_account_id":7488,"name":"Jeffrey Zhang","email":"zhang.lei.fly@gmail.com","username":"Jeffrey4l"},"change_message_id":"914a6fe43cd1ec04d4d6fb58030b9a428f805b2c","unresolved":false,"context_lines":[{"line_number":9,"context_line":""},{"line_number":10,"context_line":"- name: add public key to root user authorized keys"},{"line_number":11,"context_line":"  authorized_key:"},{"line_number":12,"context_line":"    user: root"},{"line_number":13,"context_line":"    key: \"{{ lookup(\u0027file\u0027, \u0027/root/.ssh/id_rsa.pub\u0027) }}\""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"- name: get node hostname"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa6399be_f926ec14","line":12,"range":{"start_line":12,"start_character":10,"end_line":12,"end_character":14},"in_reply_to":"fa6399be_5b7990fb","updated":"2016-10-19 16:06:30.000000000","message":"{{ ansible_user }} should better.","commit_id":"ec3879ff55decf4583c1af635be9d803ee1f9e87"},{"author":{"_account_id":7488,"name":"Jeffrey Zhang","email":"zhang.lei.fly@gmail.com","username":"Jeffrey4l"},"change_message_id":"914a6fe43cd1ec04d4d6fb58030b9a428f805b2c","unresolved":false,"context_lines":[{"line_number":10,"context_line":"- name: add public key to root user authorized keys"},{"line_number":11,"context_line":"  authorized_key:"},{"line_number":12,"context_line":"    user: root"},{"line_number":13,"context_line":"    key: \"{{ lookup(\u0027file\u0027, \u0027/root/.ssh/id_rsa.pub\u0027) }}\""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"- name: get node hostname"},{"line_number":16,"context_line":"  shell: echo $(hostname)"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"fa6399be_59543820","line":13,"updated":"2016-10-19 16:06:30.000000000","message":"where this file come from?  what happen if this file do not exist.","commit_id":"ec3879ff55decf4583c1af635be9d803ee1f9e87"},{"author":{"_account_id":7488,"name":"Jeffrey Zhang","email":"zhang.lei.fly@gmail.com","username":"Jeffrey4l"},"change_message_id":"246651204e756bfd66e1f46ea0e4ab49c97bcc3d","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    user: \"{{ansible_user}}\""},{"line_number":36,"context_line":"    key: \"{{ kolla_ssh_key.public_key }}\""},{"line_number":37,"context_line":"  become: True"},{"line_number":38,"context_line":"  when: create_kolla_user | bool \u003d\u003d False"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"- name: ensure sudo group is present"},{"line_number":41,"context_line":"  group: name\u003dsudo state\u003dpresent"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"da6895a0_bfec5690","line":38,"updated":"2016-10-25 15:06:32.000000000","message":"why distribute the public key only when create_kolla_user is False?","commit_id":"4fb835fbe8f4954be1f517551f9c157372b48b0e"},{"author":{"_account_id":22959,"name":"Zeyu Zhu","email":"zhuzeyu0409@gmail.com","username":"zhuzeyu"},"change_message_id":"93d789c144c882376e8e20ffc0cbc3579a73632e","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    user: \"{{ansible_user}}\""},{"line_number":36,"context_line":"    key: \"{{ kolla_ssh_key.public_key }}\""},{"line_number":37,"context_line":"  become: True"},{"line_number":38,"context_line":"  when: create_kolla_user | bool \u003d\u003d False"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"- name: ensure sudo group is present"},{"line_number":41,"context_line":"  group: name\u003dsudo state\u003dpresent"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"da6895a0_5f8c1135","line":38,"in_reply_to":"da6895a0_bfec5690","updated":"2016-10-28 06:56:37.000000000","message":"When create_kolla_user is True, it will distribute the public key to kolla user authorized keys in the code below, but when create_kolla_user is False,it does nothing.","commit_id":"4fb835fbe8f4954be1f517551f9c157372b48b0e"},{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"ebdb9db4e1bbee75ba67ef206f22bb6c5359819b","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"- name: add public key to ansible_user authorized keys"},{"line_number":34,"context_line":"  authorized_key:"},{"line_number":35,"context_line":"    user: \"{{ansible_user}}\""},{"line_number":36,"context_line":"    key: \"{{ kolla_ssh_key.public_key }}\""},{"line_number":37,"context_line":"  become: True"},{"line_number":38,"context_line":"  when: create_kolla_user | bool \u003d\u003d True"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"- name: ensure sudo group is present"},{"line_number":41,"context_line":"  group: name\u003dsudo state\u003dpresent"}],"source_content_type":"text/x-yaml","patch_set":11,"id":"ba5da102_224664bf","line":38,"range":{"start_line":35,"start_character":4,"end_line":38,"end_character":40},"updated":"2016-11-01 01:59:21.000000000","message":"IMO, you should store \"user\" name in variable and put distribution logic in only one place.\n\nOr better: let user configs username to distribute key.\n\nAlso please resolve conflict.","commit_id":"89038d0ee8639f403557bfdc3e938ff7c1a7ef3a"}],"ansible/roles/bifrost/tasks/config.yml":[{"author":{"_account_id":7488,"name":"Jeffrey Zhang","email":"zhang.lei.fly@gmail.com","username":"Jeffrey4l"},"change_message_id":"a30c16b0694b137da1f0ddc58ac9074b7e8ec38a","unresolved":false,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"- name: If id_rsa.pub is not exist, generate ssh pubkey"},{"line_number":9,"context_line":"  shell: ssh-keygen -t rsa -f /root/.ssh/id_rsa -N \"\""},{"line_number":10,"context_line":"  when: result|failed"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"- name: Ensuring config directories exist"},{"line_number":13,"context_line":"  file:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"fa6399be_aa96b449","line":10,"updated":"2016-10-20 11:41:53.000000000","message":"could you use /etc/kolla/passwords.yml file?","commit_id":"41ff8adc72e2cedb13091c590d18a2873b4f2f61"},{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"ee68cdf5cbcf12cedf526a9a21a1ada4956f3dea","unresolved":false,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"- name: If id_rsa.pub is not exist, generate ssh pubkey"},{"line_number":9,"context_line":"  shell: ssh-keygen -t rsa -f /root/.ssh/id_rsa -N \"\""},{"line_number":10,"context_line":"  when: result|failed"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"- name: Ensuring config directories exist"},{"line_number":13,"context_line":"  file:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"da6895a0_27cb06a7","line":10,"in_reply_to":"fa6399be_aa96b449","updated":"2016-10-24 01:19:27.000000000","message":"If I understand correctly, you mean we should put the key pair or pubkey in passwords.yml file?\n\nJust to clarify.","commit_id":"41ff8adc72e2cedb13091c590d18a2873b4f2f61"},{"author":{"_account_id":22959,"name":"Zeyu Zhu","email":"zhuzeyu0409@gmail.com","username":"zhuzeyu"},"change_message_id":"851c9a24b6c67859fcd4b15ece72203ae8cbbc86","unresolved":false,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"- name: If id_rsa.pub is not exist, generate ssh pubkey"},{"line_number":9,"context_line":"  shell: ssh-keygen -t rsa -f /root/.ssh/id_rsa -N \"\""},{"line_number":10,"context_line":"  when: result|failed"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"- name: Ensuring config directories exist"},{"line_number":13,"context_line":"  file:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"fa6399be_a514254d","line":10,"in_reply_to":"fa6399be_aa96b449","updated":"2016-10-28 06:56:20.000000000","message":"There is a similar task in pre-install file using /etc/kolla/password.yml","commit_id":"41ff8adc72e2cedb13091c590d18a2873b4f2f61"},{"author":{"_account_id":11869,"name":"zhubingbing","email":"zhu.bingbing@99cloud.net","username":"zhubingbing"},"change_message_id":"3cbbba49f6abd2fc326ca13f03d0274b3422793b","unresolved":false,"context_lines":[{"line_number":7,"context_line":""},{"line_number":8,"context_line":"- name: If id_rsa.pub is not exist, generate ssh pubkey"},{"line_number":9,"context_line":"  shell: ssh-keygen -t rsa -f /root/.ssh/id_rsa -N \"\""},{"line_number":10,"context_line":"  when: result|failed"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"- name: Ensuring config directories exist"},{"line_number":13,"context_line":"  file:"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"fa6399be_b6737d7f","line":10,"in_reply_to":"fa6399be_aa96b449","updated":"2016-10-20 13:05:06.000000000","message":"agree","commit_id":"41ff8adc72e2cedb13091c590d18a2873b4f2f61"}],"tools/trustme.sh":[{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"ef0dfe327bf35e204a83ca4dd473388b75859c61","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/bin/sh"},{"line_number":2,"context_line":"#to be trusted by other host£¬and no password needed when use ssh command"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"#check parameters legality"},{"line_number":5,"context_line":"logfile\u003d/var/log/trustme.log"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a89bdaa_d714a5a0","line":2,"range":{"start_line":2,"start_character":0,"end_line":2,"end_character":73},"updated":"2016-09-12 03:01:08.000000000","message":"May you put usage example here?","commit_id":"5244fe70514e8f2372f5a270f28240a8c758fd43"},{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"ef0dfe327bf35e204a83ca4dd473388b75859c61","unresolved":false,"context_lines":[{"line_number":12,"context_line":"ip\u003d$1"},{"line_number":13,"context_line":"passwd\u003d$2"},{"line_number":14,"context_line":"if [ -z $passwd ]; then"},{"line_number":15,"context_line":"  print_log \"Usage: `basename $0` ipaddr passwd\" "},{"line_number":16,"context_line":"  exit 1"},{"line_number":17,"context_line":"fi"},{"line_number":18,"context_line":""}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a89bdaa_37a311a0","line":15,"range":{"start_line":15,"start_character":48,"end_line":15,"end_character":49},"updated":"2016-09-12 03:01:08.000000000","message":"trailing whitespace","commit_id":"5244fe70514e8f2372f5a270f28240a8c758fd43"},{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"ef0dfe327bf35e204a83ca4dd473388b75859c61","unresolved":false,"context_lines":[{"line_number":16,"context_line":"  exit 1"},{"line_number":17,"context_line":"fi"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"rpm -qi sshpass \u003e/dev/null "},{"line_number":20,"context_line":"if [ $? !\u003d 0 ]; then"},{"line_number":21,"context_line":"  print_log \"Please install sshpass first\""},{"line_number":22,"context_line":"  exit 1"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a89bdaa_579ed554","line":19,"range":{"start_line":19,"start_character":26,"end_line":19,"end_character":27},"updated":"2016-09-12 03:01:08.000000000","message":"ditto","commit_id":"5244fe70514e8f2372f5a270f28240a8c758fd43"},{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"ef0dfe327bf35e204a83ca4dd473388b75859c61","unresolved":false,"context_lines":[{"line_number":29,"context_line":"  exit 1"},{"line_number":30,"context_line":"fi"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"#generate ssh pubkey"},{"line_number":33,"context_line":"if [ ! -e ~/.ssh/id_dsa.pub ]; then"},{"line_number":34,"context_line":"  print_log \"generating ssh public key ...\""},{"line_number":35,"context_line":"  ssh-keygen -t dsa -f /root/.ssh/id_dsa -N \"\" \u003c\u003cEOF"},{"line_number":36,"context_line":"n"},{"line_number":37,"context_line":"EOF"},{"line_number":38,"context_line":"  if [ $? !\u003d 0 ]; then"},{"line_number":39,"context_line":"    print_log \"ssh-keygen failed\""},{"line_number":40,"context_line":"    exit 1"},{"line_number":41,"context_line":"  fi"},{"line_number":42,"context_line":"fi"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"#clear old public key"},{"line_number":45,"context_line":"user\u003d`whoami`"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a89bdaa_77dbd91b","line":42,"range":{"start_line":32,"start_character":0,"end_line":42,"end_character":2},"updated":"2016-09-12 03:01:08.000000000","message":"why dsa here?\n\nAfaik, there are some evidences that prove rsa is better here.","commit_id":"5244fe70514e8f2372f5a270f28240a8c758fd43"},{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"ef0dfe327bf35e204a83ca4dd473388b75859c61","unresolved":false,"context_lines":[{"line_number":79,"context_line":"    exit 1"},{"line_number":80,"context_line":"fi"},{"line_number":81,"context_line":"print_log \"rm tmp file $ip:$tmpfile\""},{"line_number":82,"context_line":"sshpass -p $passwd ssh -o StrictHostKeyChecking\u003dno $ip \"rm $tmpfile\" "},{"line_number":83,"context_line":"if [ $? !\u003d 0 ]; then"},{"line_number":84,"context_line":"    print_log \"ssh $ip to delete tmp file failed\""},{"line_number":85,"context_line":"    exit 1"}],"source_content_type":"text/x-sh","patch_set":1,"id":"9a89bdaa_77ad9987","line":82,"range":{"start_line":82,"start_character":68,"end_line":82,"end_character":69},"updated":"2016-09-12 03:01:08.000000000","message":"ditto","commit_id":"5244fe70514e8f2372f5a270f28240a8c758fd43"},{"author":{"_account_id":22582,"name":"Duong Ha-Quang","email":"quangduongha@gmail.com","username":"duonghq"},"change_message_id":"dd00b4d64887744435c4d1f0a6787c24705d936c","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/bin/sh"},{"line_number":2,"context_line":"#usage example: ./trustme.sh \u003ctarget_node ip\u003e \u003cpassword\u003e"},{"line_number":3,"context_line":"#if the ip of target_node is 11.111.155.42, psssword is abcd123, run script with the command \u0027./trustme.sh 11.111.155.42 abcd123\u0027"},{"line_number":4,"context_line":""},{"line_number":5,"context_line":"#check parameters legality"},{"line_number":6,"context_line":"logfile\u003d/var/log/trustme.log"}],"source_content_type":"text/x-sh","patch_set":2,"id":"9a89bdaa_5205f9bf","line":3,"range":{"start_line":3,"start_character":0,"end_line":3,"end_character":129},"updated":"2016-09-12 09:02:26.000000000","message":"line is too long","commit_id":"1029a6cf3fca2e2bda84c49de3f917ac22443b45"}],"tools/trustme/ip_passwd.yml":[{"author":{"_account_id":7488,"name":"Jeffrey Zhang","email":"zhang.lei.fly@gmail.com","username":"Jeffrey4l"},"change_message_id":"a7557d7f71a131571477f66d358bdcf1c1278329","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"ip_passwd:"},{"line_number":3,"context_line":"  host1:"},{"line_number":4,"context_line":"    ip:"},{"line_number":5,"context_line":"    passwd:"},{"line_number":6,"context_line":"  host2:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"fa6399be_0b34a647","line":3,"updated":"2016-10-17 03:26:47.000000000","message":"we can use ansible inventory file for host and password. http://docs.ansible.com/ansible/intro_inventory.html#list-of-behavioral-inventory-parameters","commit_id":"7584d121733d32c4ea05ab10b6a8654371b291b1"}],"tools/trustme/trustme.yml":[{"author":{"_account_id":22165,"name":"caoyuan","email":"cao.yingjunz@gmail.com","username":"caoyuan"},"change_message_id":"cf4e9654d9875213902d93f5d831630f2cf23917","unresolved":false,"context_lines":[{"line_number":8,"context_line":"    - ./ip_passwd.yml"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"  tasks:"},{"line_number":11,"context_line":"  - name: Check whether the sshpass is installed"},{"line_number":12,"context_line":"    shell: rpm -qi sshpass \u003e/dev/null"},{"line_number":13,"context_line":"  - name: Ensuring id_rsa.pub exist"},{"line_number":14,"context_line":"    file:"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"fa6399be_9eba41bf","line":11,"range":{"start_line":11,"start_character":10,"end_line":11,"end_character":47},"updated":"2016-10-12 16:19:29.000000000","message":"if sshpass does not installed ,you should install it.","commit_id":"20cc8a3d5f3eb2914ba7d41fa5a3b6cbc483bdcd"},{"author":{"_account_id":7488,"name":"Jeffrey Zhang","email":"zhang.lei.fly@gmail.com","username":"Jeffrey4l"},"change_message_id":"a7557d7f71a131571477f66d358bdcf1c1278329","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- hosts: localhost"},{"line_number":3,"context_line":"  vars:"},{"line_number":4,"context_line":"    keyend: $(`whoami`@`hostname`)"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"fa6399be_ab43baad","line":1,"updated":"2016-10-17 03:26:47.000000000","message":"we already using ansible, why using sshpass still? http://docs.ansible.com/ansible/authorized_key_module.html","commit_id":"7584d121733d32c4ea05ab10b6a8654371b291b1"},{"author":{"_account_id":13642,"name":"Vikram Hosakote","email":"vikram.ganesh@gmail.com","username":"vhosakot"},"change_message_id":"acb29a91a7f146f0c21ce75f77249f8b7c05cb39","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- hosts: localhost"},{"line_number":3,"context_line":"  vars:"},{"line_number":4,"context_line":"    keyend: $(`whoami`@`hostname`)"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"fa6399be_d8e7823e","line":1,"in_reply_to":"fa6399be_4914e64b","updated":"2016-10-19 04:53:45.000000000","message":"Agreed.","commit_id":"7584d121733d32c4ea05ab10b6a8654371b291b1"},{"author":{"_account_id":11869,"name":"zhubingbing","email":"zhu.bingbing@99cloud.net","username":"zhubingbing"},"change_message_id":"802433b811c3274387723b9fbb5e91c01bbcf024","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"- hosts: localhost"},{"line_number":3,"context_line":"  vars:"},{"line_number":4,"context_line":"    keyend: $(`whoami`@`hostname`)"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"fa6399be_4914e64b","line":1,"in_reply_to":"fa6399be_ab43baad","updated":"2016-10-17 05:50:02.000000000","message":"agree","commit_id":"7584d121733d32c4ea05ab10b6a8654371b291b1"}]}
