)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"03039103467f77c6ade3e0c88c4a6d965fe06110","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Add \u0027controller_keystone\u0027 and \u0027worker_keystone\u0027 roles to feature matrix."},{"line_number":10,"context_line":"This roles would be useful for Keystone multinode grenade job as we need"},{"line_number":11,"context_line":"multi-Keystone openstack installation."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I577eb46b82bef54f89eed5c8a43a472341ff17a6"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"9a629dbe_cf1cea15","line":12,"updated":"2016-11-09 13:56:00.000000000","message":"Please refer to the blueprint here, like:\n\n    Partially-Implements: rolling-upgrade-testing\n\nIt will be easier to keep track of the blueprint.","commit_id":"5ca9c324d906adc236dcdf1eaf9c1de6727ca786"}],"devstack-vm-gate.sh":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"84b861a82089042dc589c325284891d7a139d661","unresolved":false,"context_lines":[{"line_number":256,"context_line":""},{"line_number":257,"context_line":"        local test_matrix_role\u003d\u0027primary\u0027"},{"line_number":258,"context_line":"        if [[ \"$MULTI_KEYSTONE\" -eq \"1\" ]]; then"},{"line_number":259,"context_line":"            test_matrix_role\u003d\u0027primary_keystone\u0027"},{"line_number":260,"context_line":"        fi"},{"line_number":261,"context_line":""},{"line_number":262,"context_line":"        if [[ $role \u003d sub ]]; then"}],"source_content_type":"text/x-sh","patch_set":7,"id":"9a629dbe_2edb5a1c","line":259,"updated":"2016-11-11 00:09:45.000000000","message":"Talked to Sean briefly on IRC about this, but it would be kind of nice if we could have the feature roles be specified in env vars and then every new role wouldn\u0027t need to come with a rewrite of this section of code. Instead jobs that want to do something special could supply their own features file and set a coulpe env vars for d-g and voila correct services are started. I don\u0027t think we need to solve this now but somethign to think about for making this more resuable.","commit_id":"0b2a9eafc08e8585337d5458f54cfdcc83403e50"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"57471deb70d3a801e1a9d8bbf789e4701827f060","unresolved":false,"context_lines":[{"line_number":571,"context_line":"        if [[ \"$role\" \u003d sub ]]; then"},{"line_number":572,"context_line":"            echo \"RECREATE_KEYSTONE_DB\u003dFalse\" \u003e\u003e\"$localrc_file\""},{"line_number":573,"context_line":"        fi"},{"line_number":574,"context_line":"        if [[ \"$GRENADE_OLD_BRANCH\" \u003d \u0027stable/newton\u0027 ]]; then"},{"line_number":575,"context_line":"            echo \"KEYSTONE_TOKEN_FORMAT\u003dfernet\" \u003e\u003e\"$localrc_file\""},{"line_number":576,"context_line":"        fi"},{"line_number":577,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":26,"id":"ba5201f7_748cce7f","line":574,"range":{"start_line":574,"start_character":14,"end_line":574,"end_character":53},"updated":"2017-01-03 21:00:00.000000000","message":"why this? this is not so obvious, at least to me.","commit_id":"28e0fa87a86f90b017e7bcb803050cad7b725024"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"7c15cafc27f086d53e760524b2ba725973107168","unresolved":false,"context_lines":[{"line_number":571,"context_line":"        if [[ \"$role\" \u003d sub ]]; then"},{"line_number":572,"context_line":"            echo \"RECREATE_KEYSTONE_DB\u003dFalse\" \u003e\u003e\"$localrc_file\""},{"line_number":573,"context_line":"        fi"},{"line_number":574,"context_line":"        if [[ \"$GRENADE_OLD_BRANCH\" \u003d \u0027stable/newton\u0027 ]]; then"},{"line_number":575,"context_line":"            echo \"KEYSTONE_TOKEN_FORMAT\u003dfernet\" \u003e\u003e\"$localrc_file\""},{"line_number":576,"context_line":"        fi"},{"line_number":577,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":26,"id":"ba5201f7_81eb0fdb","line":574,"in_reply_to":"ba5201f7_01f423f0","updated":"2017-01-09 08:18:29.000000000","message":"Dolph, you\u0027re right. I added a comment here.","commit_id":"28e0fa87a86f90b017e7bcb803050cad7b725024"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"3bae5b013c36a02cda7690ca0342113cfc3adc4d","unresolved":false,"context_lines":[{"line_number":571,"context_line":"        if [[ \"$role\" \u003d sub ]]; then"},{"line_number":572,"context_line":"            echo \"RECREATE_KEYSTONE_DB\u003dFalse\" \u003e\u003e\"$localrc_file\""},{"line_number":573,"context_line":"        fi"},{"line_number":574,"context_line":"        if [[ \"$GRENADE_OLD_BRANCH\" \u003d \u0027stable/newton\u0027 ]]; then"},{"line_number":575,"context_line":"            echo \"KEYSTONE_TOKEN_FORMAT\u003dfernet\" \u003e\u003e\"$localrc_file\""},{"line_number":576,"context_line":"        fi"},{"line_number":577,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":26,"id":"ba5201f7_01f423f0","line":574,"in_reply_to":"ba5201f7_748cce7f","updated":"2017-01-03 22:09:48.000000000","message":"I agree, I had to stop and think about this. I believe this is because the default token format in newton was UUID, so we have to change it to Fernet in order for fernet keys to be shared successfully, and thus tokens to be validated by both nodes. If that\u0027s correct, then an inline comment would be appreciated, as this is far from common knowledge!","commit_id":"28e0fa87a86f90b017e7bcb803050cad7b725024"},{"author":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"change_message_id":"18e8671f6c63fa233732b1b90e59f2f193368094","unresolved":false,"context_lines":[{"line_number":621,"context_line":"        # ensure local.conf exists to remove conditional logic"},{"line_number":622,"context_line":"        touch local.conf"},{"line_number":623,"context_line":"        if [[ $DEVSTACK_GATE_NEUTRON -eq \"1\" ]]; then"},{"line_number":624,"context_line":"            if [[ \"$role\" \u003d \"primary\" ]] || [[ \"$MULTI_KEYSTONE\" -eq \"0\" ]]; then"},{"line_number":625,"context_line":"                echo -e \"[[post-config|\\$NEUTRON_CONF]]\\n[DEFAULT]\\nglobal_physnet_mtu\u003d$EXTERNAL_BRIDGE_MTU\" \u003e\u003e local.conf"},{"line_number":626,"context_line":"            fi"},{"line_number":627,"context_line":"        fi"}],"source_content_type":"text/x-sh","patch_set":28,"id":"ba5201f7_18affb2a","line":624,"updated":"2017-01-11 19:40:02.000000000","message":"I think that both the primary and subnode need this MTU fix. Otherwise neutron multinode jobs will break. I don\u0027t quite follow why you\u0027ve added the check for MULTI_KEYSTONE","commit_id":"198a1520d1983e5f119d1a80f0bd39cfd6761a7a"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"4fd3ee85620e5f84e19a5216e3477a51bfe50bac","unresolved":false,"context_lines":[{"line_number":621,"context_line":"        # ensure local.conf exists to remove conditional logic"},{"line_number":622,"context_line":"        touch local.conf"},{"line_number":623,"context_line":"        if [[ $DEVSTACK_GATE_NEUTRON -eq \"1\" ]]; then"},{"line_number":624,"context_line":"            if [[ \"$role\" \u003d \"primary\" ]] || [[ \"$MULTI_KEYSTONE\" -eq \"0\" ]]; then"},{"line_number":625,"context_line":"                echo -e \"[[post-config|\\$NEUTRON_CONF]]\\n[DEFAULT]\\nglobal_physnet_mtu\u003d$EXTERNAL_BRIDGE_MTU\" \u003e\u003e local.conf"},{"line_number":626,"context_line":"            fi"},{"line_number":627,"context_line":"        fi"}],"source_content_type":"text/x-sh","patch_set":28,"id":"5a3905b3_cd7637a3","line":624,"in_reply_to":"9a57fde8_efce81b3","updated":"2017-01-24 13:51:22.000000000","message":"So we\u0027ll always have this MTU fix except case when (MULTI_KEYSTONE \u003d\u003d 1 \u0026\u0026 role \u003d\u003d subnode)","commit_id":"198a1520d1983e5f119d1a80f0bd39cfd6761a7a"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"b12d8fc17af68b5af6400255b17ff02c39c02f6f","unresolved":false,"context_lines":[{"line_number":621,"context_line":"        # ensure local.conf exists to remove conditional logic"},{"line_number":622,"context_line":"        touch local.conf"},{"line_number":623,"context_line":"        if [[ $DEVSTACK_GATE_NEUTRON -eq \"1\" ]]; then"},{"line_number":624,"context_line":"            if [[ \"$role\" \u003d \"primary\" ]] || [[ \"$MULTI_KEYSTONE\" -eq \"0\" ]]; then"},{"line_number":625,"context_line":"                echo -e \"[[post-config|\\$NEUTRON_CONF]]\\n[DEFAULT]\\nglobal_physnet_mtu\u003d$EXTERNAL_BRIDGE_MTU\" \u003e\u003e local.conf"},{"line_number":626,"context_line":"            fi"},{"line_number":627,"context_line":"        fi"}],"source_content_type":"text/x-sh","patch_set":28,"id":"9a57fde8_efce81b3","line":624,"in_reply_to":"ba5201f7_18affb2a","updated":"2017-01-12 07:35:17.000000000","message":"But I didn\u0027t install neutron on subnode, subnode includes only keystone service. In case of neutron multinode job everything will work as before. But in case of MULTI_KEYSTONE\u003d1 I don\u0027t want to do this on subnode as I don\u0027t have neutron.conf.","commit_id":"198a1520d1983e5f119d1a80f0bd39cfd6761a7a"},{"author":{"_account_id":4656,"name":"Sean M. Collins","email":"sean@coreitpro.com","username":"scollins"},"change_message_id":"18e8671f6c63fa233732b1b90e59f2f193368094","unresolved":false,"context_lines":[{"line_number":662,"context_line":"        touch local.conf"},{"line_number":663,"context_line":"        if [[ $DEVSTACK_GATE_NEUTRON -eq \"1\" ]]; then"},{"line_number":664,"context_line":"            if [[ \"$role\" \u003d \"primary\" ]] || [[ \"$MULTI_KEYSTONE\" -eq \"0\" ]]; then"},{"line_number":665,"context_line":"                echo -e \"[[post-config|\\$NEUTRON_CONF]]\\n[DEFAULT]\\nglobal_physnet_mtu\u003d$EXTERNAL_BRIDGE_MTU\" \u003e\u003e local.conf"},{"line_number":666,"context_line":"            fi"},{"line_number":667,"context_line":"        fi"},{"line_number":668,"context_line":"    fi"}],"source_content_type":"text/x-sh","patch_set":28,"id":"ba5201f7_58a50345","line":665,"updated":"2017-01-11 19:40:02.000000000","message":"Same comments as L624","commit_id":"198a1520d1983e5f119d1a80f0bd39cfd6761a7a"}],"features.yaml":[{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"84b861a82089042dc589c325284891d7a139d661","unresolved":false,"context_lines":[{"line_number":205,"context_line":""},{"line_number":206,"context_line":"  nova:"},{"line_number":207,"context_line":"    base:"},{"line_number":208,"context_line":"      services: [n-api, n-cond, n-cpu, n-crt, n-net, n-obj, n-sch]"},{"line_number":209,"context_line":"    icehouse:"},{"line_number":210,"context_line":"      compute-ext:"},{"line_number":211,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9a629dbe_b89ed004","line":208,"updated":"2016-11-11 00:09:45.000000000","message":"Please don\u0027t use nova net, it is deprecated. All testing going forward should use neutron. This is why I have -1\u0027d.","commit_id":"0b2a9eafc08e8585337d5458f54cfdcc83403e50"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"cc7ce2bbbe54918c49a5b197b5fd42a74ab5eaf0","unresolved":false,"context_lines":[{"line_number":205,"context_line":""},{"line_number":206,"context_line":"  nova:"},{"line_number":207,"context_line":"    base:"},{"line_number":208,"context_line":"      services: [n-api, n-cond, n-cpu, n-crt, n-net, n-obj, n-sch]"},{"line_number":209,"context_line":"    icehouse:"},{"line_number":210,"context_line":"      compute-ext:"},{"line_number":211,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9a629dbe_f9acb88d","line":208,"in_reply_to":"9a629dbe_b89ed004","updated":"2016-11-11 13:20:25.000000000","message":"Done","commit_id":"0b2a9eafc08e8585337d5458f54cfdcc83403e50"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"84b861a82089042dc589c325284891d7a139d661","unresolved":false,"context_lines":[{"line_number":236,"context_line":"    newton:"},{"line_number":237,"context_line":"      rm-services: [tls-proxy]"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"subnode_keystone:"},{"line_number":240,"context_line":"  default:"},{"line_number":241,"context_line":"    base:"},{"line_number":242,"context_line":"      services: []"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9a629dbe_58a5b444","line":239,"updated":"2016-11-11 00:09:45.000000000","message":"If you are going to run multinode anyways why not run the other services to make a compute node too? Might make the tests a bit more interesting, I dunno.","commit_id":"0b2a9eafc08e8585337d5458f54cfdcc83403e50"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"cc7ce2bbbe54918c49a5b197b5fd42a74ab5eaf0","unresolved":false,"context_lines":[{"line_number":236,"context_line":"    newton:"},{"line_number":237,"context_line":"      rm-services: [tls-proxy]"},{"line_number":238,"context_line":""},{"line_number":239,"context_line":"subnode_keystone:"},{"line_number":240,"context_line":"  default:"},{"line_number":241,"context_line":"    base:"},{"line_number":242,"context_line":"      services: []"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9a629dbe_74afcf7c","line":239,"in_reply_to":"9a629dbe_58a5b444","updated":"2016-11-11 13:20:25.000000000","message":"We need to think about it. I\u0027m afraid that if upgradability of any other OpenStack component will be broken, we will get the job failed even if different Keystone versions work fine. Also it seems to me that Keystone is usually enabled on controller nodes, not compute.","commit_id":"0b2a9eafc08e8585337d5458f54cfdcc83403e50"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"84b861a82089042dc589c325284891d7a139d661","unresolved":false,"context_lines":[{"line_number":275,"context_line":""},{"line_number":276,"context_line":"  tempest:"},{"line_number":277,"context_line":"    base:"},{"line_number":278,"context_line":"      services: [tempest]"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"  tlsproxy:"},{"line_number":281,"context_line":"    base:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9a629dbe_98c2ece7","line":278,"updated":"2016-11-11 00:09:45.000000000","message":"Note that devstack-gate will only run tempest on the primary node currently. So this is a noop.","commit_id":"0b2a9eafc08e8585337d5458f54cfdcc83403e50"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"cc7ce2bbbe54918c49a5b197b5fd42a74ab5eaf0","unresolved":false,"context_lines":[{"line_number":275,"context_line":""},{"line_number":276,"context_line":"  tempest:"},{"line_number":277,"context_line":"    base:"},{"line_number":278,"context_line":"      services: [tempest]"},{"line_number":279,"context_line":""},{"line_number":280,"context_line":"  tlsproxy:"},{"line_number":281,"context_line":"    base:"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9a629dbe_b4cde767","line":278,"in_reply_to":"9a629dbe_98c2ece7","updated":"2016-11-11 13:20:25.000000000","message":"Done","commit_id":"0b2a9eafc08e8585337d5458f54cfdcc83403e50"},{"author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"change_message_id":"5c5d3013bc208a4304b04da0c6334872402c2ce4","unresolved":false,"context_lines":[{"line_number":503,"context_line":""},{"line_number":504,"context_line":"  neutron:"},{"line_number":505,"context_line":"    base:"},{"line_number":506,"context_line":"      services: [q-agt]"},{"line_number":507,"context_line":""},{"line_number":508,"context_line":"  tempest:"},{"line_number":509,"context_line":"    base:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"7a77a97e_bc64c949","line":506,"updated":"2016-11-14 19:03:28.000000000","message":"If your intent is to only run keystone this way then you probably shouldn\u0027t run the neutron agent here either.","commit_id":"0d2a3503a88dc5ed95d4c8e0b9d0e2105b287f5a"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"f703dd68effae6e5e3547056935f60e170941fb8","unresolved":false,"context_lines":[{"line_number":503,"context_line":""},{"line_number":504,"context_line":"  neutron:"},{"line_number":505,"context_line":"    base:"},{"line_number":506,"context_line":"      services: [q-agt]"},{"line_number":507,"context_line":""},{"line_number":508,"context_line":"  tempest:"},{"line_number":509,"context_line":"    base:"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"7a77a97e_ce2ff29f","line":506,"in_reply_to":"7a77a97e_bc64c949","updated":"2016-11-15 08:07:12.000000000","message":"Done","commit_id":"0d2a3503a88dc5ed95d4c8e0b9d0e2105b287f5a"},{"author":{"_account_id":17860,"name":"Samuel de Medeiros Queiroz","email":"samueldmq@gmail.com","username":"samueldmq"},"change_message_id":"57471deb70d3a801e1a9d8bbf789e4701827f060","unresolved":false,"context_lines":[{"line_number":311,"context_line":"  tlsproxy:"},{"line_number":312,"context_line":"    base:"},{"line_number":313,"context_line":"      services: [tls-proxy]"},{"line_number":314,"context_line":"    # TLS proxy didn\u0027t work properly until ocata"},{"line_number":315,"context_line":"    liberty:"},{"line_number":316,"context_line":"      rm-services: [tls-proxy]"},{"line_number":317,"context_line":"    mitaka:"}],"source_content_type":"text/x-yaml","patch_set":26,"id":"ba5201f7_54e8aa10","line":314,"range":{"start_line":314,"start_character":4,"end_line":314,"end_character":48},"updated":"2017-01-03 21:00:00.000000000","message":"what does this mean?","commit_id":"28e0fa87a86f90b017e7bcb803050cad7b725024"},{"author":{"_account_id":7331,"name":"Julia Varlamova","email":"jvarlamova@mirantis.com","username":"jvarlamova"},"change_message_id":"7c15cafc27f086d53e760524b2ba725973107168","unresolved":false,"context_lines":[{"line_number":311,"context_line":"  tlsproxy:"},{"line_number":312,"context_line":"    base:"},{"line_number":313,"context_line":"      services: [tls-proxy]"},{"line_number":314,"context_line":"    # TLS proxy didn\u0027t work properly until ocata"},{"line_number":315,"context_line":"    liberty:"},{"line_number":316,"context_line":"      rm-services: [tls-proxy]"},{"line_number":317,"context_line":"    mitaka:"}],"source_content_type":"text/x-yaml","patch_set":26,"id":"ba5201f7_61c70b64","line":314,"in_reply_to":"ba5201f7_01dee33e","updated":"2017-01-09 08:18:29.000000000","message":"Yes. But seems that it isn\u0027t necessary for grenade multinode job, so I removed it in next patch set.","commit_id":"28e0fa87a86f90b017e7bcb803050cad7b725024"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"3bae5b013c36a02cda7690ca0342113cfc3adc4d","unresolved":false,"context_lines":[{"line_number":311,"context_line":"  tlsproxy:"},{"line_number":312,"context_line":"    base:"},{"line_number":313,"context_line":"      services: [tls-proxy]"},{"line_number":314,"context_line":"    # TLS proxy didn\u0027t work properly until ocata"},{"line_number":315,"context_line":"    liberty:"},{"line_number":316,"context_line":"      rm-services: [tls-proxy]"},{"line_number":317,"context_line":"    mitaka:"}],"source_content_type":"text/x-yaml","patch_set":26,"id":"ba5201f7_01dee33e","line":314,"in_reply_to":"ba5201f7_54e8aa10","updated":"2017-01-03 22:09:48.000000000","message":"This is copied directly from L262.","commit_id":"28e0fa87a86f90b017e7bcb803050cad7b725024"}]}
