)]}'
{"test-ansible-env-prep.sh":[{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"df3580cf16eb0e7229ac29a402066974a270857c","unresolved":false,"context_lines":[{"line_number":41,"context_line":"export ANSIBLE_ROLE_DIR\u003d\"${TESTING_HOME}/.ansible/roles\""},{"line_number":42,"context_line":"export ANSIBLE_ROLE_REQUIREMENTS_PATH\u003d\"${WORKING_DIR}/tests/ansible-role-requirements.yml\""},{"line_number":43,"context_line":"export COMMON_TESTS_PATH\u003d\"${WORKING_DIR}/tests/common\""},{"line_number":44,"context_line":"export BOWLING_BALL_DIR\u003d\"${WORKING_DIR}/bowling_ball\""},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"echo \"TESTING_HOME: ${TESTING_HOME}\""},{"line_number":47,"context_line":"echo \"WORKING_DIR: ${WORKING_DIR}\""}],"source_content_type":"text/x-sh","patch_set":1,"id":"ff0f0b1f_3bfb8e79","line":44,"range":{"start_line":44,"start_character":40,"end_line":44,"end_character":52},"updated":"2017-05-23 18:12:50.000000000","message":"This directory will need to be added to .gitignore.","commit_id":"ad1bb94d4bfc536ff6d974ccd33fbc52b2c18f50"},{"author":{"_account_id":12892,"name":"Nolan Brubaker","email":"nolan.brubaker@rackspace.com","username":"nrb"},"change_message_id":"c74b3b4e7a7a2cc1daca07c270efb6d21b0fb202","unresolved":false,"context_lines":[{"line_number":41,"context_line":"export ANSIBLE_ROLE_DIR\u003d\"${TESTING_HOME}/.ansible/roles\""},{"line_number":42,"context_line":"export ANSIBLE_ROLE_REQUIREMENTS_PATH\u003d\"${WORKING_DIR}/tests/ansible-role-requirements.yml\""},{"line_number":43,"context_line":"export COMMON_TESTS_PATH\u003d\"${WORKING_DIR}/tests/common\""},{"line_number":44,"context_line":"export BOWLING_BALL_DIR\u003d\"${WORKING_DIR}/bowling_ball\""},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"echo \"TESTING_HOME: ${TESTING_HOME}\""},{"line_number":47,"context_line":"echo \"WORKING_DIR: ${WORKING_DIR}\""}],"source_content_type":"text/x-sh","patch_set":1,"id":"ff0f0b1f_7e6a14ed","line":44,"range":{"start_line":44,"start_character":40,"end_line":44,"end_character":52},"in_reply_to":"ff0f0b1f_3bfb8e79","updated":"2017-05-23 18:40:24.000000000","message":"In this tree? None of the other directories are there currently.","commit_id":"ad1bb94d4bfc536ff6d974ccd33fbc52b2c18f50"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"e918f56ebef7f5329d6c59cc26919798b4c3ee59","unresolved":false,"context_lines":[{"line_number":41,"context_line":"export ANSIBLE_ROLE_DIR\u003d\"${TESTING_HOME}/.ansible/roles\""},{"line_number":42,"context_line":"export ANSIBLE_ROLE_REQUIREMENTS_PATH\u003d\"${WORKING_DIR}/tests/ansible-role-requirements.yml\""},{"line_number":43,"context_line":"export COMMON_TESTS_PATH\u003d\"${WORKING_DIR}/tests/common\""},{"line_number":44,"context_line":"export BOWLING_BALL_DIR\u003d\"${WORKING_DIR}/bowling_ball\""},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"echo \"TESTING_HOME: ${TESTING_HOME}\""},{"line_number":47,"context_line":"echo \"WORKING_DIR: ${WORKING_DIR}\""}],"source_content_type":"text/x-sh","patch_set":1,"id":"ff0f0b1f_3e0ffc37","line":44,"range":{"start_line":44,"start_character":40,"end_line":44,"end_character":52},"in_reply_to":"ff0f0b1f_7e6a14ed","updated":"2017-05-23 18:43:41.000000000","message":"tests/common is the only other folder that this is cloning into the same git tree and it\u0027s in .gitignore\n\nthe .gitignore from this repo will be automatically synchronised to all the other repositories by the proposal bot (soon)","commit_id":"ad1bb94d4bfc536ff6d974ccd33fbc52b2c18f50"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"df3580cf16eb0e7229ac29a402066974a270857c","unresolved":false,"context_lines":[{"line_number":83,"context_line":"clonemap:"},{"line_number":84,"context_line":"  - name: openstack/openstack-ansible-plugins"},{"line_number":85,"context_line":"    dest: ${ANSIBLE_PLUGIN_DIR}"},{"line_number":86,"context_line":"EOF"},{"line_number":87,"context_line":""},{"line_number":88,"context_line":"# If zuul-cloner is present, use it so that we"},{"line_number":89,"context_line":"# also include any dependent patches from the"}],"source_content_type":"text/x-sh","patch_set":1,"id":"ff0f0b1f_9b7f3adf","line":86,"updated":"2017-05-23 18:12:50.000000000","message":"Add this before EOF:\n  - name: openstack/openstack-ansible-ops\n     dest: ${BOWLING_BALL_DIR}","commit_id":"ad1bb94d4bfc536ff6d974ccd33fbc52b2c18f50"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"df3580cf16eb0e7229ac29a402066974a270857c","unresolved":false,"context_lines":[{"line_number":94,"context_line":"        --cache-dir /opt/git \\"},{"line_number":95,"context_line":"        --map ${TESTING_HOME}/plugins-clonemap.yaml \\"},{"line_number":96,"context_line":"        git://git.openstack.org \\"},{"line_number":97,"context_line":"        openstack/openstack-ansible-plugins"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"# Alternatively, use a simple git-clone. We do"},{"line_number":100,"context_line":"# not re-clone if the directory exists already"}],"source_content_type":"text/x-sh","patch_set":1,"id":"ff0f0b1f_bb631e42","line":97,"updated":"2017-05-23 18:12:50.000000000","message":"Add: openstack/openstack-ansible-ops","commit_id":"ad1bb94d4bfc536ff6d974ccd33fbc52b2c18f50"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"df3580cf16eb0e7229ac29a402066974a270857c","unresolved":false,"context_lines":[{"line_number":100,"context_line":"# not re-clone if the directory exists already"},{"line_number":101,"context_line":"# to prevent overwriting any local changes which"},{"line_number":102,"context_line":"# may have been made."},{"line_number":103,"context_line":"elif [[ ! -d \"${ANSIBLE_PLUGIN_DIR}\" ]]; then"},{"line_number":104,"context_line":""},{"line_number":105,"context_line":"    # The plugins repo doesn\u0027t need a clone, we can just"},{"line_number":106,"context_line":"    # symlink it."},{"line_number":107,"context_line":"    if [[ \"$(basename ${WORKING_DIR})\" \u003d\u003d \"openstack-ansible-plugins\" ]]; then"},{"line_number":108,"context_line":"        ln -s ${WORKING_DIR} \"${ANSIBLE_PLUGIN_DIR}\""},{"line_number":109,"context_line":"    else"},{"line_number":110,"context_line":"        git clone \\"},{"line_number":111,"context_line":"            https://git.openstack.org/openstack/openstack-ansible-plugins \\"},{"line_number":112,"context_line":"            \"${ANSIBLE_PLUGIN_DIR}\""},{"line_number":113,"context_line":"    fi"},{"line_number":114,"context_line":"fi"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"# Clean up the clonemap."},{"line_number":117,"context_line":"rm -f ${TESTING_HOME}/plugins-clonemap.yaml"}],"source_content_type":"text/x-sh","patch_set":1,"id":"ff0f0b1f_1bd9eaf1","line":114,"range":{"start_line":103,"start_character":0,"end_line":114,"end_character":2},"updated":"2017-05-23 18:12:50.000000000","message":"Adjust this to cater for the bowling ball directory and clone.","commit_id":"ad1bb94d4bfc536ff6d974ccd33fbc52b2c18f50"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"df3580cf16eb0e7229ac29a402066974a270857c","unresolved":false,"context_lines":[{"line_number":152,"context_line":""},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"# Check out the bowling ball directory for doing rolling tests."},{"line_number":155,"context_line":"# Don\u0027t clone the whole ops repo."},{"line_number":156,"context_line":"if [[ ! -d \"${BOWLING_BALL_DIR}\" ]]; then"},{"line_number":157,"context_line":"    mkdir -p \"${BOWLING_BALL_DIR}\""},{"line_number":158,"context_line":"    cd \"${BOWLING_BALL_DIR}\""}],"source_content_type":"text/x-sh","patch_set":1,"id":"ff0f0b1f_bb155e9e","line":155,"updated":"2017-05-23 18:12:50.000000000","message":"We\u0027ll want to make sure that we have cross-repo testing capabilities for this, so we should rather implement the clone within the plugins repo clone further up in this script.","commit_id":"ad1bb94d4bfc536ff6d974ccd33fbc52b2c18f50"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"96ce5bdd6deb292498a2af5569686d7106562424","unresolved":false,"context_lines":[{"line_number":97,"context_line":"        --cache-dir /opt/git \\"},{"line_number":98,"context_line":"        --map ${TESTING_HOME}/plugins-clonemap.yaml \\"},{"line_number":99,"context_line":"        git://git.openstack.org \\"},{"line_number":100,"context_line":"        openstack/openstack-ansible-plugins"},{"line_number":101,"context_line":"        openstack/openstack-ansible-ops"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"# Alternatively, use a simple git-clone. We do"}],"source_content_type":"text/x-sh","patch_set":2,"id":"ff0f0b1f_e3d8b253","line":100,"range":{"start_line":100,"start_character":8,"end_line":100,"end_character":43},"updated":"2017-05-24 10:48:09.000000000","message":"As this is one continuous CLI command, this needs a trailing \\","commit_id":"c1c33bd948e045a9770be5d8a021436cf3157759"},{"author":{"_account_id":6816,"name":"Jesse Pretorius","email":"jesse@odyssey4.me","username":"jesse-pretorius"},"change_message_id":"96ce5bdd6deb292498a2af5569686d7106562424","unresolved":false,"context_lines":[{"line_number":104,"context_line":"# not re-clone if the directory exists already"},{"line_number":105,"context_line":"# to prevent overwriting any local changes which"},{"line_number":106,"context_line":"# may have been made."},{"line_number":107,"context_line":"elif [[ ! -d \"${ANSIBLE_PLUGIN_DIR}\" || ! -d \"${OSA_OPS_DIR}\" ]]; then"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"    # The plugins repo doesn\u0027t need a clone, we can just"},{"line_number":110,"context_line":"    # symlink it."}],"source_content_type":"text/x-sh","patch_set":2,"id":"ff0f0b1f_23ea2ad7","line":107,"updated":"2017-05-24 10:48:09.000000000","message":"This will change behaviour if one is there and the other isn\u0027t - let\u0027s rather have them as two different conditional sets.","commit_id":"c1c33bd948e045a9770be5d8a021436cf3157759"}]}
