)]}'
{"devstack/lib/ironic":[{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"1e082393700b72a88a98ef8bed5a442ec5d427ed","unresolved":false,"context_lines":[{"line_number":140,"context_line":""},{"line_number":141,"context_line":"# These parameters describe which image will be used to provision a node in"},{"line_number":142,"context_line":"# tempest tests"},{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE:-}"},{"line_number":144,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":145,"context_line":"IRONIC_TEMPEST_PARTITION_IMAGE_NAME\u003d${IRONIC_TEMPEST_PARTITION_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":146,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"7aa08908_5d206049","line":143,"updated":"2016-06-18 06:36:55.000000000","message":"It is possible to set default value to unset \u0027\u0027 by trueorfalse function. L1189 is not needed in this case.\n\na\u003d$(trueorfalse \u0027\u0027 a); if [[ -z $a ]]; then echo \"Unset\"; fi\nUnset","commit_id":"721b76327de5aef8aaad036b27a6280e57999d45"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b91113e169449bbd454f3f806b6c4ee6d231f171","unresolved":false,"context_lines":[{"line_number":140,"context_line":""},{"line_number":141,"context_line":"# These parameters describe which image will be used to provision a node in"},{"line_number":142,"context_line":"# tempest tests"},{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE:-}"},{"line_number":144,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":145,"context_line":"IRONIC_TEMPEST_PARTITION_IMAGE_NAME\u003d${IRONIC_TEMPEST_PARTITION_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":146,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"3aaa91ec_1c877662","line":143,"in_reply_to":"7aa08908_5d206049","updated":"2016-06-22 10:17:11.000000000","message":"Good stuff, thanks :)","commit_id":"721b76327de5aef8aaad036b27a6280e57999d45"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"1e082393700b72a88a98ef8bed5a442ec5d427ed","unresolved":false,"context_lines":[{"line_number":142,"context_line":"# tempest tests"},{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE:-}"},{"line_number":144,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":145,"context_line":"IRONIC_TEMPEST_PARTITION_IMAGE_NAME\u003d${IRONIC_TEMPEST_PARTITION_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"# NOTE(jroll) this needs to be updated when stable branches are cut"},{"line_number":148,"context_line":"IPA_DOWNLOAD_BRANCH\u003d${IPA_DOWNLOAD_BRANCH:-master}"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"7aa08908_fdd14ccd","line":145,"updated":"2016-06-18 06:36:55.000000000","message":"Why not just allow to set image name via config option like:\nIRONIC_TEMPEST_IMAGE_NAME\u003d${IRONIC_TEMPEST_IMAGE_NAME:-$IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME}","commit_id":"721b76327de5aef8aaad036b27a6280e57999d45"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b91113e169449bbd454f3f806b6c4ee6d231f171","unresolved":false,"context_lines":[{"line_number":142,"context_line":"# tempest tests"},{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE:-}"},{"line_number":144,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":145,"context_line":"IRONIC_TEMPEST_PARTITION_IMAGE_NAME\u003d${IRONIC_TEMPEST_PARTITION_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"# NOTE(jroll) this needs to be updated when stable branches are cut"},{"line_number":148,"context_line":"IPA_DOWNLOAD_BRANCH\u003d${IPA_DOWNLOAD_BRANCH:-master}"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"3aaa91ec_1c52d613","line":145,"in_reply_to":"5a9d85d2_d04b19af","updated":"2016-06-22 10:17:11.000000000","message":"The problem is that DEFAULT_IMAGE_NAME setting logic is incorrect currently (see https://review.openstack.org/326062) so what I was intending to do is add it here and remove from stackrc.","commit_id":"721b76327de5aef8aaad036b27a6280e57999d45"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b91113e169449bbd454f3f806b6c4ee6d231f171","unresolved":false,"context_lines":[{"line_number":142,"context_line":"# tempest tests"},{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE:-}"},{"line_number":144,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":145,"context_line":"IRONIC_TEMPEST_PARTITION_IMAGE_NAME\u003d${IRONIC_TEMPEST_PARTITION_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"# NOTE(jroll) this needs to be updated when stable branches are cut"},{"line_number":148,"context_line":"IPA_DOWNLOAD_BRANCH\u003d${IPA_DOWNLOAD_BRANCH:-master}"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"3aaa91ec_fc554ac6","line":145,"in_reply_to":"7aa08908_fdd14ccd","updated":"2016-06-22 10:17:11.000000000","message":"I\u0027d like it to be more clear from the variable name.","commit_id":"721b76327de5aef8aaad036b27a6280e57999d45"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"894f3fb6be33a5934683b6e75c85b16eefc858ca","unresolved":false,"context_lines":[{"line_number":142,"context_line":"# tempest tests"},{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE:-}"},{"line_number":144,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":145,"context_line":"IRONIC_TEMPEST_PARTITION_IMAGE_NAME\u003d${IRONIC_TEMPEST_PARTITION_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"# NOTE(jroll) this needs to be updated when stable branches are cut"},{"line_number":148,"context_line":"IPA_DOWNLOAD_BRANCH\u003d${IPA_DOWNLOAD_BRANCH:-master}"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"5a9d85d2_d04b19af","line":145,"in_reply_to":"7aa08908_fdd14ccd","updated":"2016-06-20 16:27:30.000000000","message":"You can already override the tempest image in local.conf using:\n\nDEFAULT_IMAGE_NAME\u003d\n\nWe can also work out whether an image is a whole disk image or a partition image by querying glance.\n\nI suggest that we read DEFAULT_IMAGE_NAME and query glance to determine if the configured image matches the configured Ironic BM VM and if not we can die or just change the Ironic VM settings to something else with a warning.","commit_id":"721b76327de5aef8aaad036b27a6280e57999d45"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"1e082393700b72a88a98ef8bed5a442ec5d427ed","unresolved":false,"context_lines":[{"line_number":1177,"context_line":"    iniset $TEMPEST_CONFIG compute-feature-enabled disk_config False"},{"line_number":1178,"context_line":""},{"line_number":1179,"context_line":"    # Ironic can do both partition and full disk images"},{"line_number":1180,"context_line":"    if [[ -z \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" ]]; then"},{"line_number":1181,"context_line":"        # If IRONIC_TEMPEST_WHOLE_DISK_IMAGE was not set in localrc,"},{"line_number":1182,"context_line":"        # pick an image based on the requested ephemeral size"},{"line_number":1183,"context_line":"        if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 ]]; then"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"7aa08908_1d56d85d","line":1180,"updated":"2016-06-18 06:36:55.000000000","message":"it may be combined to sibngle line with L1183\nif [[ -z \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u0026\u0026 \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 ]]","commit_id":"721b76327de5aef8aaad036b27a6280e57999d45"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b91113e169449bbd454f3f806b6c4ee6d231f171","unresolved":false,"context_lines":[{"line_number":1177,"context_line":"    iniset $TEMPEST_CONFIG compute-feature-enabled disk_config False"},{"line_number":1178,"context_line":""},{"line_number":1179,"context_line":"    # Ironic can do both partition and full disk images"},{"line_number":1180,"context_line":"    if [[ -z \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" ]]; then"},{"line_number":1181,"context_line":"        # If IRONIC_TEMPEST_WHOLE_DISK_IMAGE was not set in localrc,"},{"line_number":1182,"context_line":"        # pick an image based on the requested ephemeral size"},{"line_number":1183,"context_line":"        if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 ]]; then"}],"source_content_type":"application/x-shellscript","patch_set":5,"id":"3aaa91ec_3c5eb2e9","line":1180,"in_reply_to":"7aa08908_1d56d85d","updated":"2016-06-22 10:17:11.000000000","message":"Right, but we should set IRONIC_TEMPEST_WHOLE_DISK_IMAGE only if it is not set already. if we just do\n\n if [[ -z \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u0026\u0026 \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 ]]; then\n   IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d\"True\"\n else\n   IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d\"False\"\n fi\n\nit will be incorrect.","commit_id":"721b76327de5aef8aaad036b27a6280e57999d45"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"1b349573b98cbd7fce8eb51f1d52b1bf1df4a70a","unresolved":false,"context_lines":[{"line_number":142,"context_line":"# tempest tests"},{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse \u0027\u0027 IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":144,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":145,"context_line":"IRONIC_TEMPEST_PARTITION_IMAGE_NAME\u003d${IRONIC_TEMPEST_PARTITION_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"# NOTE(jroll) this needs to be updated when stable branches are cut"},{"line_number":148,"context_line":"IPA_DOWNLOAD_BRANCH\u003d${IPA_DOWNLOAD_BRANCH:-master}"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"3aaa91ec_a504467e","line":145,"updated":"2016-06-22 10:57:37.000000000","message":"IRONIC_DEFAULT_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_DEFAULT_WHOLE_DISK_IMAGE)\nif [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 ]] || [[ \"$IRONIC_DEFAULT_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then\n    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}\nelse:\n    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}\nfi\n\nThen in the function below simply: \n\n    local image_uuid\n    image_uuid\u003d$(openstack image show $IRONIC_IMAGE_NAME -f value -c id)\n    iniset $TEMPEST_CONFIG compute image_ref $image_uuid\n    iniset $TEMPEST_CONFIG compute image_ref_alt $image_uuid\n\nand once the test-config phase merges we can just remove the logic in the function below and just set DEFAULT_IMAGE_NAME to IRONIC_IMAGE_NAME and the tempest devstack plugin should handle the rest.","commit_id":"d8f98f1fa6db50e8a0520b15f5835ee806b31f5b"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b718f1615ee6d15d55f1ace2057d1089855cdd99","unresolved":false,"context_lines":[{"line_number":142,"context_line":"# tempest tests"},{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse \u0027\u0027 IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":144,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME\u003d${IRONIC_TEMPEST_WHOLE_DISK_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":145,"context_line":"IRONIC_TEMPEST_PARTITION_IMAGE_NAME\u003d${IRONIC_TEMPEST_PARTITION_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"# NOTE(jroll) this needs to be updated when stable branches are cut"},{"line_number":148,"context_line":"IPA_DOWNLOAD_BRANCH\u003d${IPA_DOWNLOAD_BRANCH:-master}"}],"source_content_type":"application/x-shellscript","patch_set":6,"id":"3aaa91ec_dcb68789","line":145,"in_reply_to":"3aaa91ec_a504467e","updated":"2016-06-22 12:13:05.000000000","message":"Looks better indeed, thanks Sam!","commit_id":"d8f98f1fa6db50e8a0520b15f5835ee806b31f5b"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"0297951691d10ac4d4e27e1a8d4ff6a10908bc08","unresolved":false,"context_lines":[{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":144,"context_line":"if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"},{"line_number":145,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":146,"context_line":"else:"},{"line_number":147,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":148,"context_line":"fi"},{"line_number":149,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":7,"id":"3aaa91ec_58873c61","line":146,"range":{"start_line":146,"start_character":4,"end_line":146,"end_character":5},"updated":"2016-06-22 13:47:49.000000000","message":"Whoops, too much python ;)","commit_id":"014f385475e0c9a829e5df305eadf517d74b6a45"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"ddfdbfb968d488cc4eb4b4d1dc0fcf6e1f447be8","unresolved":false,"context_lines":[{"line_number":143,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":144,"context_line":"if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"},{"line_number":145,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":146,"context_line":"else:"},{"line_number":147,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-uec}"},{"line_number":148,"context_line":"fi"},{"line_number":149,"context_line":""}],"source_content_type":"application/x-shellscript","patch_set":7,"id":"3aaa91ec_58bf3cd0","line":146,"range":{"start_line":146,"start_character":4,"end_line":146,"end_character":5},"in_reply_to":"3aaa91ec_58873c61","updated":"2016-06-22 13:51:24.000000000","message":"Yay, two silly mistakes in 3 lines of bash :)","commit_id":"014f385475e0c9a829e5df305eadf517d74b6a45"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"7b7c56ba868615cd788cff854ae2036390783c94","unresolved":false,"context_lines":[{"line_number":149,"context_line":"IRONIC_DEPLOY_ISO\u003d${IRONIC_DEPLOY_ISO:-}"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"# These parameters describe which image will be used to provision a node in"},{"line_number":152,"context_line":"# tempest tests"},{"line_number":153,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":154,"context_line":"if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"},{"line_number":155,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"}],"source_content_type":"application/x-shellscript","patch_set":9,"id":"9a89bdaa_a0015408","line":152,"updated":"2016-09-07 13:28:46.000000000","message":"I think we might need additional conditional here, for cases when downloading the default images is disabled:\n\n    if [[ \"$DOWNLOAD_DEFAULT_IMAGES\" \u003d\u003d \"false\" ]]; then\n        IRONIC_IMAGE_NAME \u003d ${IRONIC_IMAGE_NAME:-$DEFAULT_IMAGE_NAME}\n    elif [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then\n        ...","commit_id":"5beb6cba8327836494bbca7e60f13065fef2f061"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"489e8f201db758e2cae3754e556721399012799c","unresolved":false,"context_lines":[{"line_number":149,"context_line":"IRONIC_DEPLOY_ISO\u003d${IRONIC_DEPLOY_ISO:-}"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"# These parameters describe which image will be used to provision a node in"},{"line_number":152,"context_line":"# tempest tests"},{"line_number":153,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":154,"context_line":"if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"},{"line_number":155,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"}],"source_content_type":"application/x-shellscript","patch_set":9,"id":"7a8ec9b2_31ec0f29","line":152,"in_reply_to":"7a8ec9b2_5312830a","updated":"2016-09-20 14:04:03.000000000","message":"Done","commit_id":"5beb6cba8327836494bbca7e60f13065fef2f061"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"4cc6218b5580c7a0ae14fa993d55a2d8a25294f9","unresolved":false,"context_lines":[{"line_number":149,"context_line":"IRONIC_DEPLOY_ISO\u003d${IRONIC_DEPLOY_ISO:-}"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"# These parameters describe which image will be used to provision a node in"},{"line_number":152,"context_line":"# tempest tests"},{"line_number":153,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":154,"context_line":"if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"},{"line_number":155,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"}],"source_content_type":"application/x-shellscript","patch_set":9,"id":"7a8ec9b2_5312830a","line":152,"in_reply_to":"7a8ec9b2_8013cf5b","updated":"2016-09-20 13:43:37.000000000","message":"For example in my devstack local.conf I do:\n\nIMAGE_URL\u003d\u003cpath to a server\u003e/ubuntu.qcow\nDOWNLOAD_DEFAULT_IMAGES\u003dFalse\nDEFAULT_IMAGE_NAME\u003dubuntu\n\nwhich makes devstack setup my custom ubuntu image as the default image. If we don\u0027t include the conditional I\u0027ve stated above then Ironic will still try to look for the cirros image and fail because it doesn\u0027t exist. Without it we will require that people always set IRONIC_IMAGE_NAME which shouldn\u0027t be the case.","commit_id":"5beb6cba8327836494bbca7e60f13065fef2f061"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b49a3273d212ad3482981e2b56bba08b3d2cdaf9","unresolved":false,"context_lines":[{"line_number":149,"context_line":"IRONIC_DEPLOY_ISO\u003d${IRONIC_DEPLOY_ISO:-}"},{"line_number":150,"context_line":""},{"line_number":151,"context_line":"# These parameters describe which image will be used to provision a node in"},{"line_number":152,"context_line":"# tempest tests"},{"line_number":153,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":154,"context_line":"if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"},{"line_number":155,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"}],"source_content_type":"application/x-shellscript","patch_set":9,"id":"7a8ec9b2_8013cf5b","line":152,"in_reply_to":"9a89bdaa_a0015408","updated":"2016-09-20 13:36:34.000000000","message":"Not sure why it\u0027s needed. if DOWNLOAD_DEFAULT_IMAGES is false DEFAULT_IMAGE_NAME will not be set to some default value by devstack, so why not just use whatever already is present in IRONIC_IMAGE_NAME?","commit_id":"5beb6cba8327836494bbca7e60f13065fef2f061"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"93ba4b05b8266621673064c0b91cba0ff432f63b","unresolved":false,"context_lines":[{"line_number":150,"context_line":""},{"line_number":151,"context_line":"# These parameters describe which image will be used to provision a node in"},{"line_number":152,"context_line":"# tempest tests"},{"line_number":153,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":154,"context_line":"if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"},{"line_number":155,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":156,"context_line":"else"}],"source_content_type":"application/x-shellscript","patch_set":9,"id":"9a89bdaa_1415e13e","line":153,"updated":"2016-09-07 13:26:55.000000000","message":"Let us rework this variable to stop relying on the implicit meaning of IRONIC_VM_EPHEMERAL_DISK, for example\n\n if [[ $IRONIC_VM_EPHEMERAL_DISK \u003d\u003d 0]]; then\n   IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003dTrue\n else\n   IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)","commit_id":"5beb6cba8327836494bbca7e60f13065fef2f061"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b49a3273d212ad3482981e2b56bba08b3d2cdaf9","unresolved":false,"context_lines":[{"line_number":150,"context_line":""},{"line_number":151,"context_line":"# These parameters describe which image will be used to provision a node in"},{"line_number":152,"context_line":"# tempest tests"},{"line_number":153,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":154,"context_line":"if [[ \"$IRONIC_VM_EPHEMERAL_DISK\" \u003d\u003d 0 || \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"},{"line_number":155,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-cirros-${CIRROS_VERSION}-x86_64-disk}"},{"line_number":156,"context_line":"else"}],"source_content_type":"application/x-shellscript","patch_set":9,"id":"7a8ec9b2_60f6c3fa","line":153,"in_reply_to":"9a89bdaa_1415e13e","updated":"2016-09-20 13:36:34.000000000","message":"More ifs :( But yeah, maybe makes sense to do so. But what we should do the other way is, if IRONIC_TEMPEST_WHOLE_DISK_IMAGE is set to false we should not overwrite it even if IRONIC_VM_EPHEMERAL_DISK is 0.","commit_id":"5beb6cba8327836494bbca7e60f13065fef2f061"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"4ce6ce300529bd1ab6c81dc1e6a20e1d42b66714","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003dTrue"},{"line_number":155,"context_line":"fi"},{"line_number":156,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":157,"context_line":"if [[ \"$DOWNLOAD_DEFAULT_IMAGES\" \u003d\u003d \"False\" ]]; then"},{"line_number":158,"context_line":"    # This is to allow people setting custom IMAGE_URLS to avoid changing their config"},{"line_number":159,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-$DEFAULT_IMAGE_NAME}"},{"line_number":160,"context_line":"elif [[ \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"}],"source_content_type":"application/x-shellscript","patch_set":12,"id":"7a8ec9b2_3def4b1f","line":157,"range":{"start_line":157,"start_character":6,"end_line":157,"end_character":43},"updated":"2016-09-21 11:17:39.000000000","message":"OK so this does not seem to work, as DOWNLOAD_DEFAULT_IMAGES is set to False afterwards here - https://github.com/openstack-dev/devstack/blob/d3fab7bfc16284a24a66f1724805c35535432fc0/stackrc#L672 so we don\u0027t know if it was set in config or in code. I think I\u0027ll remove it and you\u0027ll have to change your script to use IRONIC_IMAGE_NAME. Or maybe it\u0027s better to use the old DEFAULT_IMAGE_NAME variable instead of introducing IRONIC_IMAGE_NAME?","commit_id":"3be7668a9a8a364ed31159394f7114d2201c5118"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"53d429d0a82deb3010104f723c1a0be614ad334b","unresolved":false,"context_lines":[{"line_number":154,"context_line":"    IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003dTrue"},{"line_number":155,"context_line":"fi"},{"line_number":156,"context_line":"IRONIC_TEMPEST_WHOLE_DISK_IMAGE\u003d$(trueorfalse False IRONIC_TEMPEST_WHOLE_DISK_IMAGE)"},{"line_number":157,"context_line":"if [[ \"$DOWNLOAD_DEFAULT_IMAGES\" \u003d\u003d \"False\" ]]; then"},{"line_number":158,"context_line":"    # This is to allow people setting custom IMAGE_URLS to avoid changing their config"},{"line_number":159,"context_line":"    IRONIC_IMAGE_NAME\u003d${IRONIC_IMAGE_NAME:-$DEFAULT_IMAGE_NAME}"},{"line_number":160,"context_line":"elif [[ \"$IRONIC_TEMPEST_WHOLE_DISK_IMAGE\" \u003d\u003d \"True\" ]]; then"}],"source_content_type":"application/x-shellscript","patch_set":12,"id":"7a8ec9b2_a8cf977d","line":157,"range":{"start_line":157,"start_character":6,"end_line":157,"end_character":43},"in_reply_to":"7a8ec9b2_3def4b1f","updated":"2016-09-21 11:38:29.000000000","message":"It seems like we can\u0027t reuse DEFAULT_IMAGE_NAME as we also are not able to tell if was set manually in config or by devstack code, we need to know it as we should overwrite only if it was not set manually.","commit_id":"3be7668a9a8a364ed31159394f7114d2201c5118"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"e87a653ce2b9d26aa468df4cce2cacad7b1f632e","unresolved":false,"context_lines":[{"line_number":1423,"context_line":"    fi"},{"line_number":1424,"context_line":""},{"line_number":1425,"context_line":"    local image_uuid"},{"line_number":1426,"context_line":"    image_uuid\u003d$(openstack image show $IRONIC_IMAGE_NAME -f value -c id)"},{"line_number":1427,"context_line":"    iniset $TEMPEST_CONFIG compute image_ref $image_uuid"},{"line_number":1428,"context_line":"    iniset $TEMPEST_CONFIG compute image_ref_alt $image_uuid"},{"line_number":1429,"context_line":"}"}],"source_content_type":"application/x-shellscript","patch_set":13,"id":"5a8bc5a2_24d95822","line":1426,"updated":"2016-09-22 15:00:21.000000000","message":"nit: probably we would like to fail here imiddiately when image_uuid is not set:\ndie_if_not_set $LINENO image_uuid \"Failed to get uuid for $IRONIC_IMAGE_NAME image.\"","commit_id":"106f4de5b50affb5b87a81a23ba0567f11bccd5b"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"362ff39242b5b45e3b184eacbb55e7ebb507a448","unresolved":false,"context_lines":[{"line_number":1423,"context_line":"    fi"},{"line_number":1424,"context_line":""},{"line_number":1425,"context_line":"    local image_uuid"},{"line_number":1426,"context_line":"    image_uuid\u003d$(openstack image show $IRONIC_IMAGE_NAME -f value -c id)"},{"line_number":1427,"context_line":"    iniset $TEMPEST_CONFIG compute image_ref $image_uuid"},{"line_number":1428,"context_line":"    iniset $TEMPEST_CONFIG compute image_ref_alt $image_uuid"},{"line_number":1429,"context_line":"}"}],"source_content_type":"application/x-shellscript","patch_set":13,"id":"5a8bc5a2_2404f815","line":1426,"in_reply_to":"5a8bc5a2_24d95822","updated":"2016-09-22 15:04:59.000000000","message":"Oops, missed this one, I\u0027ll do that in a followup I think if it is merged as is.","commit_id":"106f4de5b50affb5b87a81a23ba0567f11bccd5b"}]}
