)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"8355d416da0c4995e039cdb6c10e6f99a7dc8e80","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":35,"id":"3f79a3b5_d4ed3f23","line":16,"updated":"2018-11-09 14:39:01.000000000","message":"Story/Task","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"}],"dev/functions":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2870f5f60620c25f51cf147f1907bc2a75c88eb5","unresolved":false,"context_lines":[{"line_number":302,"context_line":"    pip install python-openstackclient"},{"line_number":303,"context_line":""},{"line_number":304,"context_line":"    local kernel_id\u003d\"$(openstack image show -f value -c id ipa.vmlinuz)\""},{"line_number":305,"context_line":"    local ramdisk_id\u003d\"$(openstack image show -f value -c id ipa.initramfs)\""},{"line_number":306,"context_line":"    ansible-playbook \\"},{"line_number":307,"context_line":"        -vvv \\"},{"line_number":308,"context_line":"        --inventory \"$tenks_path/ansible/inventory\" \\"}],"source_content_type":"application/x-shellscript","patch_set":25,"id":"3f79a3b5_3a4fb2be","line":305,"updated":"2018-11-02 14:48:58.000000000","message":"No longer necessary.","commit_id":"e51fc72e0296a48df11e63bf7719210953b8c57d"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2870f5f60620c25f51cf147f1907bc2a75c88eb5","unresolved":false,"context_lines":[{"line_number":254,"context_line":"    set -eu"},{"line_number":255,"context_line":""},{"line_number":256,"context_line":"    # function arguments"},{"line_number":257,"context_line":"    uuid\u003d\"$1\""},{"line_number":258,"context_line":"    flavor\u003d\"$2\""},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"    node_config\u003d\"{ \u0027uuid\u0027: \u0027$uuid\u0027, \u0027flavor\u0027: \u0027$flavor\u0027 }\""}],"source_content_type":"application/x-shellscript","patch_set":27,"id":"3f79a3b5_6e5bc988","line":257,"range":{"start_line":257,"start_character":4,"end_line":257,"end_character":8},"updated":"2018-11-02 14:48:58.000000000","message":"name?","commit_id":"7a742feae64e0013fec0b78fe03c07459d938c8a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2870f5f60620c25f51cf147f1907bc2a75c88eb5","unresolved":false,"context_lines":[{"line_number":265,"context_line":"    echo \"Performing a simple smoke test with node config: $node_config\""},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"    echo \"$uuid: Creating a server\""},{"line_number":268,"context_line":"    openstack server create --wait --image cirros --flavor \"$flavor\" --key-name mykey --network provision-net \"$uuid\""},{"line_number":269,"context_line":"    echo \"$uuid: Server created\""},{"line_number":270,"context_line":"    openstack server show demo1"},{"line_number":271,"context_line":"    status\u003d$(openstack server show demo1 -f value -c status)"}],"source_content_type":"application/x-shellscript","patch_set":27,"id":"3f79a3b5_6ee98980","line":268,"range":{"start_line":268,"start_character":96,"end_line":268,"end_character":109},"updated":"2018-11-02 14:48:58.000000000","message":"probably want to stick with demo-net for VMs.","commit_id":"7a742feae64e0013fec0b78fe03c07459d938c8a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2870f5f60620c25f51cf147f1907bc2a75c88eb5","unresolved":false,"context_lines":[{"line_number":267,"context_line":"    echo \"$uuid: Creating a server\""},{"line_number":268,"context_line":"    openstack server create --wait --image cirros --flavor \"$flavor\" --key-name mykey --network provision-net \"$uuid\""},{"line_number":269,"context_line":"    echo \"$uuid: Server created\""},{"line_number":270,"context_line":"    openstack server show demo1"},{"line_number":271,"context_line":"    status\u003d$(openstack server show demo1 -f value -c status)"},{"line_number":272,"context_line":"    if [[ $status !\u003d ACTIVE ]]; then"},{"line_number":273,"context_line":"        echo \"$uuid: Node creation failed\""}],"source_content_type":"application/x-shellscript","patch_set":27,"id":"3f79a3b5_4e584d88","line":270,"range":{"start_line":270,"start_character":26,"end_line":270,"end_character":31},"updated":"2018-11-02 14:48:58.000000000","message":"name","commit_id":"7a742feae64e0013fec0b78fe03c07459d938c8a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2870f5f60620c25f51cf147f1907bc2a75c88eb5","unresolved":false,"context_lines":[{"line_number":268,"context_line":"    openstack server create --wait --image cirros --flavor \"$flavor\" --key-name mykey --network provision-net \"$uuid\""},{"line_number":269,"context_line":"    echo \"$uuid: Server created\""},{"line_number":270,"context_line":"    openstack server show demo1"},{"line_number":271,"context_line":"    status\u003d$(openstack server show demo1 -f value -c status)"},{"line_number":272,"context_line":"    if [[ $status !\u003d ACTIVE ]]; then"},{"line_number":273,"context_line":"        echo \"$uuid: Node creation failed\""},{"line_number":274,"context_line":"        return 1"}],"source_content_type":"application/x-shellscript","patch_set":27,"id":"3f79a3b5_ce43fd96","line":271,"range":{"start_line":271,"start_character":35,"end_line":271,"end_character":40},"updated":"2018-11-02 14:48:58.000000000","message":"name","commit_id":"7a742feae64e0013fec0b78fe03c07459d938c8a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2870f5f60620c25f51cf147f1907bc2a75c88eb5","unresolved":false,"context_lines":[{"line_number":276,"context_line":"    # TODO(mgoddard): Test SSH connectivity to the VM."},{"line_number":277,"context_line":""},{"line_number":278,"context_line":"    echo \"$uuid: Deleting the Node\""},{"line_number":279,"context_line":"    openstack server delete --wait demo1"},{"line_number":280,"context_line":"}"},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"function tenks_deploy {"}],"source_content_type":"application/x-shellscript","patch_set":27,"id":"3f79a3b5_6ec0a9fa","line":279,"range":{"start_line":279,"start_character":35,"end_line":279,"end_character":40},"updated":"2018-11-02 14:48:58.000000000","message":"name","commit_id":"7a742feae64e0013fec0b78fe03c07459d938c8a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"015888dbe267f97214d3709241e9ed0d6f7a0aa6","unresolved":false,"context_lines":[{"line_number":238,"context_line":"function overcloud_test_init {"},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"    # This guards this function from running more than once"},{"line_number":241,"context_line":"    mkdir /tmp/init-runonce \u003e /dev/null 2\u003e\u00261 || return 0"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"    echo \"Performing overcloud test init\""},{"line_number":244,"context_line":"    environment_setup"}],"source_content_type":"application/x-shellscript","patch_set":29,"id":"3f79a3b5_231ba26f","line":241,"updated":"2018-11-02 17:21:29.000000000","message":"Need to move this to after the virtual environment \u0026 openrc sourcing.","commit_id":"e101a2f037cb65931d0b2eac317f98c1f960000b"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"8355d416da0c4995e039cdb6c10e6f99a7dc8e80","unresolved":false,"context_lines":[{"line_number":477,"context_line":"        enable_kernel_bridge_firewall"},{"line_number":478,"context_line":"    else"},{"line_number":479,"context_line":"        die_if_module_not_loaded nf_conntrack_tftp"},{"line_number":480,"context_line":"        die_if_module_not_loaded nf_nat_tftp"},{"line_number":481,"context_line":"    fi"},{"line_number":482,"context_line":"    # explicitly allow DHCP - packets are occasionally being dropped here"},{"line_number":483,"context_line":"    sudo iptables -I INPUT -p udp --dport 67:68 --sport 67:68 -j ACCEPT || true"}],"source_content_type":"application/x-shellscript","patch_set":35,"id":"3f79a3b5_39ffce03","line":480,"range":{"start_line":480,"start_character":8,"end_line":480,"end_character":32},"updated":"2018-11-09 14:39:01.000000000","message":"I don\u0027t see where this is implemented.","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"8355d416da0c4995e039cdb6c10e6f99a7dc8e80","unresolved":false,"context_lines":[{"line_number":493,"context_line":"    sudo iptables -I FORWARD -p tcp --dport $IRONIC_INSPECTOR_PORT -j ACCEPT || true"},{"line_number":494,"context_line":""},{"line_number":495,"context_line":"    # agent ramdisk gets instance image from swift"},{"line_number":496,"context_line":"    sudo iptables -I INPUT -d $HOST_IP -p tcp --dport ${SWIFT_DEFAULT_BIND_PORT:-8080} -j ACCEPT || true"},{"line_number":497,"context_line":"    sudo iptables -I INPUT -d $HOST_IP -p tcp --dport $GLANCE_SERVICE_PORT -j ACCEPT || true"},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"    if is_ipxe_enabled; then"}],"source_content_type":"application/x-shellscript","patch_set":35,"id":"3f79a3b5_594c0a96","line":496,"range":{"start_line":496,"start_character":31,"end_line":496,"end_character":38},"updated":"2018-11-09 14:39:01.000000000","message":"Should be INTERNAL_VIP?","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"8355d416da0c4995e039cdb6c10e6f99a7dc8e80","unresolved":false,"context_lines":[{"line_number":494,"context_line":""},{"line_number":495,"context_line":"    # agent ramdisk gets instance image from swift"},{"line_number":496,"context_line":"    sudo iptables -I INPUT -d $HOST_IP -p tcp --dport ${SWIFT_DEFAULT_BIND_PORT:-8080} -j ACCEPT || true"},{"line_number":497,"context_line":"    sudo iptables -I INPUT -d $HOST_IP -p tcp --dport $GLANCE_SERVICE_PORT -j ACCEPT || true"},{"line_number":498,"context_line":""},{"line_number":499,"context_line":"    if is_ipxe_enabled; then"},{"line_number":500,"context_line":"        sudo iptables -I INPUT -d $HOST_IP -p tcp --dport $IRONIC_HTTP_PORT -j ACCEPT || true"}],"source_content_type":"application/x-shellscript","patch_set":35,"id":"3f79a3b5_f92cf6b2","line":497,"range":{"start_line":497,"start_character":31,"end_line":497,"end_character":38},"updated":"2018-11-09 14:39:01.000000000","message":"Should be INTERNAL_VIP?","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"23e74b0693f325ffe90aedbc0dae1269c969d904","unresolved":false,"context_lines":[{"line_number":453,"context_line":""},{"line_number":454,"context_line":"function die_if_module_not_loaded {"},{"line_number":455,"context_line":"    if ! grep -q $1 /proc/modules; then"},{"line_number":456,"context_line":"        die $LINENO \"$1 kernel module is not loaded\""},{"line_number":457,"context_line":"    fi"},{"line_number":458,"context_line":"}"},{"line_number":459,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":36,"id":"3f79a3b5_635eb715","line":456,"range":{"start_line":456,"start_character":8,"end_line":456,"end_character":11},"updated":"2018-11-14 09:19:34.000000000","message":"I don\u0027t think this is implemented either!","commit_id":"c316b78898ebb041b84111dc4c058c076fbd8d2d"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"23e74b0693f325ffe90aedbc0dae1269c969d904","unresolved":false,"context_lines":[{"line_number":490,"context_line":"    # nodes boot from TFTP and callback to the API server listening on $HOST_IP"},{"line_number":491,"context_line":"    sudo iptables -I INPUT -d $IRONIC_TFTPSERVER_IP -p udp --dport 69 -j ACCEPT || true"},{"line_number":492,"context_line":""},{"line_number":493,"context_line":"    sudo iptables -I INPUT -d $INTERNAL_VIP -p tcp --dport $IRONIC_SERVICE_PORT -j ACCEPT || true"},{"line_number":494,"context_line":"    # open ironic API on baremetal network"},{"line_number":495,"context_line":"    sudo iptables -I INPUT -d $IRONIC_HTTP_SERVER -p tcp --dport $IRONIC_SERVICE_PORT -j ACCEPT || true"},{"line_number":496,"context_line":"    # allow IPA to connect to ironic API"}],"source_content_type":"application/x-shellscript","patch_set":36,"id":"3f79a3b5_e380874b","line":493,"range":{"start_line":493,"start_character":31,"end_line":493,"end_character":43},"updated":"2018-11-14 09:19:34.000000000","message":"This is the same as IRONIC_HTTP_SERVER used below. I think it\u0027s using HOST_IP to allow traffic between the load balancer and ironic API in a multinode environment. We don\u0027t use multinode in CI, but it won\u0027t hurt to keep it (as HOST_IP).","commit_id":"c316b78898ebb041b84111dc4c058c076fbd8d2d"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"531000191695a64796e8e4f1876b049a2134433c","unresolved":false,"context_lines":[{"line_number":400,"context_line":"        \"$tenks_path/ansible/deploy.yml\""},{"line_number":401,"context_line":"}"},{"line_number":402,"context_line":""},{"line_number":403,"context_line":"# General purpose"},{"line_number":404,"context_line":""},{"line_number":405,"context_line":"# Prints backtrace info"},{"line_number":406,"context_line":"# filename:lineno:function"}],"source_content_type":"application/x-shellscript","patch_set":38,"id":"3f79a3b5_dbc4003c","line":403,"updated":"2018-11-20 12:14:51.000000000","message":"import devstack :)","commit_id":"5c879b95f8bdf461d9dfa933efb1513517656275"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"531000191695a64796e8e4f1876b049a2134433c","unresolved":false,"context_lines":[{"line_number":498,"context_line":"    to_bool \"$flag\""},{"line_number":499,"context_line":"}"},{"line_number":500,"context_line":""},{"line_number":501,"context_line":"function configure_iptables {"},{"line_number":502,"context_line":"    # NOTE(wszumski): adapted from the ironic devstack plugin, see:"},{"line_number":503,"context_line":"    # https://github.com/openstack/ironic/blob/36e87dc5b472d79470b783fbba9ce396e3cbb96e/devstack/lib/ironic#L2132"},{"line_number":504,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":38,"id":"3f79a3b5_1b311859","line":501,"updated":"2018-11-20 12:14:51.000000000","message":"Just had a look at the openstack-ansible project\u0027s CI scripts and they just flush the default rules and allow all traffic... Oh well, nice to see a working firewall.","commit_id":"5c879b95f8bdf461d9dfa933efb1513517656275"}],"dev/tenks-deploy-config.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"531000191695a64796e8e4f1876b049a2134433c","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"# Use a custom socket path to avoid a conflict with the nova_libvirt kolla"},{"line_number":35,"context_line":"# container which bind mounts /var/run/libvirt."},{"line_number":36,"context_line":"libvirt_custom_socket_path: /var/run/libvirt-tenks"}],"source_content_type":"text/x-yaml","patch_set":38,"id":"3f79a3b5_1b0a7877","line":36,"range":{"start_line":36,"start_character":0,"end_line":36,"end_character":50},"updated":"2018-11-20 12:14:51.000000000","message":"Do we not need to set the PID path too?","commit_id":"5c879b95f8bdf461d9dfa933efb1513517656275"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"0a3c0c3ab9748d0a81287cc34e87c63404010341","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"# Use a custom socket path to avoid a conflict with the nova_libvirt kolla"},{"line_number":35,"context_line":"# container which bind mounts /var/run/libvirt."},{"line_number":36,"context_line":"libvirt_custom_socket_path: /var/run/libvirt-tenks"}],"source_content_type":"text/x-yaml","patch_set":38,"id":"3f79a3b5_7b292581","line":36,"range":{"start_line":36,"start_character":0,"end_line":36,"end_character":50},"in_reply_to":"3f79a3b5_1b0a7877","updated":"2018-11-20 16:59:57.000000000","message":"Not if we go with https://review.openstack.org/#/c/618003/ as it stands:\n\n https://git.openstack.org/cgit/openstack/tenks/tree/ansible/group_vars/libvirt?h\u003drefs/changes/03/618003/5#n22","commit_id":"5c879b95f8bdf461d9dfa933efb1513517656275"}],"playbooks/kayobe-overcloud-base/pre.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"8355d416da0c4995e039cdb6c10e6f99a7dc8e80","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    logs_dir: \"/tmp/logs\""},{"line_number":5,"context_line":"    kayobe_src_dir: \"{{ ansible_env.PWD ~ \u0027/\u0027 ~ zuul.projects[\u0027git.openstack.org/openstack/kayobe\u0027].src_dir }}\""},{"line_number":6,"context_line":"    kayobe_config_src_dir: \"{{ ansible_env.PWD ~ \u0027/\u0027 ~ zuul.projects[\u0027git.openstack.org/openstack/kayobe-config-dev\u0027].src_dir }}\""},{"line_number":7,"context_line":"    tenks_src_dir: \"{{ ansible_env.PWD ~ \u0027/\u0027 ~ zuul.projects[\u0027git.openstack.org/openstack/tenks\u0027].src_dir }}\""},{"line_number":8,"context_line":"  environment:"},{"line_number":9,"context_line":"    KAYOBE_CONFIG_SOURCE_PATH: \"{{ kayobe_config_src_dir }}\""},{"line_number":10,"context_line":"  roles:"}],"source_content_type":"text/x-yaml","patch_set":35,"id":"3f79a3b5_9409072a","line":7,"range":{"start_line":7,"start_character":4,"end_line":7,"end_character":17},"updated":"2018-11-09 14:39:01.000000000","message":"nit: Not used","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"}],"playbooks/kayobe-overcloud-base/run.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"69d4616669576c3ab7f2cc80dfa98d485715b8d6","unresolved":false,"context_lines":[{"line_number":16,"context_line":"        # cause this to fail."},{"line_number":17,"context_line":"        cmd: \u003e-"},{"line_number":18,"context_line":"          dev/tenks-deploy.sh"},{"line_number":19,"context_line":"            \u0027{{ \"/\".join([zuul.executor.work_root, tenks_source_dir]) }}\u0027"},{"line_number":20,"context_line":"            \u003e {{ logs_dir }}/ansible/tenks-deploy"},{"line_number":21,"context_line":"        chdir: \"{{ kayobe_src_dir }}\""},{"line_number":22,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3f79a3b5_8ef1cf6d","line":19,"updated":"2018-09-10 14:11:13.000000000","message":"I think the executor refers to the node running zuul, rather than \u0027primary\u0027 node on which this runs.\n\nJob output includes this:\n\nTASK [Ensure test Tenks cluster is deployed]\n2018-09-10 13:22:04.893860 | primary | Usage: dev/tenks-deploy.sh \u003ctenks repo path\u003e\n2018-09-10 13:22:04.895380 | primary | /bin/sh: line 1: /var/lib/zuul/builds/ea40aad146ef49668fc5e9bdcdabbdfc/work/src/git.openstack.org/openstack/kayobe/config/src/tenks: No such file or directory\n\nI think the default directory on primary is /home/zuul. If you remove the chdir and just use tenks_source_dir this should work.","commit_id":"40d38647582af630071d885d9e0cae80bee5459d"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"2870f5f60620c25f51cf147f1907bc2a75c88eb5","unresolved":false,"context_lines":[{"line_number":14,"context_line":"        chdir: \"{{ kayobe_src_dir }}\""},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"    - name: Perform testing of the virtualized machines"},{"line_number":17,"context_line":"      # We must do this before tenks-deploy as that will stop the nova_libvirt"},{"line_number":18,"context_line":"      # container"},{"line_number":19,"context_line":"      shell:"},{"line_number":20,"context_line":"        cmd: dev/overcloud-test-vm.sh \u003e {{ logs_dir }}/ansible/overcloud-test-vm"},{"line_number":21,"context_line":"        chdir: \"{{ kayobe_src_dir }}\""}],"source_content_type":"text/x-yaml","patch_set":27,"id":"3f79a3b5_ae524135","line":18,"range":{"start_line":17,"start_character":6,"end_line":18,"end_character":17},"updated":"2018-11-02 14:48:58.000000000","message":"Good catch. Would be nice to resolve that limitation at some point.","commit_id":"7a742feae64e0013fec0b78fe03c07459d938c8a"}],"playbooks/kayobe-overcloud-upgrade-base/overrides.yml.j2":[{"author":{"_account_id":28022,"name":"Bharat Kunwar","email":"brtknr@bath.edu","username":"brtknr"},"change_message_id":"9359c5ab21cddc64b815ceacce2b36b121647b06","unresolved":false,"context_lines":[{"line_number":10,"context_line":"kolla_ansible_source_version: \"{{ zuul.projects[\u0027git.openstack.org/openstack/kolla-ansible\u0027].checkout }}\""},{"line_number":11,"context_line":"kolla_upper_constraints_file: \"/tmp/upper-constraints.txt\""},{"line_number":12,"context_line":"{% endif %}"},{"line_number":13,"context_line":"kolla_openstack_logging_debug: true"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"# Use the CI infra\u0027s PyPI mirror."},{"line_number":16,"context_line":"pip_local_mirror: true"}],"source_content_type":"text/x-jinja2","patch_set":36,"id":"3f79a3b5_0ad4c44b","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":29},"updated":"2018-11-13 15:12:48.000000000","message":"Is this intentional?","commit_id":"c316b78898ebb041b84111dc4c058c076fbd8d2d"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"e98468eb2e13492322ca0949480313973fccac31","unresolved":false,"context_lines":[{"line_number":10,"context_line":"kolla_ansible_source_version: \"{{ zuul.projects[\u0027git.openstack.org/openstack/kolla-ansible\u0027].checkout }}\""},{"line_number":11,"context_line":"kolla_upper_constraints_file: \"/tmp/upper-constraints.txt\""},{"line_number":12,"context_line":"{% endif %}"},{"line_number":13,"context_line":"kolla_openstack_logging_debug: true"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"# Use the CI infra\u0027s PyPI mirror."},{"line_number":16,"context_line":"pip_local_mirror: true"}],"source_content_type":"text/x-jinja2","patch_set":36,"id":"3f79a3b5_8ad454f2","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":29},"in_reply_to":"3f79a3b5_0ad4c44b","updated":"2018-11-13 15:23:53.000000000","message":"Mark suggested it for consistency. We added it to kayobe-overcloud-base/overrides.yml.j2 and kayobe-seed-base/overrides.yml.j2","commit_id":"c316b78898ebb041b84111dc4c058c076fbd8d2d"}],"playbooks/kayobe-overcloud-upgrade-base/run.yml":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"fb5b7145d01788e915251f212ae7f34e069ba42f","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    - block:"},{"line_number":54,"context_line":"        - name: Perform testing of the overcloud prior to upgrade"},{"line_number":55,"context_line":"          shell:"},{"line_number":56,"context_line":"            cmd: dev/overcloud-test-vm.sh \u003e {{ logs_dir }}/ansible/overcloud-test-vm-pre-upgrade"},{"line_number":57,"context_line":"            chdir: \"{{ previous_kayobe_src_dir }}\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # Upgrade Kayobe, and use it to perform an upgrade of the control plane."}],"source_content_type":"text/x-yaml","patch_set":34,"id":"3f79a3b5_65bb8de3","line":56,"range":{"start_line":56,"start_character":35,"end_line":56,"end_character":38},"updated":"2018-11-07 13:40:04.000000000","message":"Will still be overcloud-test.sh at this point.","commit_id":"12eae0d79338000cb9f529272f59b3e363a7bae1"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"8355d416da0c4995e039cdb6c10e6f99a7dc8e80","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    - block:"},{"line_number":54,"context_line":"        - name: Perform testing of the overcloud prior to upgrade"},{"line_number":55,"context_line":"          shell:"},{"line_number":56,"context_line":"            cmd: dev/overcloud-test.sh \u003e {{ logs_dir }}/ansible/overcloud-test-vm-pre-upgrade"},{"line_number":57,"context_line":"            chdir: \"{{ previous_kayobe_src_dir }}\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # Upgrade Kayobe, and use it to perform an upgrade of the control plane."}],"source_content_type":"text/x-yaml","patch_set":35,"id":"3f79a3b5_b4752388","line":56,"range":{"start_line":56,"start_character":31,"end_line":56,"end_character":35},"updated":"2018-11-09 14:39:01.000000000","message":"test-vm","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"e4e195b5774dff83c0a5f610d384ed830df516dc","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    - block:"},{"line_number":54,"context_line":"        - name: Perform testing of the overcloud prior to upgrade"},{"line_number":55,"context_line":"          shell:"},{"line_number":56,"context_line":"            cmd: dev/overcloud-test.sh \u003e {{ logs_dir }}/ansible/overcloud-test-vm-pre-upgrade"},{"line_number":57,"context_line":"            chdir: \"{{ previous_kayobe_src_dir }}\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # Upgrade Kayobe, and use it to perform an upgrade of the control plane."}],"source_content_type":"text/x-yaml","patch_set":35,"id":"3f79a3b5_c3446b51","line":56,"range":{"start_line":56,"start_character":31,"end_line":56,"end_character":35},"in_reply_to":"3f79a3b5_8ffd4672","updated":"2018-11-14 09:10:23.000000000","message":"Ah, that\u0027s true. We can switch to test-vm later.","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"},{"author":{"_account_id":28048,"name":"Will Szumski","email":"will@stackhpc.com","username":"jovial"},"change_message_id":"666a801a376d03c858a96de8aa4c57fb3a0115e1","unresolved":false,"context_lines":[{"line_number":53,"context_line":"    - block:"},{"line_number":54,"context_line":"        - name: Perform testing of the overcloud prior to upgrade"},{"line_number":55,"context_line":"          shell:"},{"line_number":56,"context_line":"            cmd: dev/overcloud-test.sh \u003e {{ logs_dir }}/ansible/overcloud-test-vm-pre-upgrade"},{"line_number":57,"context_line":"            chdir: \"{{ previous_kayobe_src_dir }}\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        # Upgrade Kayobe, and use it to perform an upgrade of the control plane."}],"source_content_type":"text/x-yaml","patch_set":35,"id":"3f79a3b5_8ffd4672","line":56,"range":{"start_line":56,"start_character":31,"end_line":56,"end_character":35},"in_reply_to":"3f79a3b5_b4752388","updated":"2018-11-13 14:54:46.000000000","message":"In the previous release it is overcloud-test.sh. I wonder if we should keep backwards compatibility?","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"}],"playbooks/kayobe-seed-base/overrides.yml.j2":[{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"8355d416da0c4995e039cdb6c10e6f99a7dc8e80","unresolved":false,"context_lines":[{"line_number":8,"context_line":"kolla_ansible_source_url: \"{{ ansible_env.PWD ~ \u0027/\u0027 ~ zuul.projects[\u0027git.openstack.org/openstack/kolla-ansible\u0027].src_dir }}\""},{"line_number":9,"context_line":"kolla_ansible_source_version: \"{{ zuul.projects[\u0027git.openstack.org/openstack/kolla-ansible\u0027].checkout }}\""},{"line_number":10,"context_line":"kolla_upper_constraints_file: \"/tmp/upper-constraints.txt\""},{"line_number":11,"context_line":"kolla_openstack_logging_debug: True"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"# NOTE(mgoddard): We\u0027re using a cirros image, which doesn\u0027t require the"},{"line_number":14,"context_line":"# resolv.conf work around used for CentOS."}],"source_content_type":"text/x-jinja2","patch_set":35,"id":"3f79a3b5_3489136f","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":35},"updated":"2018-11-09 14:39:01.000000000","message":"Add this to kayobe-overcloud-upgrade-base for consistency.","commit_id":"8062ac7d7a9acb109042cf8f67ac3213fd50439a"},{"author":{"_account_id":28022,"name":"Bharat Kunwar","email":"brtknr@bath.edu","username":"brtknr"},"change_message_id":"9359c5ab21cddc64b815ceacce2b36b121647b06","unresolved":false,"context_lines":[{"line_number":8,"context_line":"kolla_ansible_source_url: \"{{ ansible_env.PWD ~ \u0027/\u0027 ~ zuul.projects[\u0027git.openstack.org/openstack/kolla-ansible\u0027].src_dir }}\""},{"line_number":9,"context_line":"kolla_ansible_source_version: \"{{ zuul.projects[\u0027git.openstack.org/openstack/kolla-ansible\u0027].checkout }}\""},{"line_number":10,"context_line":"kolla_upper_constraints_file: \"/tmp/upper-constraints.txt\""},{"line_number":11,"context_line":"kolla_openstack_logging_debug: True"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"# NOTE(mgoddard): We\u0027re using a cirros image, which doesn\u0027t require the"},{"line_number":14,"context_line":"# resolv.conf work around used for CentOS."}],"source_content_type":"text/x-jinja2","patch_set":36,"id":"3f79a3b5_cab6cc27","line":11,"range":{"start_line":11,"start_character":31,"end_line":11,"end_character":35},"updated":"2018-11-13 15:12:48.000000000","message":"I think this is supposed to be \u0027true\u0027","commit_id":"c316b78898ebb041b84111dc4c058c076fbd8d2d"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"23e74b0693f325ffe90aedbc0dae1269c969d904","unresolved":false,"context_lines":[{"line_number":8,"context_line":"kolla_ansible_source_url: \"{{ ansible_env.PWD ~ \u0027/\u0027 ~ zuul.projects[\u0027git.openstack.org/openstack/kolla-ansible\u0027].src_dir }}\""},{"line_number":9,"context_line":"kolla_ansible_source_version: \"{{ zuul.projects[\u0027git.openstack.org/openstack/kolla-ansible\u0027].checkout }}\""},{"line_number":10,"context_line":"kolla_upper_constraints_file: \"/tmp/upper-constraints.txt\""},{"line_number":11,"context_line":"kolla_openstack_logging_debug: True"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"# NOTE(mgoddard): We\u0027re using a cirros image, which doesn\u0027t require the"},{"line_number":14,"context_line":"# resolv.conf work around used for CentOS."}],"source_content_type":"text/x-jinja2","patch_set":36,"id":"3f79a3b5_83c3d38c","line":11,"range":{"start_line":11,"start_character":31,"end_line":11,"end_character":35},"in_reply_to":"3f79a3b5_cab6cc27","updated":"2018-11-14 09:19:34.000000000","message":"Ansible accepts either","commit_id":"c316b78898ebb041b84111dc4c058c076fbd8d2d"}]}
