)]}'
{"README.md":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"ed681be4b642a0a09a307cc1ed213f67690b1516","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Zuul Operator"},{"line_number":2,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"## Build the image"},{"line_number":5,"context_line":""},{"line_number":6,"context_line":"```shell"},{"line_number":7,"context_line":"$ make image"}],"source_content_type":"text/x-gfm","patch_set":22,"id":"3fa7e38b_ce554921","line":4,"updated":"2020-02-03 17:30:10.000000000","message":"It might be good to add a section on debugging with dhall? (I imagine that will be something similar to `docker run $imagename dhall-to-json \u003c input` ? Maybe in a separate developers doc?","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"ddddbd0ce2474271150893baa52399cfaf8642f0","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Zuul Operator"},{"line_number":2,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"## Build the image"},{"line_number":5,"context_line":""},{"line_number":6,"context_line":"```shell"},{"line_number":7,"context_line":"$ make image"}],"source_content_type":"text/x-gfm","patch_set":22,"id":"3fa7e38b_e997dfe9","line":4,"in_reply_to":"3fa7e38b_ce554921","updated":"2020-02-03 18:04:34.000000000","message":"I haven\u0027t thought about using the cli like so, then you would need to override the entrypoint like so:\n\n  alias dhall-to-yaml\u003d\"docker run --rm --entrypoint dhall-to-yaml -i docker.io/zuul/zuul-operator\"\n\n\nDebugging instruction are also mentioned in https://review.opendev.org/#/c/702106/22/playbooks/files/local.yaml and https://review.opendev.org/#/c/702106/22/playbooks/files/cr_spec.yaml .\n\nI\u0027ll update the README to document that.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"86640d02dddf1aded218fb2f882b4da3a48df623","unresolved":false,"context_lines":[{"line_number":1,"context_line":"Zuul Operator"},{"line_number":2,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":3,"context_line":""},{"line_number":4,"context_line":"## Build the image"},{"line_number":5,"context_line":""},{"line_number":6,"context_line":"```shell"},{"line_number":7,"context_line":"$ make image"}],"source_content_type":"text/x-gfm","patch_set":22,"id":"3fa7e38b_cfc6a342","line":4,"in_reply_to":"3fa7e38b_e997dfe9","updated":"2020-02-03 19:44:16.000000000","message":"Added with https://review.opendev.org/705535","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"}],"conf/zuul/input.dhall":[{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"0a67587691ce1862a3d407659a0dfe365b791e8e","unresolved":false,"context_lines":[{"line_number":21,"context_line":"      , sshkey : UserSecret"},{"line_number":22,"context_line":"      }"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"let GitHub \u003d { name : Text, app_id : Natural, app_key : UserSecret }"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"let Mqtt \u003d"},{"line_number":27,"context_line":"      { name : Text"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_414a8782","line":24,"updated":"2020-02-03 21:32:10.000000000","message":"Should the webhook_token also belong here? webhook_token is mandatory with github in order to validate events.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"1303635297fdeae20614337e3ab7b7ebff4872c7","unresolved":false,"context_lines":[{"line_number":21,"context_line":"      , sshkey : UserSecret"},{"line_number":22,"context_line":"      }"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"let GitHub \u003d { name : Text, app_id : Natural, app_key : UserSecret }"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"let Mqtt \u003d"},{"line_number":27,"context_line":"      { name : Text"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_17304db7","line":24,"in_reply_to":"3fa7e38b_414a8782","updated":"2020-02-03 22:31:39.000000000","message":"Yes, similarly the list of connections L82 is also missing pagure","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"}],"conf/zuul/resources.dhall":[{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"7ff84ce7556e64bf645ca45f685581ea1dcdd26c","unresolved":false,"context_lines":[{"line_number":30,"context_line":"      { Type \u003d"},{"line_number":31,"context_line":"          { name : Text"},{"line_number":32,"context_line":"          , count : Natural"},{"line_number":33,"context_line":"          , containers : List Kubernetes.Container.Type"},{"line_number":34,"context_line":"          , data-dir : List Volume.Type"},{"line_number":35,"context_line":"          , volumes : List Volume.Type"},{"line_number":36,"context_line":"          , claim-size : Natural"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_1a45d472","line":33,"range":{"start_line":33,"start_character":12,"end_line":33,"end_character":22},"updated":"2020-02-04 00:23:44.000000000","message":"Next PS change containers to a single element as we don\u0027t have component that uses more than one container.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"0a67587691ce1862a3d407659a0dfe365b791e8e","unresolved":false,"context_lines":[{"line_number":26,"context_line":"      , default \u003d { files \u003d [] : List File }"},{"line_number":27,"context_line":"      }"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"let Service \u003d"},{"line_number":30,"context_line":"      { Type \u003d"},{"line_number":31,"context_line":"          { name : Text"},{"line_number":32,"context_line":"          , count : Natural"},{"line_number":33,"context_line":"          , containers : List Kubernetes.Container.Type"},{"line_number":34,"context_line":"          , data-dir : List Volume.Type"},{"line_number":35,"context_line":"          , volumes : List Volume.Type"},{"line_number":36,"context_line":"          , claim-size : Natural"},{"line_number":37,"context_line":"          }"},{"line_number":38,"context_line":"      , default \u003d"},{"line_number":39,"context_line":"          { data-dir \u003d [] : List Volume.Type"},{"line_number":40,"context_line":"          , volumes \u003d [] : List Volume.Type"},{"line_number":41,"context_line":"          , claim-size \u003d 0"},{"line_number":42,"context_line":"          }"},{"line_number":43,"context_line":"      }"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"let Component \u003d"},{"line_number":46,"context_line":"      { Type \u003d"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_a40b4921","line":43,"range":{"start_line":29,"start_character":0,"end_line":43,"end_character":7},"updated":"2020-02-03 21:32:10.000000000","message":"I don\u0027t understand what this is used for. Where is this used and for what purpose? What confuses me most on this is that it\u0027s called \u0027Service\u0027 but looks quite different to a kubernetes service.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"7ff84ce7556e64bf645ca45f685581ea1dcdd26c","unresolved":false,"context_lines":[{"line_number":26,"context_line":"      , default \u003d { files \u003d [] : List File }"},{"line_number":27,"context_line":"      }"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"let Service \u003d"},{"line_number":30,"context_line":"      { Type \u003d"},{"line_number":31,"context_line":"          { name : Text"},{"line_number":32,"context_line":"          , count : Natural"},{"line_number":33,"context_line":"          , containers : List Kubernetes.Container.Type"},{"line_number":34,"context_line":"          , data-dir : List Volume.Type"},{"line_number":35,"context_line":"          , volumes : List Volume.Type"},{"line_number":36,"context_line":"          , claim-size : Natural"},{"line_number":37,"context_line":"          }"},{"line_number":38,"context_line":"      , default \u003d"},{"line_number":39,"context_line":"          { data-dir \u003d [] : List Volume.Type"},{"line_number":40,"context_line":"          , volumes \u003d [] : List Volume.Type"},{"line_number":41,"context_line":"          , claim-size \u003d 0"},{"line_number":42,"context_line":"          }"},{"line_number":43,"context_line":"      }"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"let Component \u003d"},{"line_number":46,"context_line":"      { Type \u003d"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_ba6cc005","line":43,"range":{"start_line":29,"start_character":0,"end_line":43,"end_character":7},"in_reply_to":"3fa7e38b_17cccd94","updated":"2020-02-04 00:23:44.000000000","message":"Next PS renames `Service` into `Component`.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"1303635297fdeae20614337e3ab7b7ebff4872c7","unresolved":false,"context_lines":[{"line_number":26,"context_line":"      , default \u003d { files \u003d [] : List File }"},{"line_number":27,"context_line":"      }"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"let Service \u003d"},{"line_number":30,"context_line":"      { Type \u003d"},{"line_number":31,"context_line":"          { name : Text"},{"line_number":32,"context_line":"          , count : Natural"},{"line_number":33,"context_line":"          , containers : List Kubernetes.Container.Type"},{"line_number":34,"context_line":"          , data-dir : List Volume.Type"},{"line_number":35,"context_line":"          , volumes : List Volume.Type"},{"line_number":36,"context_line":"          , claim-size : Natural"},{"line_number":37,"context_line":"          }"},{"line_number":38,"context_line":"      , default \u003d"},{"line_number":39,"context_line":"          { data-dir \u003d [] : List Volume.Type"},{"line_number":40,"context_line":"          , volumes \u003d [] : List Volume.Type"},{"line_number":41,"context_line":"          , claim-size \u003d 0"},{"line_number":42,"context_line":"          }"},{"line_number":43,"context_line":"      }"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"let Component \u003d"},{"line_number":46,"context_line":"      { Type \u003d"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_17cccd94","line":43,"range":{"start_line":29,"start_character":0,"end_line":43,"end_character":7},"in_reply_to":"3fa7e38b_a40b4921","updated":"2020-02-03 22:31:39.000000000","message":"Good catch, this is a mini abstraction used as an argument for the mkDeployment and mkStatefulSet function. This let us declare the common bit..\n\nNote that such records with a `Type` and `default` attribute means that they can be instantiate using the `Service::{...}` syntax as shown below.\n\nPerhaps this could be renamed ComponentService or AbstractService.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"0a67587691ce1862a3d407659a0dfe365b791e8e","unresolved":false,"context_lines":[{"line_number":152,"context_line":"                            server\u003dgithub.com"},{"line_number":153,"context_line":"                            app_id\u003d{github.app_id}"},{"line_number":154,"context_line":"                            app_key\u003d/etc/zuul-github-${github.name}/${key}"},{"line_number":155,"context_line":"                            \u0027\u0027"},{"line_number":156,"context_line":"                  )"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"          let gits-conf \u003d"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_84596d2a","line":155,"updated":"2020-02-03 21:32:10.000000000","message":"webhook_token is required for a usable github connection","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"1303635297fdeae20614337e3ab7b7ebff4872c7","unresolved":false,"context_lines":[{"line_number":152,"context_line":"                            server\u003dgithub.com"},{"line_number":153,"context_line":"                            app_id\u003d{github.app_id}"},{"line_number":154,"context_line":"                            app_key\u003d/etc/zuul-github-${github.name}/${key}"},{"line_number":155,"context_line":"                            \u0027\u0027"},{"line_number":156,"context_line":"                  )"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"          let gits-conf \u003d"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_b7dcd943","line":155,"in_reply_to":"3fa7e38b_84596d2a","updated":"2020-02-03 22:31:39.000000000","message":"once this is part of the GitHub.Type, then it can be used here yes.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"0a67587691ce1862a3d407659a0dfe365b791e8e","unresolved":false,"context_lines":[{"line_number":309,"context_line":"                )"},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"        let mkPodTemplateSpec \u003d"},{"line_number":312,"context_line":"                  \\(service : Service.Type)"},{"line_number":313,"context_line":"              -\u003e  \\(labels : Labels)"},{"line_number":314,"context_line":"              -\u003e  Kubernetes.PodTemplateSpec::{"},{"line_number":315,"context_line":"                  , metadata \u003d mkObjectMeta service.name labels"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_c4c5255f","line":312,"range":{"start_line":312,"start_character":30,"end_line":312,"end_character":37},"updated":"2020-02-03 21:32:10.000000000","message":"Ah here it\u0027s used. I think the term \u0027Service\u0027 is a bit unfortunate here and can easily be confused with a kubernetes service.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"0a67587691ce1862a3d407659a0dfe365b791e8e","unresolved":false,"context_lines":[{"line_number":567,"context_line":"                                ( mkStatefulSet"},{"line_number":568,"context_line":"                                    Service::{"},{"line_number":569,"context_line":"                                    , name \u003d \"zk\""},{"line_number":570,"context_line":"                                    , count \u003d 1"},{"line_number":571,"context_line":"                                    , data-dir \u003d zk-volumes"},{"line_number":572,"context_line":"                                    , claim-size \u003d 1"},{"line_number":573,"context_line":"                                    , containers \u003d"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_e4aaa16b","line":570,"updated":"2020-02-03 21:32:10.000000000","message":"Is it planned to change this in followups? I\u0027d not recommend running a prod zuul with a one replica zookeeper.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"1303635297fdeae20614337e3ab7b7ebff4872c7","unresolved":false,"context_lines":[{"line_number":567,"context_line":"                                ( mkStatefulSet"},{"line_number":568,"context_line":"                                    Service::{"},{"line_number":569,"context_line":"                                    , name \u003d \"zk\""},{"line_number":570,"context_line":"                                    , count \u003d 1"},{"line_number":571,"context_line":"                                    , data-dir \u003d zk-volumes"},{"line_number":572,"context_line":"                                    , claim-size \u003d 1"},{"line_number":573,"context_line":"                                    , containers \u003d"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_f7b33108","line":570,"in_reply_to":"3fa7e38b_e4aaa16b","updated":"2020-02-03 22:31:39.000000000","message":"Yes, we could either follow https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/ or use a ZooKeeper CR or the Helm chart. IIRC the ZooKeeper CR worked fine, but it was missing authentication.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"0a67587691ce1862a3d407659a0dfe365b791e8e","unresolved":false,"context_lines":[{"line_number":803,"context_line":"                    # mkUnion Components.Services.Database"},{"line_number":804,"context_line":"                    # mkUnion Components.Services.ZooKeeper"},{"line_number":805,"context_line":"                    # mkUnion Components.Zuul.Scheduler"},{"line_number":806,"context_line":"                    # mkUnion Components.Zuul.Executor"},{"line_number":807,"context_line":"                    # mkUnion Components.Zuul.Web"},{"line_number":808,"context_line":"                    # mkUnion Components.Zuul.Merger"},{"line_number":809,"context_line":"                }"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_84e96dac","line":806,"updated":"2020-02-03 21:32:10.000000000","message":"The executor needs a headless service (which I didn\u0027t see so far) for a working log streaming.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"1303635297fdeae20614337e3ab7b7ebff4872c7","unresolved":false,"context_lines":[{"line_number":803,"context_line":"                    # mkUnion Components.Services.Database"},{"line_number":804,"context_line":"                    # mkUnion Components.Services.ZooKeeper"},{"line_number":805,"context_line":"                    # mkUnion Components.Zuul.Scheduler"},{"line_number":806,"context_line":"                    # mkUnion Components.Zuul.Executor"},{"line_number":807,"context_line":"                    # mkUnion Components.Zuul.Web"},{"line_number":808,"context_line":"                    # mkUnion Components.Zuul.Merger"},{"line_number":809,"context_line":"                }"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_17836d08","line":806,"in_reply_to":"3fa7e38b_84e96dac","updated":"2020-02-03 22:31:39.000000000","message":"FWIW the log streaming is working without that setting in my local okd v3.11. To set headless, iiuc, we need to add `clusterIP \u003d Some \"None\"` to https://review.opendev.org/#/c/702106/22/conf/zuul/resources.dhall@271 . Perhaps this could be set only when the port is finger.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"0a67587691ce1862a3d407659a0dfe365b791e8e","unresolved":false,"context_lines":[{"line_number":804,"context_line":"                    # mkUnion Components.Services.ZooKeeper"},{"line_number":805,"context_line":"                    # mkUnion Components.Zuul.Scheduler"},{"line_number":806,"context_line":"                    # mkUnion Components.Zuul.Executor"},{"line_number":807,"context_line":"                    # mkUnion Components.Zuul.Web"},{"line_number":808,"context_line":"                    # mkUnion Components.Zuul.Merger"},{"line_number":809,"context_line":"                }"},{"line_number":810,"context_line":"            }"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_442935ef","line":807,"updated":"2020-02-03 21:32:10.000000000","message":"Web needs a service so it can be made available to the outside via route/ingress.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"1303635297fdeae20614337e3ab7b7ebff4872c7","unresolved":false,"context_lines":[{"line_number":804,"context_line":"                    # mkUnion Components.Services.ZooKeeper"},{"line_number":805,"context_line":"                    # mkUnion Components.Zuul.Scheduler"},{"line_number":806,"context_line":"                    # mkUnion Components.Zuul.Executor"},{"line_number":807,"context_line":"                    # mkUnion Components.Zuul.Web"},{"line_number":808,"context_line":"                    # mkUnion Components.Zuul.Merger"},{"line_number":809,"context_line":"                }"},{"line_number":810,"context_line":"            }"}],"source_content_type":"application/octet-stream","patch_set":22,"id":"3fa7e38b_179a8d74","line":807,"in_reply_to":"3fa7e38b_442935ef","updated":"2020-02-03 22:31:39.000000000","message":"The Web component already declares a Service L711","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"}],"deploy/crds/zuul-ci_v1alpha1_zuul_cr.yaml":[{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"182d140eec8593bc38ff89de8d8326f9f2e0f81b","unresolved":false,"context_lines":[{"line_number":23,"context_line":"          1A1n21Kq8KYTw5KG7zpQOqaD2FN7vR8ugUe6vEa9eNptYA2tb25LHmEnvcC79qsCw9AAAA"},{"line_number":24,"context_line":"          QQDdqZgN/s2zo+FPm3cEFrUMxn5l9IBSSrRwy/BFC8wMDvjAZHW6HycCQ97l41HNudNX3S"},{"line_number":25,"context_line":"          a56gV9hNojMrdOHsAzAAAAFmZlZG9yYUBmZWRvcmEucmRvY2xvdWQBAgME"},{"line_number":26,"context_line":"          -----END OPENSSH PRIVATE KEY-----"},{"line_number":27,"context_line":"  - apiVersion: v1"},{"line_number":28,"context_line":"    kind: Secret"},{"line_number":29,"context_line":"    metadata:"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"3fa7e38b_f50a771d","line":26,"updated":"2020-01-30 17:19:36.000000000","message":"We probably shouldn\u0027t ship this, otherwise people will use it.","commit_id":"5da652583fe0e41bf28913c02557a8667cabc527"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"be641e501dc06a1e06c3f51ad2e50dbe4dddf79a","unresolved":false,"context_lines":[{"line_number":23,"context_line":"          1A1n21Kq8KYTw5KG7zpQOqaD2FN7vR8ugUe6vEa9eNptYA2tb25LHmEnvcC79qsCw9AAAA"},{"line_number":24,"context_line":"          QQDdqZgN/s2zo+FPm3cEFrUMxn5l9IBSSrRwy/BFC8wMDvjAZHW6HycCQ97l41HNudNX3S"},{"line_number":25,"context_line":"          a56gV9hNojMrdOHsAzAAAAFmZlZG9yYUBmZWRvcmEucmRvY2xvdWQBAgME"},{"line_number":26,"context_line":"          -----END OPENSSH PRIVATE KEY-----"},{"line_number":27,"context_line":"  - apiVersion: v1"},{"line_number":28,"context_line":"    kind: Secret"},{"line_number":29,"context_line":"    metadata:"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"3fa7e38b_1943cd14","line":26,"in_reply_to":"3fa7e38b_f50a771d","updated":"2020-01-30 20:59:09.000000000","message":"Alright, next PS move this to the integration test.","commit_id":"5da652583fe0e41bf28913c02557a8667cabc527"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"182d140eec8593bc38ff89de8d8326f9f2e0f81b","unresolved":false,"context_lines":[{"line_number":96,"context_line":"              FDa1rKSfn0llBt5+oXB0e+1t3AUKJFieHuLyqbNTEkdlzDuJKW9kxSZhjetWGPQ3"},{"line_number":97,"context_line":"              EgliTqJgLjtNK7CjLotVN5k/QA\u003d\u003d"},{"line_number":98,"context_line":"              -----END CERTIFICATE-----"},{"line_number":99,"context_line":"            token: eyJhbGciOiJSUzI1NiIsImtpZCI6InNPNGRNT3dFZGwzQzYxSm4tWC1DeWRieE4wUTRIc3dpWThrN1E5Mk8wS2cifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6Im5vZGVwb29sLXRva2VuLTVsbjdsIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6Im5vZGVwb29sIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiYWRlMDZkNTUtMzEwZi00OWNiLWJlZGUtMjllOTMzMWExYmNhIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OmRlZmF1bHQ6bm9kZXBvb2wifQ.xLi7vlNzMI7E8fqKNJ6VH-CxdzCw1--IEQ4QVD8dm3JdYMRrQT4uFeNnhrxT7gqUf_vV2B821W3ALmpDvJW9EzMGWshGGWsnNlUJ7w0T9tFBd-fsAgZeomBvq_yzJt7Ud7Ug7ysiR2_DMUNQynPavl-D3fS5SMDSHjm_vMKYYF78ds2SCFu85AJOG0Xu4_1Dzd2r0GihfXMc7aAxvtVba4g38_d1oZjmSWddNE4loHxocmAxfFohNl_hui22zAOM1Z4xlZ7w8MCuTTLfKIExSAaAsfZb1yGZ4eN35wfLBaGHCscCjZl4ctos92WeWyzEjs901AIg3BqqlbR7tSEdLg"},{"line_number":100,"context_line":"        contexts:"},{"line_number":101,"context_line":"        - context:"},{"line_number":102,"context_line":"            cluster: local"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"3fa7e38b_15087323","line":99,"updated":"2020-01-30 17:19:36.000000000","message":"Same here.","commit_id":"5da652583fe0e41bf28913c02557a8667cabc527"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"be641e501dc06a1e06c3f51ad2e50dbe4dddf79a","unresolved":false,"context_lines":[{"line_number":96,"context_line":"              FDa1rKSfn0llBt5+oXB0e+1t3AUKJFieHuLyqbNTEkdlzDuJKW9kxSZhjetWGPQ3"},{"line_number":97,"context_line":"              EgliTqJgLjtNK7CjLotVN5k/QA\u003d\u003d"},{"line_number":98,"context_line":"              -----END CERTIFICATE-----"},{"line_number":99,"context_line":"            token: eyJhbGciOiJSUzI1NiIsImtpZCI6InNPNGRNT3dFZGwzQzYxSm4tWC1DeWRieE4wUTRIc3dpWThrN1E5Mk8wS2cifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6Im5vZGVwb29sLXRva2VuLTVsbjdsIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6Im5vZGVwb29sIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiYWRlMDZkNTUtMzEwZi00OWNiLWJlZGUtMjllOTMzMWExYmNhIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OmRlZmF1bHQ6bm9kZXBvb2wifQ.xLi7vlNzMI7E8fqKNJ6VH-CxdzCw1--IEQ4QVD8dm3JdYMRrQT4uFeNnhrxT7gqUf_vV2B821W3ALmpDvJW9EzMGWshGGWsnNlUJ7w0T9tFBd-fsAgZeomBvq_yzJt7Ud7Ug7ysiR2_DMUNQynPavl-D3fS5SMDSHjm_vMKYYF78ds2SCFu85AJOG0Xu4_1Dzd2r0GihfXMc7aAxvtVba4g38_d1oZjmSWddNE4loHxocmAxfFohNl_hui22zAOM1Z4xlZ7w8MCuTTLfKIExSAaAsfZb1yGZ4eN35wfLBaGHCscCjZl4ctos92WeWyzEjs901AIg3BqqlbR7tSEdLg"},{"line_number":100,"context_line":"        contexts:"},{"line_number":101,"context_line":"        - context:"},{"line_number":102,"context_line":"            cluster: local"}],"source_content_type":"text/x-yaml","patch_set":18,"id":"3fa7e38b_992fbd56","line":99,"in_reply_to":"3fa7e38b_15087323","updated":"2020-01-30 20:59:09.000000000","message":"Done","commit_id":"5da652583fe0e41bf28913c02557a8667cabc527"}],"deploy/operator.yaml":[{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"0a67587691ce1862a3d407659a0dfe365b791e8e","unresolved":false,"context_lines":[{"line_number":20,"context_line":"          - /tmp/ansible-operator/runner"},{"line_number":21,"context_line":"          - stdout"},{"line_number":22,"context_line":"          image: \"docker.io/zuul/zuul-operator\""},{"line_number":23,"context_line":"          imagePullPolicy: \"IfNotPresent\""},{"line_number":24,"context_line":"          volumeMounts:"},{"line_number":25,"context_line":"          - mountPath: /tmp/ansible-operator/runner"},{"line_number":26,"context_line":"            name: runner"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"3fa7e38b_c434454a","line":23,"range":{"start_line":23,"start_character":28,"end_line":23,"end_character":40},"updated":"2020-02-03 21:32:10.000000000","message":"Is IfNotPresent really expected in combination with the latest tag? This might lead to unexpected results.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"},{"author":{"_account_id":9311,"name":"Tristan Cacqueray","email":"tdecacqu@redhat.com","username":"tristanC"},"change_message_id":"1303635297fdeae20614337e3ab7b7ebff4872c7","unresolved":false,"context_lines":[{"line_number":20,"context_line":"          - /tmp/ansible-operator/runner"},{"line_number":21,"context_line":"          - stdout"},{"line_number":22,"context_line":"          image: \"docker.io/zuul/zuul-operator\""},{"line_number":23,"context_line":"          imagePullPolicy: \"IfNotPresent\""},{"line_number":24,"context_line":"          volumeMounts:"},{"line_number":25,"context_line":"          - mountPath: /tmp/ansible-operator/runner"},{"line_number":26,"context_line":"            name: runner"}],"source_content_type":"text/x-yaml","patch_set":22,"id":"3fa7e38b_77a2e199","line":23,"range":{"start_line":23,"start_character":28,"end_line":23,"end_character":40},"in_reply_to":"3fa7e38b_c434454a","updated":"2020-02-03 22:31:39.000000000","message":"It\u0027s mostly convenient to work locally, and we need a published image so that this work without imagePullPolicy.","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"}],"roles/zuul/library/dhall_to_json.py":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"ed681be4b642a0a09a307cc1ed213f67690b1516","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    stdout, stderr \u003d proc.communicate(expression.encode(\u0027utf-8\u0027))"},{"line_number":28,"context_line":"    if stderr:"},{"line_number":29,"context_line":"        return dict(failed\u003dTrue, msg\u003dstderr.decode(\u0027utf-8\u0027))"},{"line_number":30,"context_line":"    result \u003d dict(result\u003djson.loads(stdout.decode(\u0027utf-8\u0027)))"},{"line_number":31,"context_line":"    result[\u0027changed\u0027] \u003d True"},{"line_number":32,"context_line":"    return result"},{"line_number":33,"context_line":""}],"source_content_type":"text/x-python","patch_set":22,"id":"3fa7e38b_0eb6018b","line":30,"range":{"start_line":30,"start_character":13,"end_line":30,"end_character":60},"updated":"2020-02-03 17:30:10.000000000","message":"Is this not something built into ansible?","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"}],"roles/zuul/library/json_to_dhall.py":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"ed681be4b642a0a09a307cc1ed213f67690b1516","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    )"},{"line_number":42,"context_line":"    p \u003d module.params"},{"line_number":43,"context_line":"    try:"},{"line_number":44,"context_line":"        module.exit_json(changed\u003dTrue, result\u003drun(p[\u0027schema\u0027], p[\u0027json\u0027]))"},{"line_number":45,"context_line":"    except Exception as e:"},{"line_number":46,"context_line":"        module.fail_json(msg\u003d\"Dhall expression failed:\" + str(e))"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-python","patch_set":22,"id":"3fa7e38b_4e615910","line":44,"updated":"2020-02-03 17:30:10.000000000","message":"Is this much different than just using a command task?","commit_id":"69d41b505ed752de6aa327e64800c52a3e0777e0"}]}
