)]}'
{"roles/create-reproducer-script/templates/reproducer-quickstart.sh.j2":[{"author":{"_account_id":8449,"name":"Marios Andreou","email":"marios.andreou@gmail.com","username":"marios"},"change_message_id":"880f715faeda4bfd4cee2deaa8899c036c1abc2b","unresolved":false,"context_lines":[{"line_number":90,"context_line":"            shift"},{"line_number":91,"context_line":"            ;;"},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"        --workspace|-w)"},{"line_number":94,"context_line":"            WORKSPACE\u003d$(realpath $2)"},{"line_number":95,"context_line":"            shift"},{"line_number":96,"context_line":"            ;;"},{"line_number":97,"context_line":""}],"source_content_type":"text/x-jinja2","patch_set":1,"id":"5f7c97a3_ded15efa","line":94,"range":{"start_line":93,"start_character":19,"end_line":94,"end_character":24},"updated":"2018-07-02 14:56:51.000000000","message":"woops :D","commit_id":"a63bc216f7dd9644a6e68b9271f1635c2f412b89"},{"author":{"_account_id":8449,"name":"Marios Andreou","email":"marios.andreou@gmail.com","username":"marios"},"change_message_id":"13cf82b6cffaf06405250f9909b64c3302386af2","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    case \"$1\" in"},{"line_number":79,"context_line":"        --workspace|-w)"},{"line_number":80,"context_line":"            WORKSPACE\u003d$(realpath $2)"},{"line_number":81,"context_line":"            # make sure workspace exists"},{"line_number":82,"context_line":"            set +e"},{"line_number":83,"context_line":"            ws_path\u003d$2"},{"line_number":84,"context_line":"            WORKSPACE\u003d$(realpath $ws_path)"},{"line_number":85,"context_line":"            set -e"},{"line_number":86,"context_line":"            if [[ -z $WORKSPACE ]] ; then"},{"line_number":87,"context_line":"                mkdir -p $ws_path || true"},{"line_number":88,"context_line":"                WORKSPACE\u003d$(realpath $ws_path)"},{"line_number":89,"context_line":"            fi"},{"line_number":90,"context_line":"            shift"},{"line_number":91,"context_line":"            ;;"},{"line_number":92,"context_line":""}],"source_content_type":"text/x-jinja2","patch_set":2,"id":"5f7c97a3_1e1fd6b8","line":89,"range":{"start_line":81,"start_character":12,"end_line":89,"end_character":14},"updated":"2018-07-02 14:59:27.000000000","message":"so the issue I have is, running this on my laptop after sourcing my rdo cloud overcloudrc:\n\n\n\ntesting on laptop like \n[m@192 reproducer]$ bash -x reproducer-quickstart.sh --workspace ~/.quickstart_rdo_cloudfoo/bar \\ --create-virtualenv true --remove-stacks-keypairs true --nodestack-prefix repro_rdocloud\n...\n\n\nrealpath: /home/m/.quickstart_rdo_cloudfoo/bar: No such file or directory\n+ WORKSPACE\u003d","commit_id":"a33fb272181d57bca61eeeae2fa94b633d1324d3"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"a9ef2149a3f8ef1cf0e8859c5b071096e2cc95e0","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    case \"$1\" in"},{"line_number":79,"context_line":"        --workspace|-w)"},{"line_number":80,"context_line":"            WORKSPACE\u003d$(realpath $2)"},{"line_number":81,"context_line":"            # make sure workspace exists"},{"line_number":82,"context_line":"            set +e"},{"line_number":83,"context_line":"            ws_path\u003d$2"},{"line_number":84,"context_line":"            WORKSPACE\u003d$(realpath $ws_path)"},{"line_number":85,"context_line":"            set -e"},{"line_number":86,"context_line":"            if [[ -z $WORKSPACE ]] ; then"},{"line_number":87,"context_line":"                mkdir -p $ws_path || true"},{"line_number":88,"context_line":"                WORKSPACE\u003d$(realpath $ws_path)"},{"line_number":89,"context_line":"            fi"},{"line_number":90,"context_line":"            shift"},{"line_number":91,"context_line":"            ;;"},{"line_number":92,"context_line":""}],"source_content_type":"text/x-jinja2","patch_set":2,"id":"5f7c97a3_29be0364","line":89,"range":{"start_line":81,"start_character":12,"end_line":89,"end_character":14},"in_reply_to":"5f7c97a3_1e1fd6b8","updated":"2018-07-03 12:56:00.000000000","message":"I\u0027m on the fence about this change. I am not opposed to checking in general but I am not sure we nee to go so far in something like the reproducer.\nThere is an error but the error is clear.","commit_id":"a33fb272181d57bca61eeeae2fa94b633d1324d3"},{"author":{"_account_id":8449,"name":"Marios Andreou","email":"marios.andreou@gmail.com","username":"marios"},"change_message_id":"7ff4b9367b8b4482221fae0b135a9b5c739f9490","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    case \"$1\" in"},{"line_number":79,"context_line":"        --workspace|-w)"},{"line_number":80,"context_line":"            WORKSPACE\u003d$(realpath $2)"},{"line_number":81,"context_line":"            # make sure workspace exists"},{"line_number":82,"context_line":"            set +e"},{"line_number":83,"context_line":"            ws_path\u003d$2"},{"line_number":84,"context_line":"            WORKSPACE\u003d$(realpath $ws_path)"},{"line_number":85,"context_line":"            set -e"},{"line_number":86,"context_line":"            if [[ -z $WORKSPACE ]] ; then"},{"line_number":87,"context_line":"                mkdir -p $ws_path || true"},{"line_number":88,"context_line":"                WORKSPACE\u003d$(realpath $ws_path)"},{"line_number":89,"context_line":"            fi"},{"line_number":90,"context_line":"            shift"},{"line_number":91,"context_line":"            ;;"},{"line_number":92,"context_line":""}],"source_content_type":"text/x-jinja2","patch_set":2,"id":"5f7c97a3_33a5fb48","line":89,"range":{"start_line":81,"start_character":12,"end_line":89,"end_character":14},"in_reply_to":"5f7c97a3_29be0364","updated":"2018-07-04 12:50:37.000000000","message":"well, i\u0027ll try and make the case for it then. In short it was very easy to hit, i.e. i followed https://docs.openstack.org/tripleo-docs/latest/contributor/reproduce-ci.html#how-to-execute-the-reproducer-quickstart-script \n\nso i grabbed a reproducer.sh from a job, got my virthost and ran it. and if you use a workspace that doesn\u0027t exist, it fails. The bug is legit, if you do \u0027realpath foo\u0027 on some non existant path it fails. We *do* create the workspace path, but that comes later in line 220. The code that fails is in this \u0027argparse\u0027 function.\n\nmaybe we need to make the fix simpler? perhaps not try to create the path and just stop using realpath here (or it fails)","commit_id":"a33fb272181d57bca61eeeae2fa94b633d1324d3"},{"author":{"_account_id":8449,"name":"Marios Andreou","email":"marios.andreou@gmail.com","username":"marios"},"change_message_id":"918bac6b8106987ea6b8fd2d3a8927a183a7fb4f","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    case \"$1\" in"},{"line_number":79,"context_line":"        --workspace|-w)"},{"line_number":80,"context_line":"            # realpath fails if /some/path doesn\u0027t exist. It is created l8r"},{"line_number":81,"context_line":"            WORKSPACE\u003d$(realpath $2 || echo -n $2)"},{"line_number":82,"context_line":"            shift"},{"line_number":83,"context_line":"            ;;"},{"line_number":84,"context_line":""}],"source_content_type":"text/x-jinja2","patch_set":3,"id":"5f7c97a3_6cedbf8c","line":81,"updated":"2018-07-05 11:10:28.000000000","message":"what do you think of this way then @rlandy? \n\nmuch simpler, just don\u0027t fail and nothing else. it gets created later anyway","commit_id":"16dd579b9f027ac06d91965300e6644a3c54fafb"},{"author":{"_account_id":8449,"name":"Marios Andreou","email":"marios.andreou@gmail.com","username":"marios"},"change_message_id":"c9ea4d7573d04d893c37d40ad56260f4f6a5c873","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    case \"$1\" in"},{"line_number":79,"context_line":"        --workspace|-w)"},{"line_number":80,"context_line":"            # realpath fails if /some/path doesn\u0027t exist. It is created l8r"},{"line_number":81,"context_line":"            WORKSPACE\u003d$(realpath $2 || echo -n $2)"},{"line_number":82,"context_line":"            shift"},{"line_number":83,"context_line":"            ;;"},{"line_number":84,"context_line":""}],"source_content_type":"text/x-jinja2","patch_set":3,"id":"5f7c97a3_c0fc940d","line":81,"in_reply_to":"5f7c97a3_660153b5","updated":"2018-07-20 07:01:57.000000000","message":"thanks for reviewing and sorry I didn\u0027t reply to your comment until after this was +Ad (though not merged yet :))\n\nmy v1 was checking and trying to create with mkdir -p as you say but feedback was not favourable :) and I agree it was too much. I think you aren\u0027t suggesting the same as v1 but rather just to create the directory.\n\nIn any case so we can just simply guard here. No need to duplicate the creation, it happens line 194 below anyway https://review.openstack.org/#/c/579587/1..3/roles/create-reproducer-script/templates/reproducer-quickstart.sh.j2@194","commit_id":"16dd579b9f027ac06d91965300e6644a3c54fafb"},{"author":{"_account_id":24162,"name":"Sorin Sbârnea","display_name":"zbr","email":"ssbarnea@redhat.com","username":"ssbarnea","status":"do not feed the troll 🥕"},"change_message_id":"5b49018c6cbc14f2d6df52ce250f7de3f29b2a3c","unresolved":false,"context_lines":[{"line_number":78,"context_line":"    case \"$1\" in"},{"line_number":79,"context_line":"        --workspace|-w)"},{"line_number":80,"context_line":"            # realpath fails if /some/path doesn\u0027t exist. It is created l8r"},{"line_number":81,"context_line":"            WORKSPACE\u003d$(realpath $2 || echo -n $2)"},{"line_number":82,"context_line":"            shift"},{"line_number":83,"context_line":"            ;;"},{"line_number":84,"context_line":""}],"source_content_type":"text/x-jinja2","patch_set":3,"id":"5f7c97a3_660153b5","line":81,"in_reply_to":"5f7c97a3_6cedbf8c","updated":"2018-07-18 10:26:12.000000000","message":"How about just doing \"mkdir -p $2\" before the line?\nI would find it easier to read, not to mention that it would avoid the bug of not resolving the path when it does not exist.\n\nExample: --workspace xxx  would fail to use a fully qualified path with this change.\n\nJust running mkdir -p should me enough.","commit_id":"16dd579b9f027ac06d91965300e6644a3c54fafb"}]}
