)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"aeac4672a71b00f41f178e77b9dc0db2871ccaa0","unresolved":false,"context_lines":[{"line_number":23,"context_line":"documentation."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"testinfra coverage is added."},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Change-Id: I9bf74df351e056791ed817180436617048224d2c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":26,"id":"9fb8cfa7_4e6e1e97","line":26,"updated":"2019-06-20 09:18:03.000000000","message":"Implementation note : this change doesn\u0027t do anything as no hosts in the groups above.\n\nWhen this is approved, I plan to bring up a server in vexxhost MTL (as discussed with mnaser) and then stage in a server for testing.  We can then deploy this across all backup hosts.\n\nOnce this is working, we can remove the puppet components.  We can then also look at putting in the rax.ord backup server as a secondary backup location at that point too.","commit_id":"a2def076466ed87991bbc1d1284fa61f970cd328"}],"doc/source/sysadmin.rst":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"bd5b7b4ad2e107dc8be078a5b24e3d6f0fb4a3ca","unresolved":false,"context_lines":[{"line_number":222,"context_line":""},{"line_number":223,"context_line":"Hosts in the ``backup`` group will be backed up to servers in the"},{"line_number":224,"context_line":"``backup-server`` group.  This happens via a daily cron job installed"},{"line_number":225,"context_line":"by Ansible.  This uses the `bup \u003chttps://bup.github.io\u003e`__ tool."},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"Restore from Backup"},{"line_number":228,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":25,"id":"9fb8cfa7_9e8cc4d7","line":225,"updated":"2019-06-12 22:54:05.000000000","message":"It sounded like there was support for a more manual style of backup management as before so we probably can\u0027t get rid of these docs.","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"37ea2d13682344934b92d2a6db7f12db99b8b900","unresolved":false,"context_lines":[{"line_number":222,"context_line":""},{"line_number":223,"context_line":"Hosts in the ``backup`` group will be backed up to servers in the"},{"line_number":224,"context_line":"``backup-server`` group.  This happens via a daily cron job installed"},{"line_number":225,"context_line":"by Ansible.  This uses the `bup \u003chttps://bup.github.io\u003e`__ tool."},{"line_number":226,"context_line":""},{"line_number":227,"context_line":"Restore from Backup"},{"line_number":228,"context_line":"-------------------"}],"source_content_type":"text/x-rst","patch_set":25,"id":"9fb8cfa7_bb9cd65d","line":225,"in_reply_to":"9fb8cfa7_9e8cc4d7","updated":"2019-06-19 01:40:20.000000000","message":"Not really; I\u0027d argue that the setup of the backup is now codified by the ansible playbooks, so these setup instructions are no longer required.\n\nI will expand this slightly to be clearer about setting up a host and the variables involved, and also clearer on the restore path.","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"}],"playbooks/roles/backup-server/tasks/user.yaml":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"bd5b7b4ad2e107dc8be078a5b24e3d6f0fb4a3ca","unresolved":false,"context_lines":[{"line_number":3,"context_line":""},{"line_number":4,"context_line":"- name: Create bup user"},{"line_number":5,"context_line":"  user:"},{"line_number":6,"context_line":"    name: \u0027{{ bup_user[0] }}\u0027"},{"line_number":7,"context_line":"    comment: \u0027Backup user\u0027"},{"line_number":8,"context_line":"    shell: /bin/bash"},{"line_number":9,"context_line":"    home: \u0027/opt/backups/{{ bup_user[0] }}\u0027"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"9fb8cfa7_de86bcb9","line":6,"range":{"start_line":6,"start_character":14,"end_line":6,"end_character":25},"updated":"2019-06-12 22:54:05.000000000","message":"What is the 0\u0027th index of this variable? Looking at how this is used from main.yaml it seems this is a string username and not a tuple?","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"37ea2d13682344934b92d2a6db7f12db99b8b900","unresolved":false,"context_lines":[{"line_number":3,"context_line":""},{"line_number":4,"context_line":"- name: Create bup user"},{"line_number":5,"context_line":"  user:"},{"line_number":6,"context_line":"    name: \u0027{{ bup_user[0] }}\u0027"},{"line_number":7,"context_line":"    comment: \u0027Backup user\u0027"},{"line_number":8,"context_line":"    shell: /bin/bash"},{"line_number":9,"context_line":"    home: \u0027/opt/backups/{{ bup_user[0] }}\u0027"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"9fb8cfa7_3b50e6d4","line":6,"range":{"start_line":6,"start_character":14,"end_line":6,"end_character":25},"in_reply_to":"9fb8cfa7_de86bcb9","updated":"2019-06-19 01:40:20.000000000","message":"it\u0027s the loop variable (from \"bup_users\") which is a list of tuples, (username, key).\n\ni can extract this into a user_name variable to make it clearer","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"}],"playbooks/roles/backup/README.rst":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"bd5b7b4ad2e107dc8be078a5b24e3d6f0fb4a3ca","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"**Role Variables**"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":".. zuul:rolevar:: bup_user"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"   The username to connect to the backup server.  If this is left"},{"line_number":21,"context_line":"   undefined, it will be automatically set to ``bup-$(hostname)``"}],"source_content_type":"text/x-rst","patch_set":25,"id":"9fb8cfa7_3e4fd893","line":18,"range":{"start_line":18,"start_character":17,"end_line":18,"end_character":26},"updated":"2019-06-12 22:54:05.000000000","message":"The var used as input in the tests is bup_username not bup_user. This may help explain some of my confusion around the tuple thing.","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"37ea2d13682344934b92d2a6db7f12db99b8b900","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"**Role Variables**"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":".. zuul:rolevar:: bup_user"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"   The username to connect to the backup server.  If this is left"},{"line_number":21,"context_line":"   undefined, it will be automatically set to ``bup-$(hostname)``"}],"source_content_type":"text/x-rst","patch_set":25,"id":"9fb8cfa7_1b1ac216","line":18,"range":{"start_line":18,"start_character":17,"end_line":18,"end_character":26},"in_reply_to":"9fb8cfa7_3e4fd893","updated":"2019-06-19 01:40:20.000000000","message":"thanks, fixed and further explained in here what is going on.","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"}],"playbooks/roles/backup/defaults/main.yaml":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"bd5b7b4ad2e107dc8be078a5b24e3d6f0fb4a3ca","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"9fb8cfa7_5ec40cf5","line":1,"updated":"2019-06-12 22:54:05.000000000","message":"Empty file?","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"37ea2d13682344934b92d2a6db7f12db99b8b900","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"9fb8cfa7_1bef22ea","line":1,"in_reply_to":"9fb8cfa7_5ec40cf5","updated":"2019-06-19 01:40:20.000000000","message":"Done","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"}],"playbooks/roles/backup/tasks/main.yaml":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"bd5b7b4ad2e107dc8be078a5b24e3d6f0fb4a3ca","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"- name: Generate bup_user info tuple"},{"line_number":34,"context_line":"  set_fact:"},{"line_number":35,"context_line":"    bup_user: \u0027{{ [ bup_username, bup_keypair[\"public_key\"] ] }}\u0027"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"- name: Accept hostkey of backup server"},{"line_number":38,"context_line":"  known_hosts:"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"9fb8cfa7_beb42881","line":35,"updated":"2019-06-12 22:54:05.000000000","message":"Here it is a tuple. Maybe I just misread the intent in the other role.","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"37ea2d13682344934b92d2a6db7f12db99b8b900","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"- name: Generate bup_user info tuple"},{"line_number":34,"context_line":"  set_fact:"},{"line_number":35,"context_line":"    bup_user: \u0027{{ [ bup_username, bup_keypair[\"public_key\"] ] }}\u0027"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"- name: Accept hostkey of backup server"},{"line_number":38,"context_line":"  known_hosts:"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"9fb8cfa7_dbbaeadf","line":35,"in_reply_to":"9fb8cfa7_beb42881","updated":"2019-06-19 01:40:20.000000000","message":"Yeah, so every backup host sets \"bup_user\" with the tuple (username, key); then on the server side we walk all hosts in the backup group, access the \"bup_user\" variable they set and use it to install the users.","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"bd5b7b4ad2e107dc8be078a5b24e3d6f0fb4a3ca","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    dest: /etc/bup-excludes"},{"line_number":48,"context_line":"    mode: 0444"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"- name: Install backup cron job"},{"line_number":51,"context_line":"  cron:"},{"line_number":52,"context_line":"    name: \"Run bup backup\""},{"line_number":53,"context_line":"    job: \"tar -X /etc/bup-excludes -cPF - / | bup split -r {{ bup_username }}@{{ item }}: -n root -q\""}],"source_content_type":"text/x-yaml","patch_set":25,"id":"9fb8cfa7_be7988c8","line":50,"updated":"2019-06-12 22:54:05.000000000","message":"We need to bup init on the local side as well.","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"},{"author":{"_account_id":7118,"name":"Ian Wienand","email":"iwienand@redhat.com","username":"iwienand"},"change_message_id":"37ea2d13682344934b92d2a6db7f12db99b8b900","unresolved":false,"context_lines":[{"line_number":47,"context_line":"    dest: /etc/bup-excludes"},{"line_number":48,"context_line":"    mode: 0444"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"- name: Install backup cron job"},{"line_number":51,"context_line":"  cron:"},{"line_number":52,"context_line":"    name: \"Run bup backup\""},{"line_number":53,"context_line":"    job: \"tar -X /etc/bup-excludes -cPF - / | bup split -r {{ bup_username }}@{{ item }}: -n root -q\""}],"source_content_type":"text/x-yaml","patch_set":25,"id":"9fb8cfa7_7b797e2d","line":50,"in_reply_to":"9fb8cfa7_be7988c8","updated":"2019-06-19 01:40:20.000000000","message":"done, and a test for /root/.bup/config added to testinfra to confirm it was done.","commit_id":"d7ccfc0e7498f48d14c44e0e495ac74c11b3dbac"}]}
