)]}'
{".zuul.yaml":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"ded98d7d144cae569dd57e7314410518e249a316","unresolved":false,"context_lines":[{"line_number":1,"context_line":"- project:"},{"line_number":2,"context_line":"    check:"},{"line_number":3,"context_line":"      jobs:"},{"line_number":4,"context_line":"        - grenade:"},{"line_number":5,"context_line":"            irrelevant-files: \u0026grenade-irrelevant-files"},{"line_number":6,"context_line":"              - ^.*\\.rst$"},{"line_number":7,"context_line":"              - ^doc/.*$"},{"line_number":8,"context_line":"        # Skip other jobs while testing"},{"line_number":9,"context_line":"        - grenade-heat-test"},{"line_number":10,"context_line":"        - grenade-heat-multinode-test"},{"line_number":11,"context_line":"        - grenade-neutron-multinode-test"},{"line_number":12,"context_line":"        # - grenade-heat:"},{"line_number":13,"context_line":"        #     voting: false"},{"line_number":14,"context_line":"        #     irrelevant-files: *grenade-irrelevant-files"},{"line_number":15,"context_line":"        - grenade-py3"},{"line_number":16,"context_line":"        #- neutron-grenade-multinode:"},{"line_number":17,"context_line":"        #    irrelevant-files: *grenade-irrelevant-files"},{"line_number":18,"context_line":"        #- tox-docs"},{"line_number":19,"context_line":"        #- ironic-grenade-dsvm:"},{"line_number":20,"context_line":"        #    voting: false"},{"line_number":21,"context_line":"        #    irrelevant-files: *grenade-irrelevant-files"},{"line_number":22,"context_line":"        - grenade-postgresql"},{"line_number":23,"context_line":"    gate:"},{"line_number":24,"context_line":"      jobs:"},{"line_number":25,"context_line":"        - grenade-py3"},{"line_number":26,"context_line":"        - neutron-grenade:"},{"line_number":27,"context_line":"            irrelevant-files: *grenade-irrelevant-files"},{"line_number":28,"context_line":"        - neutron-grenade-multinode:"},{"line_number":29,"context_line":"            irrelevant-files: *grenade-irrelevant-files"},{"line_number":30,"context_line":"        - tox-docs"},{"line_number":31,"context_line":"    post:"},{"line_number":32,"context_line":"      jobs:"},{"line_number":33,"context_line":"        - publish-openstack-tox-docs"},{"line_number":34,"context_line":"    experimental:"},{"line_number":35,"context_line":"      jobs:"},{"line_number":36,"context_line":"        - grenade-postgresql"},{"line_number":37,"context_line":"        - legacy-grenade-dsvm-neutron-forward:"},{"line_number":38,"context_line":"            irrelevant-files: *grenade-irrelevant-files"},{"line_number":39,"context_line":"        - trove-grenade:"},{"line_number":40,"context_line":"            irrelevant-files: *grenade-irrelevant-files"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"- job:"},{"line_number":43,"context_line":"    name: grenade-base"},{"line_number":44,"context_line":"    parent: multinode"}],"source_content_type":"text/x-yaml","patch_set":34,"id":"1fcbff3d_ee72bfe3","line":41,"range":{"start_line":1,"start_character":2,"end_line":41,"end_character":0},"updated":"2019-04-20 13:16:05.000000000","message":"Job grenade not defined","commit_id":"85e29dbe0f516cda37d1364125149bd453ca6181"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"ded98d7d144cae569dd57e7314410518e249a316","unresolved":false,"context_lines":[{"line_number":39,"context_line":"        - trove-grenade:"},{"line_number":40,"context_line":"            irrelevant-files: *grenade-irrelevant-files"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"- job:"},{"line_number":43,"context_line":"    name: grenade-base"},{"line_number":44,"context_line":"    parent: multinode"},{"line_number":45,"context_line":"    abstract: true"},{"line_number":46,"context_line":"    description: |"},{"line_number":47,"context_line":"      Base grenade job"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"      This is the base grenade job for both single and multi node grenade"},{"line_number":50,"context_line":"      tests. It does not define any service to be used, so that this can"},{"line_number":51,"context_line":"      be used to build an upgrade test with a minimal number of services."},{"line_number":52,"context_line":"    nodeset: openstack-single-node-bionic"},{"line_number":53,"context_line":"    required-projects:"},{"line_number":54,"context_line":"      - openstack-dev/devstack"},{"line_number":55,"context_line":"      - openstack/tempest"},{"line_number":56,"context_line":"    roles:"},{"line_number":57,"context_line":"      - zuul: openstack-infra/openstack-zuul-jobs"},{"line_number":58,"context_line":"      - zuul: openstack-dev/devstack"},{"line_number":59,"context_line":"      - zuul: openstack/tempest"},{"line_number":60,"context_line":"    vars:"},{"line_number":61,"context_line":"      devstack_bases:"},{"line_number":62,"context_line":"        shared: /opt/stack"},{"line_number":63,"context_line":"        old: /opt/stack/old"},{"line_number":64,"context_line":"        new: /opt/stack/new"},{"line_number":65,"context_line":"        logs_old: /opt/stack/logs/old"},{"line_number":66,"context_line":"        logs_new: /opt/stack/logs/new"},{"line_number":67,"context_line":"      grenade_devstack_localrc: \u0026grenade_base_devstack_localrc"},{"line_number":68,"context_line":"        old:"},{"line_number":69,"context_line":"          DEST: \"{{ devstack_bases.old }}\""},{"line_number":70,"context_line":"          LOGFILE: \"{{ devstack_bases.old }}/logs/devstacklog.txt\""},{"line_number":71,"context_line":"        new:"},{"line_number":72,"context_line":"          DEST: \"{{ devstack_bases.new }}\""},{"line_number":73,"context_line":"          LOGFILE: \"{{ devstack_bases.new }}/logs/devstacklog.txt\""},{"line_number":74,"context_line":"        shared:"},{"line_number":75,"context_line":"          # Common settings for OpenStack CI"},{"line_number":76,"context_line":"          DATABASE_PASSWORD: secretdatabase"},{"line_number":77,"context_line":"          # FIXME: temporarily define MYSQL_PASSWORD too,"},{"line_number":78,"context_line":"          # because some code in devstack and in grenade"},{"line_number":79,"context_line":"          # still requires it to be defined."},{"line_number":80,"context_line":"          MYSQL_PASSWORD: secretdatabase"},{"line_number":81,"context_line":"          RABBIT_PASSWORD: secretrabbit"},{"line_number":82,"context_line":"          ADMIN_PASSWORD: secretadmin"},{"line_number":83,"context_line":"          SERVICE_PASSWORD: secretservice"},{"line_number":84,"context_line":"          NETWORK_GATEWAY: 10.1.0.1"},{"line_number":85,"context_line":"          FIXED_RANGE: 10.1.0.0/20"},{"line_number":86,"context_line":"          IPV4_ADDRS_SAFE_TO_USE: 10.1.0.0/20"},{"line_number":87,"context_line":"          FLOATING_RANGE: 172.24.5.0/24"},{"line_number":88,"context_line":"          PUBLIC_NETWORK_GATEWAY: 172.24.5.1"},{"line_number":89,"context_line":"          FIXED_NETWORK_SIZE: 4096"},{"line_number":90,"context_line":"          LOG_COLOR: false"},{"line_number":91,"context_line":"          VERBOSE: true"},{"line_number":92,"context_line":"          VERBOSE_NO_TIMESTAMP: true"},{"line_number":93,"context_line":"          NOVNC_FROM_PACKAGE: true"},{"line_number":94,"context_line":"          ERROR_ON_CLONE: true"},{"line_number":95,"context_line":"          # Gate jobs can\u0027t deal with nested virt. Disable it."},{"line_number":96,"context_line":"          LIBVIRT_TYPE: qemu"},{"line_number":97,"context_line":"      # grenade_from_branch is branch specific, it\u0027s the change branch \"-1\"."},{"line_number":98,"context_line":"      # This has to be updated on master when cutting a new stable branch."},{"line_number":99,"context_line":"      # grenade_to_branch is always the current patch on pullup jobs."},{"line_number":100,"context_line":"      grenade_from_branch: stable/rocky"},{"line_number":101,"context_line":"      grenade_localrc:"},{"line_number":102,"context_line":"        SAVE_DIR: \"{{ devstack_bases.shared }}/save\""},{"line_number":103,"context_line":"      # from tempest playbooks"},{"line_number":104,"context_line":"      devstack_local_conf:"},{"line_number":105,"context_line":"        test-config:"},{"line_number":106,"context_line":"          $TEMPEST_CONFIG:"},{"line_number":107,"context_line":"            compute:"},{"line_number":108,"context_line":"              min_compute_nodes: \"{{ groups[\u0027compute\u0027] | default([\u0027controller\u0027]) | length }}\""},{"line_number":109,"context_line":"      test_results_stage_name: test_results"},{"line_number":110,"context_line":"      zuul_copy_output:"},{"line_number":111,"context_line":"        \u0027{{ devstack_bases.logs_old }}\u0027: logs"},{"line_number":112,"context_line":"        \u0027{{ devstack_bases.logs_new }}\u0027: logs"},{"line_number":113,"context_line":"        \u0027{{ grenade_save_dir }}\u0027: logs"},{"line_number":114,"context_line":"        \u0027{{ grenade_log_dir }}/grenade.sh.log\u0027: logs"},{"line_number":115,"context_line":"        \u0027{{ grenade_log_dir }}/grenade.sh.log.summary\u0027: logs"},{"line_number":116,"context_line":"        \u0027{{ grenade_conf_dir }}/grenade_localrc\u0027: logs_txt"},{"line_number":117,"context_line":"        \u0027{{ grenade_conf_dir }}/grenade_pluginrc\u0027: logs_txt"},{"line_number":118,"context_line":"        \u0027{{ devstack_bases.new }}/tempest/etc/tempest.conf\u0027: logs"},{"line_number":119,"context_line":"        \u0027{{ devstack_bases.new }}/tempest/etc/accounts.yaml\u0027: logs"},{"line_number":120,"context_line":"        \u0027{{ devstack_bases.new }}/tempest/tempest.log\u0027: logs"},{"line_number":121,"context_line":"        \u0027{{ stage_dir }}/{{ test_results_stage_name }}.subunit\u0027: logs"},{"line_number":122,"context_line":"        \u0027{{ stage_dir }}/{{ test_results_stage_name }}.html\u0027: logs"},{"line_number":123,"context_line":"        \u0027{{ stage_dir }}/stackviz\u0027: logs"},{"line_number":124,"context_line":"        \u0027{{ stage_dir }}/apache\u0027: logs"},{"line_number":125,"context_line":"        \u0027{{ stage_dir }}/apache_config\u0027: logs"},{"line_number":126,"context_line":"        \u0027{{ stage_dir }}/etc\u0027: logs"},{"line_number":127,"context_line":"        \u0027/var/log/rabbitmq\u0027: logs"},{"line_number":128,"context_line":"        \u0027/var/log/postgresql\u0027: logs"},{"line_number":129,"context_line":"        \u0027/var/log/mysql.err\u0027: logs"},{"line_number":130,"context_line":"        \u0027/var/log/mysql.log\u0027: logs"},{"line_number":131,"context_line":"        \u0027/var/log/libvirt\u0027: logs"},{"line_number":132,"context_line":"        \u0027/etc/sudoers\u0027: logs"},{"line_number":133,"context_line":"        \u0027/etc/sudoers.d\u0027: logs"},{"line_number":134,"context_line":"        \u0027{{ stage_dir }}/iptables.txt\u0027: logs"},{"line_number":135,"context_line":"        \u0027{{ stage_dir }}/df.txt\u0027: logs"},{"line_number":136,"context_line":"        \u0027{{ stage_dir }}/pip2-freeze.txt\u0027: logs"},{"line_number":137,"context_line":"        \u0027{{ stage_dir }}/pip3-freeze.txt\u0027: logs"},{"line_number":138,"context_line":"        \u0027{{ stage_dir }}/dpkg-l.txt\u0027: logs"},{"line_number":139,"context_line":"        \u0027{{ stage_dir }}/rpm-qa.txt\u0027: logs"},{"line_number":140,"context_line":"        \u0027{{ stage_dir }}/core\u0027: logs"},{"line_number":141,"context_line":"        \u0027{{ stage_dir }}/listen53.txt\u0027: logs"},{"line_number":142,"context_line":"        \u0027{{ stage_dir }}/deprecations.log\u0027: logs"},{"line_number":143,"context_line":"        \u0027/var/log/ceph\u0027: logs"},{"line_number":144,"context_line":"        \u0027/var/log/openvswitch\u0027: logs"},{"line_number":145,"context_line":"        \u0027/var/log/glusterfs\u0027: logs"},{"line_number":146,"context_line":"        \u0027/etc/glusterfs/glusterd.vol\u0027: logs"},{"line_number":147,"context_line":"        \u0027/etc/resolv.conf\u0027: logs"},{"line_number":148,"context_line":"        \u0027/var/log/unbound.log\u0027: logs"},{"line_number":149,"context_line":"      extensions_to_txt:"},{"line_number":150,"context_line":"        auto: True"},{"line_number":151,"context_line":"        conf: True"},{"line_number":152,"context_line":"        log: True"},{"line_number":153,"context_line":"        localrc: True"},{"line_number":154,"context_line":"        stackenv: True"},{"line_number":155,"context_line":"        summary: True"},{"line_number":156,"context_line":"    group-vars:"},{"line_number":157,"context_line":"      subnode:"},{"line_number":158,"context_line":"        grenade_devstack_localrc:"},{"line_number":159,"context_line":"          \u003c\u003c: *grenade_base_devstack_localrc"},{"line_number":160,"context_line":"    pre-run: playbooks/pre.yaml"},{"line_number":161,"context_line":"    run: playbooks/grenade.yaml"},{"line_number":162,"context_line":"    post-run: playbooks/post.yaml"},{"line_number":163,"context_line":"    irrelevant-files:"},{"line_number":164,"context_line":"      # Documentation related"},{"line_number":165,"context_line":"      - ^.*\\.rst$"},{"line_number":166,"context_line":"      - ^api-ref/.*$"},{"line_number":167,"context_line":"      - ^doc/.*$"},{"line_number":168,"context_line":"      - ^releasenotes/.*$"},{"line_number":169,"context_line":"      # Translations"},{"line_number":170,"context_line":"      - ^.*/locale/.*po$"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"- job:"},{"line_number":173,"context_line":"    name: grenade"},{"line_number":174,"context_line":"    parent: grenade-base"}],"source_content_type":"text/x-yaml","patch_set":34,"id":"1fcbff3d_4e62f318","line":171,"range":{"start_line":42,"start_character":2,"end_line":171,"end_character":0},"updated":"2019-04-20 13:16:05.000000000","message":"Unknown project openstack-dev/devstack","commit_id":"85e29dbe0f516cda37d1364125149bd453ca6181"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"ded98d7d144cae569dd57e7314410518e249a316","unresolved":false,"context_lines":[{"line_number":169,"context_line":"      # Translations"},{"line_number":170,"context_line":"      - ^.*/locale/.*po$"},{"line_number":171,"context_line":""},{"line_number":172,"context_line":"- job:"},{"line_number":173,"context_line":"    name: grenade"},{"line_number":174,"context_line":"    parent: grenade-base"},{"line_number":175,"context_line":"    description: |"},{"line_number":176,"context_line":"      Default grenade job"},{"line_number":177,"context_line":""},{"line_number":178,"context_line":"      Usually grenade jobs should inherit from this job."},{"line_number":179,"context_line":"    required-projects:"},{"line_number":180,"context_line":"      # NOTE(andreaf) The devstack and grenade roles take care of setting up"},{"line_number":181,"context_line":"      # repos on the right branch for this job."},{"line_number":182,"context_line":"      - openstack-dev/devstack"},{"line_number":183,"context_line":"      - openstack/cinder"},{"line_number":184,"context_line":"      - openstack/glance"},{"line_number":185,"context_line":"      - openstack/keystone"},{"line_number":186,"context_line":"      - openstack/neutron"},{"line_number":187,"context_line":"      - openstack/nova"},{"line_number":188,"context_line":"      - openstack/placement"},{"line_number":189,"context_line":"      - openstack/requirements"},{"line_number":190,"context_line":"      - openstack/swift"},{"line_number":191,"context_line":"      - openstack/tempest"},{"line_number":192,"context_line":"    timeout: 7200"},{"line_number":193,"context_line":"    vars:"},{"line_number":194,"context_line":"      grenade_devstack_localrc:"},{"line_number":195,"context_line":"        shared:"},{"line_number":196,"context_line":"          # Common OpenStack services settings"},{"line_number":197,"context_line":"          SWIFT_REPLICAS: 1"},{"line_number":198,"context_line":"          SWIFT_START_ALL_SERVICES: false"},{"line_number":199,"context_line":"          SWIFT_HASH: 1234123412341234"},{"line_number":200,"context_line":"          CINDER_PERIODIC_INTERVAL: 10"},{"line_number":201,"context_line":"          DEBUG_LIBVIRT_COREDUMPS: True"},{"line_number":202,"context_line":"          # Multinode specific settings"},{"line_number":203,"context_line":"          SERVICE_HOST: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":204,"context_line":"          HOST_IP: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":205,"context_line":"          PUBLIC_BRIDGE_MTU: \"{{ external_bridge_mtu }}\""},{"line_number":206,"context_line":"          CELLSV2_SETUP: \"singleconductor\""},{"line_number":207,"context_line":"          # Node specific settings"},{"line_number":208,"context_line":"          DATABASE_TYPE: mysql"},{"line_number":209,"context_line":"      devstack_localconf:"},{"line_number":210,"context_line":"        post-config:"},{"line_number":211,"context_line":"          $NEUTRON_CONF:"},{"line_number":212,"context_line":"            DEFAULT:"},{"line_number":213,"context_line":"              global_physnet_mtu: \"{{ external_bridge_mtu }}\""},{"line_number":214,"context_line":"      grenade_localrc:"},{"line_number":215,"context_line":"        # disable the execution of the smoke tests by default"},{"line_number":216,"context_line":"        RUN_SMOKE: False"},{"line_number":217,"context_line":"      devstack_services:"},{"line_number":218,"context_line":"        # Core services enabled for this branch."},{"line_number":219,"context_line":"        # This list replaces the test-matrix."},{"line_number":220,"context_line":"        # Shared services"},{"line_number":221,"context_line":"        dstat: true"},{"line_number":222,"context_line":"        etcd3: true"},{"line_number":223,"context_line":"        mysql: true"},{"line_number":224,"context_line":"        peakmem_tracker: true"},{"line_number":225,"context_line":"        rabbit: true"},{"line_number":226,"context_line":"        # TODO: tls-proxy is not tested by legacy jobs;"},{"line_number":227,"context_line":"        # enable this after testing."},{"line_number":228,"context_line":"        tls-proxy: false"},{"line_number":229,"context_line":"        # Keystone services"},{"line_number":230,"context_line":"        key: true"},{"line_number":231,"context_line":"        # Glance services"},{"line_number":232,"context_line":"        g-api: true"},{"line_number":233,"context_line":"        g-reg: true"},{"line_number":234,"context_line":"        # Nova services"},{"line_number":235,"context_line":"        n-api: true"},{"line_number":236,"context_line":"        n-api-meta: true"},{"line_number":237,"context_line":"        n-cauth: true"},{"line_number":238,"context_line":"        n-cond: true"},{"line_number":239,"context_line":"        n-cpu: true"},{"line_number":240,"context_line":"        n-novnc: true"},{"line_number":241,"context_line":"        n-obj: true"},{"line_number":242,"context_line":"        n-sch: true"},{"line_number":243,"context_line":"        placement-api: true"},{"line_number":244,"context_line":"        # Neutron services"},{"line_number":245,"context_line":"        # We need to keep using the neutron-legacy based services for"},{"line_number":246,"context_line":"        # now until all issues with the new lib/neutron code are solved"},{"line_number":247,"context_line":"        q-agt: true"},{"line_number":248,"context_line":"        q-dhcp: true"},{"line_number":249,"context_line":"        q-l3: true"},{"line_number":250,"context_line":"        q-meta: true"},{"line_number":251,"context_line":"        q-metering: true"},{"line_number":252,"context_line":"        q-svc: true"},{"line_number":253,"context_line":"        # neutron-api: true"},{"line_number":254,"context_line":"        # neutron-agent: true"},{"line_number":255,"context_line":"        # neutron-dhcp: true"},{"line_number":256,"context_line":"        # neutron-l3: true"},{"line_number":257,"context_line":"        # neutron-metadata-agent: true"},{"line_number":258,"context_line":"        # neutron-metering: true"},{"line_number":259,"context_line":"        # Swift services"},{"line_number":260,"context_line":"        s-account: true"},{"line_number":261,"context_line":"        s-container: true"},{"line_number":262,"context_line":"        s-object: true"},{"line_number":263,"context_line":"        s-proxy: true"},{"line_number":264,"context_line":"        # Cinder services"},{"line_number":265,"context_line":"        c-api: true"},{"line_number":266,"context_line":"        c-bak: true"},{"line_number":267,"context_line":"        c-sch: true"},{"line_number":268,"context_line":"        c-vol: true"},{"line_number":269,"context_line":"        cinder: true"},{"line_number":270,"context_line":"        # Tempest was enabled by default even before the native Zuul v3 job"},{"line_number":271,"context_line":"        tempest: true"},{"line_number":272,"context_line":"        # Services we don\u0027t need."},{"line_number":273,"context_line":"        # This section is not really needed, it\u0027s for readability."},{"line_number":274,"context_line":"        horizon: false"},{"line_number":275,"context_line":"        # Test matrix emits ceilometer but ceilometer is not installed in the"},{"line_number":276,"context_line":"        # integrated gate, so specifying the services has not effect."},{"line_number":277,"context_line":"        # ceilometer-*: false"},{"line_number":278,"context_line":"    group-vars:"},{"line_number":279,"context_line":"      subnode:"},{"line_number":280,"context_line":"        devstack_services:"},{"line_number":281,"context_line":"          # Core services enabled for this branch."},{"line_number":282,"context_line":"          # This list replaces the test-matrix."},{"line_number":283,"context_line":"          # Shared services"},{"line_number":284,"context_line":"          dstat: true"},{"line_number":285,"context_line":"          peakmem_tracker: true"},{"line_number":286,"context_line":"          # TODO: tls-proxy is not tested by legacy jobs;"},{"line_number":287,"context_line":"          # enable this after testing."},{"line_number":288,"context_line":"          tls-proxy: false"},{"line_number":289,"context_line":"          # Nova services"},{"line_number":290,"context_line":"          n-cpu: true"},{"line_number":291,"context_line":"          placement-client: true"},{"line_number":292,"context_line":"          # Neutron services"},{"line_number":293,"context_line":"          neutron-agent: true"},{"line_number":294,"context_line":"          # Cinder services"},{"line_number":295,"context_line":"          c-bak: true"},{"line_number":296,"context_line":"          c-vol: true"},{"line_number":297,"context_line":"          # Services we don\u0027t run at all on subnode."},{"line_number":298,"context_line":"          # This section is not really needed, it\u0027s for readability."},{"line_number":299,"context_line":"          # keystone: false"},{"line_number":300,"context_line":"          # s-*: false"},{"line_number":301,"context_line":"          horizon: false"},{"line_number":302,"context_line":"          tempest: false"},{"line_number":303,"context_line":"          # Test matrix emits ceilometer but ceilomenter is not installed in the"},{"line_number":304,"context_line":"          # integrated gate, so specifying the services has not effect."},{"line_number":305,"context_line":"          # ceilometer-*: false"},{"line_number":306,"context_line":"        grenade_devstack_localrc:"},{"line_number":307,"context_line":"          shared:"},{"line_number":308,"context_line":"            # Multinode specific settings"},{"line_number":309,"context_line":"            HOST_IP: \"{{ hostvars[inventory_hostname][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":310,"context_line":"            SERVICE_HOST: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":311,"context_line":"            PUBLIC_BRIDGE_MTU: \"{{ external_bridge_mtu }}\""},{"line_number":312,"context_line":"            CELLSV2_SETUP: \"singleconductor\""},{"line_number":313,"context_line":"            # Subnode specific settings"},{"line_number":314,"context_line":"            DATABASE_TYPE: mysql"},{"line_number":315,"context_line":"            GLANCE_HOSTPORT: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}:9292\""},{"line_number":316,"context_line":"            Q_HOST: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":317,"context_line":"            RABBIT_HOST: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":318,"context_line":"            DATABASE_HOST: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"- job:"},{"line_number":321,"context_line":"    name: grenade-py3"},{"line_number":322,"context_line":"    parent: grenade"}],"source_content_type":"text/x-yaml","patch_set":34,"id":"1fcbff3d_6e67af27","line":319,"range":{"start_line":172,"start_character":2,"end_line":319,"end_character":0},"updated":"2019-04-20 13:16:05.000000000","message":"Unknown project openstack-dev/devstack","commit_id":"85e29dbe0f516cda37d1364125149bd453ca6181"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"ded98d7d144cae569dd57e7314410518e249a316","unresolved":false,"context_lines":[{"line_number":317,"context_line":"            RABBIT_HOST: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":318,"context_line":"            DATABASE_HOST: \"{{ hostvars[\u0027controller\u0027][\u0027nodepool\u0027][\u0027private_ipv4\u0027] }}\""},{"line_number":319,"context_line":""},{"line_number":320,"context_line":"- job:"},{"line_number":321,"context_line":"    name: grenade-py3"},{"line_number":322,"context_line":"    parent: grenade"},{"line_number":323,"context_line":"    description: |"},{"line_number":324,"context_line":"      Default grenade job which uses Python 3"},{"line_number":325,"context_line":"    vars:"},{"line_number":326,"context_line":"      grenade_devstack_localrc:"},{"line_number":327,"context_line":"        shared:"},{"line_number":328,"context_line":"          USE_PYTHON3: true"},{"line_number":329,"context_line":"    irrelevant-files: *grenade-irrelevant-files"},{"line_number":330,"context_line":""},{"line_number":331,"context_line":"- job:"},{"line_number":332,"context_line":"    name: grenade-postgresql"},{"line_number":333,"context_line":"    description: |"}],"source_content_type":"text/x-yaml","patch_set":34,"id":"1fcbff3d_2e71a7e1","line":330,"range":{"start_line":320,"start_character":2,"end_line":330,"end_character":0},"updated":"2019-04-20 13:16:05.000000000","message":"Job grenade not defined","commit_id":"85e29dbe0f516cda37d1364125149bd453ca6181"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"ded98d7d144cae569dd57e7314410518e249a316","unresolved":false,"context_lines":[{"line_number":328,"context_line":"          USE_PYTHON3: true"},{"line_number":329,"context_line":"    irrelevant-files: *grenade-irrelevant-files"},{"line_number":330,"context_line":""},{"line_number":331,"context_line":"- job:"},{"line_number":332,"context_line":"    name: grenade-postgresql"},{"line_number":333,"context_line":"    description: |"},{"line_number":334,"context_line":"      Default grenade job which uses PostgreSQL"},{"line_number":335,"context_line":"    parent: grenade"},{"line_number":336,"context_line":"    vars:"},{"line_number":337,"context_line":"      grenade_devstack_localrc:"},{"line_number":338,"context_line":"        shared:"},{"line_number":339,"context_line":"          DATABASE_TYPE: postgresql"},{"line_number":340,"context_line":"      devstack_services:"},{"line_number":341,"context_line":"        mysql: false"},{"line_number":342,"context_line":"        postgresql: true"},{"line_number":343,"context_line":"    group-vars:"},{"line_number":344,"context_line":"      subnode:"},{"line_number":345,"context_line":"        devstack_services:"},{"line_number":346,"context_line":"        grenade_devstack_localrc:"},{"line_number":347,"context_line":"          shared:"},{"line_number":348,"context_line":"            DATABASE_TYPE: postgresql"},{"line_number":349,"context_line":"    irrelevant-files: *grenade-irrelevant-files"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"- job:"},{"line_number":352,"context_line":"    name: grenade-heat-test"},{"line_number":353,"context_line":"    parent: grenade"}],"source_content_type":"text/x-yaml","patch_set":34,"id":"1fcbff3d_0e6ceb06","line":350,"range":{"start_line":331,"start_character":2,"end_line":350,"end_character":0},"updated":"2019-04-20 13:16:05.000000000","message":"Job grenade not defined","commit_id":"85e29dbe0f516cda37d1364125149bd453ca6181"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"change_message_id":"ded98d7d144cae569dd57e7314410518e249a316","unresolved":false,"context_lines":[{"line_number":348,"context_line":"            DATABASE_TYPE: postgresql"},{"line_number":349,"context_line":"    irrelevant-files: *grenade-irrelevant-files"},{"line_number":350,"context_line":""},{"line_number":351,"context_line":"- job:"},{"line_number":352,"context_line":"    name: grenade-heat-test"},{"line_number":353,"context_line":"    parent: grenade"},{"line_number":354,"context_line":"    required-projects:"},{"line_number":355,"context_line":"      - openstack/heat"},{"line_number":356,"context_line":"      - openstack/heat-tempest-plugin"},{"line_number":357,"context_line":"      - openstack/python-heatclient"},{"line_number":358,"context_line":"    vars:"},{"line_number":359,"context_line":"      grenade_devstack_localrc:"},{"line_number":360,"context_line":"        shared:"},{"line_number":361,"context_line":"          IMAGE_URLS: https://download.fedoraproject.org/pub/fedora/linux/releases/29/Cloud/x86_64/images/Fedora-Cloud-Base-29-1.2.x86_64.qcow2"},{"line_number":362,"context_line":"      devstack_services:"},{"line_number":363,"context_line":"        h-api: true"},{"line_number":364,"context_line":"        h-api-cfn: true"},{"line_number":365,"context_line":"        h-eng: true"},{"line_number":366,"context_line":"        heat: true"},{"line_number":367,"context_line":"      tempest_test_regex: ^heat_tempest_plugin\\.tests\\.api\\.test_heat_api[._]([^_]+)"},{"line_number":368,"context_line":"      tox_envlist: all"},{"line_number":369,"context_line":"      devstack_plugins:"},{"line_number":370,"context_line":"        heat: https://git.openstack.org/openstack/heat"},{"line_number":371,"context_line":"      tempest_plugins:"},{"line_number":372,"context_line":"        - heat-tempest-plugin"},{"line_number":373,"context_line":"    irrelevant-files: *grenade-irrelevant-files"},{"line_number":374,"context_line":""},{"line_number":375,"context_line":"- job:"},{"line_number":376,"context_line":"    name: grenade-heat-multinode-test"},{"line_number":377,"context_line":"    parent: grenade-heat-test"}],"source_content_type":"text/x-yaml","patch_set":34,"id":"1fcbff3d_ce7583ce","line":374,"range":{"start_line":351,"start_character":2,"end_line":374,"end_character":0},"updated":"2019-04-20 13:16:05.000000000","message":"Job grenade not defined","commit_id":"85e29dbe0f516cda37d1364125149bd453ca6181"}],"/COMMIT_MSG":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"815f8814133acc02953fa9ebbe9838665c1d2d40","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"DNM - grenade test jobs (heat, neutron)"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Should be moved to the heat and neutron repository respectively."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Depends-On: https://review.opendev.org/706492"},{"line_number":12,"context_line":"Change-Id: I14427b087b224f66f65c379f72f2c0e5b9ba939a"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":51,"id":"1f493fa4_0ed664f2","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":64},"updated":"2020-04-24 01:49:00.000000000","message":"+1, heat job can be moved to their repo","commit_id":"6d903502bec5b18b599415f8fb5bcb728cb168d1"},{"author":{"_account_id":10459,"name":"Luigi Toscano","email":"ltoscano@redhat.com","username":"ltoscano"},"change_message_id":"645aeee4db0f5f76f4279f283f51cd71be0542dc","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"DNM - grenade test jobs (heat, neutron)"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Should be moved to the heat and neutron repository respectively."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Depends-On: https://review.opendev.org/706492"},{"line_number":12,"context_line":"Change-Id: I14427b087b224f66f65c379f72f2c0e5b9ba939a"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":51,"id":"1f493fa4_d8271a12","line":9,"range":{"start_line":9,"start_character":0,"end_line":9,"end_character":64},"in_reply_to":"1f493fa4_0ed664f2","updated":"2020-04-24 07:52:04.000000000","message":"Yeah, this was just a quick test when things were moving too much.","commit_id":"6d903502bec5b18b599415f8fb5bcb728cb168d1"}]}
