)]}'
{".zuul.yaml":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"1dbfe811743c642af9fc80d1e39b8775a7010e32","unresolved":false,"context_lines":[{"line_number":647,"context_line":"    vars:"},{"line_number":648,"context_line":"      playbook_name: zuul_manage_nameservers.yaml"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"- project:"},{"line_number":651,"context_line":"    templates:"},{"line_number":652,"context_line":"      - system-config-zuul-role-integration"},{"line_number":653,"context_line":"      - infra-puppet-apply-jobs"},{"line_number":654,"context_line":"      - infra-logstash-filter-jobs"},{"line_number":655,"context_line":"      - publish-tox-docs-infra"},{"line_number":656,"context_line":"    check:"},{"line_number":657,"context_line":"      jobs:"},{"line_number":658,"context_line":"        - opendev-buildset-registry"},{"line_number":659,"context_line":"        - tox-linters"},{"line_number":660,"context_line":"        - legacy-system-config-puppet-syntax-3"},{"line_number":661,"context_line":"        - puppet-beaker-rspec-infra-system-config"},{"line_number":662,"context_line":"        - puppet-beaker-rspec-infra-centos-7-system-config"},{"line_number":663,"context_line":"        - puppet-beaker-rspec-puppet-4-infra-system-config"},{"line_number":664,"context_line":"        - puppet-beaker-rspec-puppet-4-centos-7-infra-system-config"},{"line_number":665,"context_line":"        - system-config-run-base"},{"line_number":666,"context_line":"        - system-config-run-base-ansible-devel:"},{"line_number":667,"context_line":"            voting: false"},{"line_number":668,"context_line":"        - system-config-run-dns"},{"line_number":669,"context_line":"        - system-config-run-eavesdrop"},{"line_number":670,"context_line":"        - system-config-run-nodepool"},{"line_number":671,"context_line":"        - system-config-run-docker"},{"line_number":672,"context_line":"        - system-config-run-docker-registry"},{"line_number":673,"context_line":"        - system-config-run-gitea:"},{"line_number":674,"context_line":"            dependencies:"},{"line_number":675,"context_line":"              - name: system-config-build-image-gitea"},{"line_number":676,"context_line":"                soft: true"},{"line_number":677,"context_line":"        - system-config-run-zuul-preview"},{"line_number":678,"context_line":"        - system-config-run-letsencrypt"},{"line_number":679,"context_line":"        - system-config-build-image-jinja-init"},{"line_number":680,"context_line":"        - system-config-build-image-gitea-init"},{"line_number":681,"context_line":"        - system-config-build-image-gitea"},{"line_number":682,"context_line":"        - system-config-build-image-gerrit"},{"line_number":683,"context_line":"        - system-config-build-image-python-base"},{"line_number":684,"context_line":"        - system-config-build-image-python-builder"},{"line_number":685,"context_line":"    gate:"},{"line_number":686,"context_line":"      jobs:"},{"line_number":687,"context_line":"        - opendev-buildset-registry"},{"line_number":688,"context_line":"        - tox-linters"},{"line_number":689,"context_line":"        - legacy-system-config-puppet-syntax-3"},{"line_number":690,"context_line":"        - puppet-beaker-rspec-infra-system-config"},{"line_number":691,"context_line":"        - puppet-beaker-rspec-infra-centos-7-system-config"},{"line_number":692,"context_line":"        - puppet-beaker-rspec-puppet-4-infra-system-config"},{"line_number":693,"context_line":"        - puppet-beaker-rspec-puppet-4-centos-7-infra-system-config"},{"line_number":694,"context_line":"        - system-config-run-base"},{"line_number":695,"context_line":"        - system-config-run-dns"},{"line_number":696,"context_line":"        - system-config-run-eavesdrop"},{"line_number":697,"context_line":"        - system-config-run-nodepool"},{"line_number":698,"context_line":"        - system-config-run-docker"},{"line_number":699,"context_line":"        - system-config-run-docker-registry"},{"line_number":700,"context_line":"        - system-config-run-gitea:"},{"line_number":701,"context_line":"            dependencies:"},{"line_number":702,"context_line":"              - name: system-config-upload-image-gitea"},{"line_number":703,"context_line":"                soft: true"},{"line_number":704,"context_line":"        - system-config-run-zuul-preview"},{"line_number":705,"context_line":"        - system-config-run-letsencrypt"},{"line_number":706,"context_line":"        - system-config-upload-image-jinja-init"},{"line_number":707,"context_line":"        - system-config-upload-image-gitea-init"},{"line_number":708,"context_line":"        - system-config-upload-image-gitea"},{"line_number":709,"context_line":"        - system-config-upload-image-gerrit"},{"line_number":710,"context_line":"        - system-config-upload-image-python-base"},{"line_number":711,"context_line":"        - system-config-upload-image-python-builder"},{"line_number":712,"context_line":"    promote:"},{"line_number":713,"context_line":"      jobs:"},{"line_number":714,"context_line":"        - system-config-promote-image-jinja-init"},{"line_number":715,"context_line":"        - system-config-promote-image-gitea-init"},{"line_number":716,"context_line":"        - system-config-promote-image-gitea"},{"line_number":717,"context_line":"        - system-config-promote-image-gerrit"},{"line_number":718,"context_line":"        - system-config-promote-image-python-base"},{"line_number":719,"context_line":"        - system-config-promote-image-python-builder"},{"line_number":720,"context_line":"        - infra-prod-manage-nameservers:"},{"line_number":721,"context_line":"            files:"},{"line_number":722,"context_line":"              # Changes to the job"},{"line_number":723,"context_line":"-             - ^.zuul.yaml"},{"line_number":724,"context_line":"              # Changes to the roles"},{"line_number":725,"context_line":"-             - ^playbooks/roles/master-nameserver/.*"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"5fc1f717_617a9988","line":722,"range":{"start_line":650,"start_character":2,"end_line":722,"end_character":0},"updated":"2019-04-09 22:06:20.000000000","message":"expected a list for dictionary value @ data[\u0027promote\u0027][\u0027jobs\u0027][6][\u0027infra-prod-manage-nameservers\u0027][\u0027files\u0027]","commit_id":"9952868721ef36ff8bdf4fe6c671d1413fd6e8ce"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"782f47bf28cf88e69e97715df029cac06ad19f58","unresolved":false,"context_lines":[{"line_number":647,"context_line":"    vars:"},{"line_number":648,"context_line":"      playbook_name: zuul_manage_nameservers.yaml"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"- project:"},{"line_number":651,"context_line":"    templates:"},{"line_number":652,"context_line":"      - system-config-zuul-role-integration"},{"line_number":653,"context_line":"      - infra-puppet-apply-jobs"},{"line_number":654,"context_line":"      - infra-logstash-filter-jobs"},{"line_number":655,"context_line":"      - publish-tox-docs-infra"},{"line_number":656,"context_line":"    check:"},{"line_number":657,"context_line":"      jobs:"},{"line_number":658,"context_line":"        - opendev-buildset-registry"},{"line_number":659,"context_line":"        - tox-linters"},{"line_number":660,"context_line":"        - legacy-system-config-puppet-syntax-3"},{"line_number":661,"context_line":"        - puppet-beaker-rspec-infra-system-config"},{"line_number":662,"context_line":"        - puppet-beaker-rspec-infra-centos-7-system-config"},{"line_number":663,"context_line":"        - puppet-beaker-rspec-puppet-4-infra-system-config"},{"line_number":664,"context_line":"        - puppet-beaker-rspec-puppet-4-centos-7-infra-system-config"},{"line_number":665,"context_line":"        - system-config-run-base"},{"line_number":666,"context_line":"        - system-config-run-base-ansible-devel:"},{"line_number":667,"context_line":"            voting: false"},{"line_number":668,"context_line":"        - system-config-run-dns"},{"line_number":669,"context_line":"        - system-config-run-eavesdrop"},{"line_number":670,"context_line":"        - system-config-run-nodepool"},{"line_number":671,"context_line":"        - system-config-run-docker"},{"line_number":672,"context_line":"        - system-config-run-docker-registry"},{"line_number":673,"context_line":"        - system-config-run-gitea:"},{"line_number":674,"context_line":"            dependencies:"},{"line_number":675,"context_line":"              - name: system-config-build-image-gitea"},{"line_number":676,"context_line":"                soft: true"},{"line_number":677,"context_line":"        - system-config-run-zuul-preview"},{"line_number":678,"context_line":"        - system-config-run-letsencrypt"},{"line_number":679,"context_line":"        - system-config-build-image-jinja-init"},{"line_number":680,"context_line":"        - system-config-build-image-gitea-init"},{"line_number":681,"context_line":"        - system-config-build-image-gitea"},{"line_number":682,"context_line":"        - system-config-build-image-gerrit"},{"line_number":683,"context_line":"        - system-config-build-image-python-base"},{"line_number":684,"context_line":"        - system-config-build-image-python-builder"},{"line_number":685,"context_line":"    gate:"},{"line_number":686,"context_line":"      jobs:"},{"line_number":687,"context_line":"        - opendev-buildset-registry"},{"line_number":688,"context_line":"        - tox-linters"},{"line_number":689,"context_line":"        - legacy-system-config-puppet-syntax-3"},{"line_number":690,"context_line":"        - puppet-beaker-rspec-infra-system-config"},{"line_number":691,"context_line":"        - puppet-beaker-rspec-infra-centos-7-system-config"},{"line_number":692,"context_line":"        - puppet-beaker-rspec-puppet-4-infra-system-config"},{"line_number":693,"context_line":"        - puppet-beaker-rspec-puppet-4-centos-7-infra-system-config"},{"line_number":694,"context_line":"        - system-config-run-base"},{"line_number":695,"context_line":"        - system-config-run-dns"},{"line_number":696,"context_line":"        - system-config-run-eavesdrop"},{"line_number":697,"context_line":"        - system-config-run-nodepool"},{"line_number":698,"context_line":"        - system-config-run-docker"},{"line_number":699,"context_line":"        - system-config-run-docker-registry"},{"line_number":700,"context_line":"        - system-config-run-gitea:"},{"line_number":701,"context_line":"            dependencies:"},{"line_number":702,"context_line":"              - name: system-config-upload-image-gitea"},{"line_number":703,"context_line":"                soft: true"},{"line_number":704,"context_line":"        - system-config-run-zuul-preview"},{"line_number":705,"context_line":"        - system-config-run-letsencrypt"},{"line_number":706,"context_line":"        - system-config-upload-image-jinja-init"},{"line_number":707,"context_line":"        - system-config-upload-image-gitea-init"},{"line_number":708,"context_line":"        - system-config-upload-image-gitea"},{"line_number":709,"context_line":"        - system-config-upload-image-gerrit"},{"line_number":710,"context_line":"        - system-config-upload-image-python-base"},{"line_number":711,"context_line":"        - system-config-upload-image-python-builder"},{"line_number":712,"context_line":"    promote:"},{"line_number":713,"context_line":"      jobs:"},{"line_number":714,"context_line":"        - system-config-promote-image-jinja-init"},{"line_number":715,"context_line":"        - system-config-promote-image-gitea-init"},{"line_number":716,"context_line":"        - system-config-promote-image-gitea"},{"line_number":717,"context_line":"        - system-config-promote-image-gerrit"},{"line_number":718,"context_line":"        - system-config-promote-image-python-base"},{"line_number":719,"context_line":"        - system-config-promote-image-python-builder"},{"line_number":720,"context_line":"        - infra-prod-manage-nameservers:"},{"line_number":721,"context_line":"            files:"},{"line_number":722,"context_line":"              # Changes to the job"},{"line_number":723,"context_line":"-             - .zuul.yaml"},{"line_number":724,"context_line":"              # Changes to the roles"},{"line_number":725,"context_line":"-             - playbooks/roles/master-nameserver/.*"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"5fc1f717_c14b4d28","line":722,"range":{"start_line":650,"start_character":2,"end_line":722,"end_character":0},"updated":"2019-04-09 22:13:30.000000000","message":"expected a list for dictionary value @ data[\u0027promote\u0027][\u0027jobs\u0027][6][\u0027infra-prod-manage-nameservers\u0027][\u0027files\u0027]","commit_id":"c8d86a5f1686265dbcd181eb623126ba6a6f50d2"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"8317068cd81cecb4894ea1ede00cd2795cb12dd8","unresolved":false,"context_lines":[{"line_number":645,"context_line":"      This reloads the tenant config file and clears all configuration"},{"line_number":646,"context_line":"      caches."},{"line_number":647,"context_line":"    vars:"},{"line_number":648,"context_line":"      playbook_name: zuul_reconfigure.yaml"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"- project:"},{"line_number":651,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_a1d2d026","side":"PARENT","line":648,"updated":"2019-07-16 22:42:15.000000000","message":"r","commit_id":"97e0086a9c3a0fe353866e889bfee94008083686"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"55e7639693080ba01682e87c2658e73ff228560a","unresolved":false,"context_lines":[{"line_number":645,"context_line":"      This applies new zone info and other config management updates to"},{"line_number":646,"context_line":"      our nameservers."},{"line_number":647,"context_line":"    vars:"},{"line_number":648,"context_line":"      playbook_name: zuul_manage_nameservers.yaml"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"- project:"},{"line_number":651,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_81ed54b8","line":648,"updated":"2019-07-16 23:09:32.000000000","message":"I appreciate the opportunity to make the OpenDev sysadmins not be a bottleneck on approving DNS changes as long as we continue to rely on thorough testing to avoid breaking the service. Option #2 or the option of only running it from the config repo using secrets rather than having access to ssh keys are also okay by me.","commit_id":"6023ac286fdaaac070313b289f76b24b7640315b"},{"author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"change_message_id":"47e9c81124caf1ff97173063d1d401429cc5a563","unresolved":false,"context_lines":[{"line_number":645,"context_line":"      This applies new zone info and other config management updates to"},{"line_number":646,"context_line":"      our nameservers."},{"line_number":647,"context_line":"    vars:"},{"line_number":648,"context_line":"      playbook_name: zuul_manage_nameservers.yaml"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"- project:"},{"line_number":651,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_015c04eb","line":648,"updated":"2019-07-16 22:31:34.000000000","message":"I think this challenge supports my position that we should retain OpenDev sysadmin control over BIND zone repos.","commit_id":"6023ac286fdaaac070313b289f76b24b7640315b"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"8317068cd81cecb4894ea1ede00cd2795cb12dd8","unresolved":false,"context_lines":[{"line_number":645,"context_line":"      This applies new zone info and other config management updates to"},{"line_number":646,"context_line":"      our nameservers."},{"line_number":647,"context_line":"    vars:"},{"line_number":648,"context_line":"      playbook_name: zuul_manage_nameservers.yaml"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"- project:"},{"line_number":651,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_c1cd8c85","line":648,"updated":"2019-07-16 22:42:15.000000000","message":"The best options I have for this are:\n1) We say that opendev needs to have exclusive control of the zonefile repos, and we add their keys.\n2) We add a feature to zuul where if we set final: True and allowed-projects: foo, then if the job is used in one of the allowed-projects, the ssh key from the repo where it is defined is added to the set.  I.e, the zonefile repos get to \"borrow\" the system-config key, just for this job.\nI think we can do #1 for now and work on implementing #2 later.","commit_id":"6023ac286fdaaac070313b289f76b24b7640315b"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"fbfb26dd55b12fa203876a81ac51319db0ae66a5","unresolved":false,"context_lines":[{"line_number":645,"context_line":"      This applies new zone info and other config management updates to"},{"line_number":646,"context_line":"      our nameservers."},{"line_number":647,"context_line":"    vars:"},{"line_number":648,"context_line":"      playbook_name: zuul_manage_nameservers.yaml"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"- project:"},{"line_number":651,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_e1f1a802","line":648,"updated":"2019-07-16 22:14:57.000000000","message":"This shouldn\u0027t have zuul in the name; this should be: \"service-nameserver.yaml\" which already exists.  I think we can go ahead and drop service-nameserver from run_all.sh as part of this patch too, but we should stage patches to add this to the data repos so we merge them quickly to close the gap.\n\nFun fact: any job can trigger this repo, but we\u0027ve only added the ssh keys for system-config and project-config to bridge.  That means that if we add this to a zone repo, we will need to add that zone repo\u0027s key to bridge (which means that the people with approval powers on the zone repo could run any command on bridge).","commit_id":"6023ac286fdaaac070313b289f76b24b7640315b"},{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"20025123064efc901968777616af43b5fef2a8bd","unresolved":false,"context_lines":[{"line_number":645,"context_line":"      This applies new zone info and other config management updates to"},{"line_number":646,"context_line":"      our nameservers."},{"line_number":647,"context_line":"    vars:"},{"line_number":648,"context_line":"      playbook_name: zuul_manage_nameservers.yaml"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"- project:"},{"line_number":651,"context_line":"    templates:"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_41343c93","line":648,"in_reply_to":"7faddb67_015c04eb","updated":"2019-07-16 22:35:16.000000000","message":"I believe I have the opinion that opendev should own bind zone repos.","commit_id":"6023ac286fdaaac070313b289f76b24b7640315b"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"fbfb26dd55b12fa203876a81ac51319db0ae66a5","unresolved":false,"context_lines":[{"line_number":720,"context_line":"        - infra-prod-manage-nameservers:"},{"line_number":721,"context_line":"            files:"},{"line_number":722,"context_line":"              # Changes to the job"},{"line_number":723,"context_line":"              - .zuul.yaml"},{"line_number":724,"context_line":"              # Changes to the roles"},{"line_number":725,"context_line":"              - playbooks/roles/master-nameserver/.*"},{"line_number":726,"context_line":"              - playbooks/roles/nameserver/.*"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_01f5e4ec","line":723,"updated":"2019-07-16 22:14:57.000000000","message":"We can drop this now.","commit_id":"6023ac286fdaaac070313b289f76b24b7640315b"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"fbfb26dd55b12fa203876a81ac51319db0ae66a5","unresolved":false,"context_lines":[{"line_number":726,"context_line":"              - playbooks/roles/nameserver/.*"},{"line_number":727,"context_line":"              # Changes to the input data"},{"line_number":728,"context_line":"              - playbooks/group_vars/adns.yaml"},{"line_number":729,"context_line":"              - playbooks/group_vars/dns.yaml"},{"line_number":730,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7faddb67_a1df3067","line":729,"updated":"2019-07-16 22:14:57.000000000","message":"We could move this into the job definition (and as for the data repos, we can either override it when setting it in the pipeline, or we could add the entries the other repos would need to this one).","commit_id":"6023ac286fdaaac070313b289f76b24b7640315b"}]}
