)]}'
{"tools/use_tempest_lib.sh":[{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"585147647f5b60c60433a678f8cb9dc27e6d3697","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#!/bin/bash"},{"line_number":2,"context_line":"#"},{"line_number":3,"context_line":"# Use this script to use interfaces/files from tempest-lib."},{"line_number":4,"context_line":"# Many files have been migrated to tempest-lib and tempest has"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_e9aa0619","line":1,"updated":"2015-11-25 09:09:00.000000000","message":"You might want to add copyright / license header","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"585147647f5b60c60433a678f8cb9dc27e6d3697","unresolved":false,"context_lines":[{"line_number":47,"context_line":"# Clone tempest-lib"},{"line_number":48,"context_line":"git clone $TEMPEST_LIB_GIT_URL $tmpdir"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"function check_diff {"},{"line_number":51,"context_line":"    # Get the latest change-id for each file"},{"line_number":52,"context_line":"    latest_commit_id\u003d`git log -n1 -- $1 | grep \"^commit\" | awk \u0027{print $2}\u0027`"},{"line_number":53,"context_line":"    cd $tmpdir"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_492312be","line":50,"updated":"2015-11-25 09:09:00.000000000","message":"NIT: you might want to keep all functions together at the top, and main code below.","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"571c085a25059224b8a6932b9bbc6e410337f131","unresolved":false,"context_lines":[{"line_number":47,"context_line":"# Clone tempest-lib"},{"line_number":48,"context_line":"git clone $TEMPEST_LIB_GIT_URL $tmpdir"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"function check_diff {"},{"line_number":51,"context_line":"    # Get the latest change-id for each file"},{"line_number":52,"context_line":"    latest_commit_id\u003d`git log -n1 -- $1 | grep \"^commit\" | awk \u0027{print $2}\u0027`"},{"line_number":53,"context_line":"    cd $tmpdir"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_9531090e","line":50,"in_reply_to":"9a8ffd7b_492312be","updated":"2015-11-25 10:05:29.000000000","message":"Done","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"585147647f5b60c60433a678f8cb9dc27e6d3697","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    lib_path\u003d`find ./ -name $filename`"},{"line_number":56,"context_line":"    if [ -z $lib_path ]; then"},{"line_number":57,"context_line":"        echo \"ERROR: $filename does not exist in tempest-lib.\""},{"line_number":58,"context_line":"        exit 1"},{"line_number":59,"context_line":"    fi"},{"line_number":60,"context_line":"    # Get the CHANGE_ID of tempest-lib patch where file was migrated"},{"line_number":61,"context_line":"    migration_change_id\u003d`git log  -n1 --grep \"Migrated\" -- $lib_path | grep \"Change-Id: \" | awk \u0027{print $2}\u0027`"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_1c69c6be","line":58,"updated":"2015-11-25 09:09:00.000000000","message":"You could return 1 here, and in L76 check_diff $file || continue.\nAlternatively you could check all files in advance and do nothing if at least one is not there. \nIt seems to me that handling some files until a broken one is found and then exiting would leave things half done.","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"571c085a25059224b8a6932b9bbc6e410337f131","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    lib_path\u003d`find ./ -name $filename`"},{"line_number":56,"context_line":"    if [ -z $lib_path ]; then"},{"line_number":57,"context_line":"        echo \"ERROR: $filename does not exist in tempest-lib.\""},{"line_number":58,"context_line":"        exit 1"},{"line_number":59,"context_line":"    fi"},{"line_number":60,"context_line":"    # Get the CHANGE_ID of tempest-lib patch where file was migrated"},{"line_number":61,"context_line":"    migration_change_id\u003d`git log  -n1 --grep \"Migrated\" -- $lib_path | grep \"Change-Id: \" | awk \u0027{print $2}\u0027`"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_d506b11f","line":58,"in_reply_to":"9a8ffd7b_1c69c6be","updated":"2015-11-25 10:05:29.000000000","message":"Very nice point. Thanks. Updated to check all files first and process if all are valid.","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"585147647f5b60c60433a678f8cb9dc27e6d3697","unresolved":false,"context_lines":[{"line_number":67,"context_line":"    migrated_commit_id\u003d`git log --grep \"$migrated_change_id\" -- $file | grep \"^commit\" | awk \u0027{print $2}\u0027`"},{"line_number":68,"context_line":"    DIFF\u003d$(git diff $latest_commit_id $migrated_commit_id $file)"},{"line_number":69,"context_line":"    if [ \"$DIFF\" !\u003d \"\" ]; then"},{"line_number":70,"context_line":"        echo \"ERROR: $filename in tempest has been updated after migration to tempest-lib. First sync the file to tempest-lib.\""},{"line_number":71,"context_line":"        exit 1"},{"line_number":72,"context_line":"    fi"},{"line_number":73,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_fcb6423c","line":70,"updated":"2015-11-25 09:09:00.000000000","message":"Ditto as L58","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"571c085a25059224b8a6932b9bbc6e410337f131","unresolved":false,"context_lines":[{"line_number":67,"context_line":"    migrated_commit_id\u003d`git log --grep \"$migrated_change_id\" -- $file | grep \"^commit\" | awk \u0027{print $2}\u0027`"},{"line_number":68,"context_line":"    DIFF\u003d$(git diff $latest_commit_id $migrated_commit_id $file)"},{"line_number":69,"context_line":"    if [ \"$DIFF\" !\u003d \"\" ]; then"},{"line_number":70,"context_line":"        echo \"ERROR: $filename in tempest has been updated after migration to tempest-lib. First sync the file to tempest-lib.\""},{"line_number":71,"context_line":"        exit 1"},{"line_number":72,"context_line":"    fi"},{"line_number":73,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_90ffd700","line":70,"in_reply_to":"9a8ffd7b_fcb6423c","updated":"2015-11-25 10:05:29.000000000","message":"Done","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"585147647f5b60c60433a678f8cb9dc27e6d3697","unresolved":false,"context_lines":[{"line_number":116,"context_line":"git add -A"},{"line_number":117,"context_line":"# Generate a migration commit"},{"line_number":118,"context_line":"commit_message\u003d\"Use $file_list from tempest-lib\""},{"line_number":119,"context_line":"pre_list\u003d$\"Below files have been migrated to tempest-lib- \\n\""},{"line_number":120,"context_line":"pre_list\u003d`echo -e $pre_list`"},{"line_number":121,"context_line":"post_list\u003d$\"Now Tempest-lib provides those as stable interfaces. So Tempest should\\nstart using those from lib and remove its own copy.\""},{"line_number":122,"context_line":"post_list\u003d`echo -e $post_list`"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_bc319aa4","line":119,"updated":"2015-11-25 09:09:00.000000000","message":"NIT: The files below have.. and trailing \"-\" after tempest-lib.","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"571c085a25059224b8a6932b9bbc6e410337f131","unresolved":false,"context_lines":[{"line_number":116,"context_line":"git add -A"},{"line_number":117,"context_line":"# Generate a migration commit"},{"line_number":118,"context_line":"commit_message\u003d\"Use $file_list from tempest-lib\""},{"line_number":119,"context_line":"pre_list\u003d$\"Below files have been migrated to tempest-lib- \\n\""},{"line_number":120,"context_line":"pre_list\u003d`echo -e $pre_list`"},{"line_number":121,"context_line":"post_list\u003d$\"Now Tempest-lib provides those as stable interfaces. So Tempest should\\nstart using those from lib and remove its own copy.\""},{"line_number":122,"context_line":"post_list\u003d`echo -e $post_list`"}],"source_content_type":"text/x-sh","patch_set":3,"id":"9a8ffd7b_700ef335","line":119,"in_reply_to":"9a8ffd7b_bc319aa4","updated":"2015-11-25 10:05:29.000000000","message":"Done","commit_id":"acc18310dcf9219cb3a4b8d5f2c3a898a3bb89b8"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"320633acea6e3804bd9cd2a348650f3086bad591","unresolved":false,"context_lines":[{"line_number":28,"context_line":"function check_all_files_valid {"},{"line_number":29,"context_line":"    for file in $files; do"},{"line_number":30,"context_line":"        # Get the latest change-id for each file"},{"line_number":31,"context_line":"        latest_commit_id\u003d`git log -n1 -- $1 | grep \"^commit\" | awk \u0027{print $2}\u0027`"},{"line_number":32,"context_line":"        cd $tmpdir"},{"line_number":33,"context_line":"        filename\u003d`basename $file`"},{"line_number":34,"context_line":"        lib_path\u003d`find ./ -name $filename`"}],"source_content_type":"text/x-sh","patch_set":4,"id":"9a8ffd7b_d0f1dfce","line":31,"range":{"start_line":31,"start_character":25,"end_line":31,"end_character":42},"updated":"2015-11-25 10:13:39.000000000","message":"It looks like this $1 is a leftover, there is no parameter passed to the function anymore, so it should be $file here.","commit_id":"4634cbedd6b7bce00185cc2cc37474bca22d11eb"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"aec7b1c5fe50b53b3c89e5e76753ee0207de6519","unresolved":false,"context_lines":[{"line_number":28,"context_line":"function check_all_files_valid {"},{"line_number":29,"context_line":"    for file in $files; do"},{"line_number":30,"context_line":"        # Get the latest change-id for each file"},{"line_number":31,"context_line":"        latest_commit_id\u003d`git log -n1 -- $1 | grep \"^commit\" | awk \u0027{print $2}\u0027`"},{"line_number":32,"context_line":"        cd $tmpdir"},{"line_number":33,"context_line":"        filename\u003d`basename $file`"},{"line_number":34,"context_line":"        lib_path\u003d`find ./ -name $filename`"}],"source_content_type":"text/x-sh","patch_set":4,"id":"9a8ffd7b_6a735f16","line":31,"in_reply_to":"9a8ffd7b_d0f1dfce","updated":"2015-11-25 11:12:58.000000000","message":"ops, Done","commit_id":"4634cbedd6b7bce00185cc2cc37474bca22d11eb"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"6e5bad9734113c4f8193d14d70d34ab50b235227","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        lib_path\u003d`find ./ -name $filename`"},{"line_number":35,"context_line":"        if [ -z $lib_path ]; then"},{"line_number":36,"context_line":"            echo \"ERROR: $filename does not exist in tempest-lib.\""},{"line_number":37,"context_line":"            exit 1"},{"line_number":38,"context_line":"        fi"},{"line_number":39,"context_line":"        # Get the CHANGE_ID of tempest-lib patch where file was migrated"},{"line_number":40,"context_line":"        migration_change_id\u003d`git log  -n1 --grep \"Migrated\" -- $lib_path | grep \"Change-Id: \" | awk \u0027{print $2}\u0027`"}],"source_content_type":"text/x-sh","patch_set":4,"id":"9a8ffd7b_f04663be","line":37,"updated":"2015-11-25 10:19:21.000000000","message":"I think this should be something like:\n\nfailed\u003d$(( failed + 1))\n\ncontinue\n\n\nAfter L28: failed\u003d0\n\n\nAnd then after L52: if [[ $failed -gt 0 ]]; then echo \"$failed files had issues\"; exit $failed; fi","commit_id":"4634cbedd6b7bce00185cc2cc37474bca22d11eb"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"aec7b1c5fe50b53b3c89e5e76753ee0207de6519","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        lib_path\u003d`find ./ -name $filename`"},{"line_number":35,"context_line":"        if [ -z $lib_path ]; then"},{"line_number":36,"context_line":"            echo \"ERROR: $filename does not exist in tempest-lib.\""},{"line_number":37,"context_line":"            exit 1"},{"line_number":38,"context_line":"        fi"},{"line_number":39,"context_line":"        # Get the CHANGE_ID of tempest-lib patch where file was migrated"},{"line_number":40,"context_line":"        migration_change_id\u003d`git log  -n1 --grep \"Migrated\" -- $lib_path | grep \"Change-Id: \" | awk \u0027{print $2}\u0027`"}],"source_content_type":"text/x-sh","patch_set":4,"id":"9a8ffd7b_0ac89321","line":37,"in_reply_to":"9a8ffd7b_f04663be","updated":"2015-11-25 11:12:58.000000000","message":"Yea, that\u0027s much better. Done","commit_id":"4634cbedd6b7bce00185cc2cc37474bca22d11eb"},{"author":{"_account_id":1921,"name":"Andrea Frittoli","email":"andrea.frittoli@gmail.com","username":"andrea-frittoli"},"change_message_id":"6e5bad9734113c4f8193d14d70d34ab50b235227","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        DIFF\u003d$(git diff $latest_commit_id $migrated_commit_id $file)"},{"line_number":48,"context_line":"        if [ \"$DIFF\" !\u003d \"\" ]; then"},{"line_number":49,"context_line":"            echo \"ERROR: $filename in tempest has been updated after migration to tempest-lib. First sync the file to tempest-lib.\""},{"line_number":50,"context_line":"            exit 1"},{"line_number":51,"context_line":"        fi"},{"line_number":52,"context_line":"    done"},{"line_number":53,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":4,"id":"9a8ffd7b_b0177ba2","line":50,"updated":"2015-11-25 10:19:21.000000000","message":"Ditto","commit_id":"4634cbedd6b7bce00185cc2cc37474bca22d11eb"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"aec7b1c5fe50b53b3c89e5e76753ee0207de6519","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        DIFF\u003d$(git diff $latest_commit_id $migrated_commit_id $file)"},{"line_number":48,"context_line":"        if [ \"$DIFF\" !\u003d \"\" ]; then"},{"line_number":49,"context_line":"            echo \"ERROR: $filename in tempest has been updated after migration to tempest-lib. First sync the file to tempest-lib.\""},{"line_number":50,"context_line":"            exit 1"},{"line_number":51,"context_line":"        fi"},{"line_number":52,"context_line":"    done"},{"line_number":53,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":4,"id":"9a8ffd7b_ead42fbe","line":50,"in_reply_to":"9a8ffd7b_b0177ba2","updated":"2015-11-25 11:12:58.000000000","message":"Done","commit_id":"4634cbedd6b7bce00185cc2cc37474bca22d11eb"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"c061018da82f600c793c837ebb03538a03133556","unresolved":false,"context_lines":[{"line_number":20,"context_line":"function usage {"},{"line_number":21,"context_line":"    echo \"Usage: $0 [OPTION] file1 file2\""},{"line_number":22,"context_line":"    echo \"Use files from tempest-lib\""},{"line_number":23,"context_line":"    echo \"\""},{"line_number":24,"context_line":"    echo \"-s, --service_client Specify if files are service clients.\""},{"line_number":25,"context_line":"    echo \"-u, --tempest_lib_git_url Specify the repo to clone tempest-lib from.\""},{"line_number":26,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_e7e5d408","line":23,"updated":"2015-12-03 04:54:44.000000000","message":"Please add the explanation file1/file2 should be path like tempest/file1.py of *Temepst* (not temepst-lib) for easy usage.","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a1d7fd5d63abc9ae67eb4bda9b7bc16965141c44","unresolved":false,"context_lines":[{"line_number":20,"context_line":"function usage {"},{"line_number":21,"context_line":"    echo \"Usage: $0 [OPTION] file1 file2\""},{"line_number":22,"context_line":"    echo \"Use files from tempest-lib\""},{"line_number":23,"context_line":"    echo \"\""},{"line_number":24,"context_line":"    echo \"-s, --service_client Specify if files are service clients.\""},{"line_number":25,"context_line":"    echo \"-u, --tempest_lib_git_url Specify the repo to clone tempest-lib from.\""},{"line_number":26,"context_line":"}"}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_b66e1b2d","line":23,"in_reply_to":"9a8ffd7b_e7e5d408","updated":"2015-12-03 06:43:54.000000000","message":"Done","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"db216fa404c5c79948509c88d1c54f7c7898b522","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        cd $tmpdir"},{"line_number":34,"context_line":"        filename\u003d`basename $file`"},{"line_number":35,"context_line":"        lib_path\u003d`find ./ -name $filename`"},{"line_number":36,"context_line":"        if [ -z $lib_path ]; then"},{"line_number":37,"context_line":"            echo \"ERROR: $filename does not exist in tempest-lib.\""},{"line_number":38,"context_line":"            failed\u003d$(( failed + 1))"},{"line_number":39,"context_line":"            cd - \u003e /dev/null"}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_7beb06b1","line":36,"updated":"2015-12-03 04:46:23.000000000","message":"I feel we need to handle duplicated files\u0027 case also here.\nSo if the files are duplicated, here should fail for safe migration.","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a1d7fd5d63abc9ae67eb4bda9b7bc16965141c44","unresolved":false,"context_lines":[{"line_number":33,"context_line":"        cd $tmpdir"},{"line_number":34,"context_line":"        filename\u003d`basename $file`"},{"line_number":35,"context_line":"        lib_path\u003d`find ./ -name $filename`"},{"line_number":36,"context_line":"        if [ -z $lib_path ]; then"},{"line_number":37,"context_line":"            echo \"ERROR: $filename does not exist in tempest-lib.\""},{"line_number":38,"context_line":"            failed\u003d$(( failed + 1))"},{"line_number":39,"context_line":"            cd - \u003e /dev/null"}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_59504032","line":36,"in_reply_to":"9a8ffd7b_7beb06b1","updated":"2015-12-03 06:43:54.000000000","message":"yea, nice catch.\n\nlittle bit difficult to handle that as lib path might be different than tempest one. But yes we should handle that. How about doing it in second step if that is not common case?","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"82eb730d0678e1a4a57ba1bb9edb66c0f4665307","unresolved":false,"context_lines":[{"line_number":74,"context_line":"    esac"},{"line_number":75,"context_line":"    shift"},{"line_number":76,"context_line":"done"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"TEMPEST_LIB_GIT_URL\u003d${tempest_lib_git_url:-git://git.openstack.org/openstack/tempest-lib}"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"tmpdir\u003d$(mktemp -d -t use-tempest-lib.XXXX)"}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_e7c2b484","line":77,"updated":"2015-12-03 04:49:03.000000000","message":"Could you add the check like\n\n when users don\u0027t pass anything, print usage\n\nfor usability?","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a1d7fd5d63abc9ae67eb4bda9b7bc16965141c44","unresolved":false,"context_lines":[{"line_number":74,"context_line":"    esac"},{"line_number":75,"context_line":"    shift"},{"line_number":76,"context_line":"done"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"TEMPEST_LIB_GIT_URL\u003d${tempest_lib_git_url:-git://git.openstack.org/openstack/tempest-lib}"},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"tmpdir\u003d$(mktemp -d -t use-tempest-lib.XXXX)"}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_567fafdf","line":77,"in_reply_to":"9a8ffd7b_e7c2b484","updated":"2015-12-03 06:43:54.000000000","message":"Done.","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"8a4ca60ab2e330781904effeb3ac50653d2c2a80","unresolved":false,"context_lines":[{"line_number":125,"context_line":"rm -rf $tmpdir"},{"line_number":126,"context_line":"echo \"Completed. Run pep8 and fix error if any\""},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"git add -A"},{"line_number":129,"context_line":"# Generate a migration commit"},{"line_number":130,"context_line":"commit_message\u003d\"Use $file_list from tempest-lib\""},{"line_number":131,"context_line":"pre_list\u003d$\"The files below have been migrated to tempest-lib\\n\""}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_c703f040","line":128,"updated":"2015-12-03 05:10:48.000000000","message":"Please change here to\n\n git add tempest/\n\nfor avoiding trash on my env ;-)\nSorry about that.","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a1d7fd5d63abc9ae67eb4bda9b7bc16965141c44","unresolved":false,"context_lines":[{"line_number":125,"context_line":"rm -rf $tmpdir"},{"line_number":126,"context_line":"echo \"Completed. Run pep8 and fix error if any\""},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"git add -A"},{"line_number":129,"context_line":"# Generate a migration commit"},{"line_number":130,"context_line":"commit_message\u003d\"Use $file_list from tempest-lib\""},{"line_number":131,"context_line":"pre_list\u003d$\"The files below have been migrated to tempest-lib\\n\""}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_160e078c","line":128,"in_reply_to":"9a8ffd7b_02c7a698","updated":"2015-12-03 06:43:54.000000000","message":"Done","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"313c6d1607c8c8553764a43f41471198bf200347","unresolved":false,"context_lines":[{"line_number":125,"context_line":"rm -rf $tmpdir"},{"line_number":126,"context_line":"echo \"Completed. Run pep8 and fix error if any\""},{"line_number":127,"context_line":""},{"line_number":128,"context_line":"git add -A"},{"line_number":129,"context_line":"# Generate a migration commit"},{"line_number":130,"context_line":"commit_message\u003d\"Use $file_list from tempest-lib\""},{"line_number":131,"context_line":"pre_list\u003d$\"The files below have been migrated to tempest-lib\\n\""}],"source_content_type":"text/x-sh","patch_set":8,"id":"9a8ffd7b_02c7a698","line":128,"in_reply_to":"9a8ffd7b_c703f040","updated":"2015-12-03 05:23:05.000000000","message":"Sorry, here should be\n\n git add -A tempest/\n\nfor removing the existing clients.","commit_id":"74c348ae9457ebf5896a3b23cf1c49e51f945ce5"}]}
