)]}'
{"tools/config_tempest.py":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"4add65af9558249dfdfeea53b149e28971585e12","unresolved":false,"context_lines":[{"line_number":26,"context_line":"script."},{"line_number":27,"context_line":"Some required options differ among deployed clouds but the right values cannot"},{"line_number":28,"context_line":"be discovered by the user. The file used here could be created by an installer,"},{"line_number":29,"context_line":"or manually if necessary."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"3. Values provided on the command line. These override all other values."},{"line_number":32,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a930d6b_02346a91","line":29,"updated":"2015-01-25 17:27:55.000000000","message":"Why not just have the installer or deployment tool create the default-overrides.conf file? I\u0027m not sure an additional --deployer-input method of overriding things is necessary here?","commit_id":"3b4c4cea40499fad86b691622d85bea3f2ae0b9c"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"eccf3d35694e0982e9ae1a4633eb4155658ff9aa","unresolved":false,"context_lines":[{"line_number":26,"context_line":"script."},{"line_number":27,"context_line":"Some required options differ among deployed clouds but the right values cannot"},{"line_number":28,"context_line":"be discovered by the user. The file used here could be created by an installer,"},{"line_number":29,"context_line":"or manually if necessary."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"3. Values provided on the command line. These override all other values."},{"line_number":32,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"da86d52c_818689d9","line":29,"in_reply_to":"1a930d6b_02346a91","updated":"2015-02-04 18:55:05.000000000","message":"The expectation is that an installer will create a file that is essentially a partial config file. I used the default overrides file to hold values that IMO should have been provided in the regular default conf in tempest or might be distro-specific. You are correct that this is not strictly necessary.","commit_id":"3b4c4cea40499fad86b691622d85bea3f2ae0b9c"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"4add65af9558249dfdfeea53b149e28971585e12","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"TEMPEST_DIR \u003d os.path.abspath(os.path.join(os.path.dirname(__file__), \"..\"))"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"DEFAULTS_FILE \u003d os.path.join(TEMPEST_DIR, \"etc\", \"default-overrides.conf\")"},{"line_number":63,"context_line":"DEFAULT_IMAGE \u003d \"http://download.cirros-cloud.net/0.3.1/\" \\"},{"line_number":64,"context_line":"                \"cirros-0.3.1-x86_64-disk.img\""},{"line_number":65,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a930d6b_62228e53","line":62,"updated":"2015-01-25 17:27:55.000000000","message":"How about just calling this file \"defaults.conf\"?","commit_id":"3b4c4cea40499fad86b691622d85bea3f2ae0b9c"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"eccf3d35694e0982e9ae1a4633eb4155658ff9aa","unresolved":false,"context_lines":[{"line_number":59,"context_line":""},{"line_number":60,"context_line":"TEMPEST_DIR \u003d os.path.abspath(os.path.join(os.path.dirname(__file__), \"..\"))"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"DEFAULTS_FILE \u003d os.path.join(TEMPEST_DIR, \"etc\", \"default-overrides.conf\")"},{"line_number":63,"context_line":"DEFAULT_IMAGE \u003d \"http://download.cirros-cloud.net/0.3.1/\" \\"},{"line_number":64,"context_line":"                \"cirros-0.3.1-x86_64-disk.img\""},{"line_number":65,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"da86d52c_815da97b","line":62,"in_reply_to":"1a930d6b_62228e53","updated":"2015-02-04 18:55:05.000000000","message":"I didn\u0027t want to confuse this with the regular tempest defaults in config.py.","commit_id":"3b4c4cea40499fad86b691622d85bea3f2ae0b9c"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"4add65af9558249dfdfeea53b149e28971585e12","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    \u0027image\u0027: [\u0027v1\u0027, \u0027v2\u0027],"},{"line_number":87,"context_line":"    \u0027identity\u0027: [\u0027v2\u0027, \u0027v3\u0027],"},{"line_number":88,"context_line":"    \u0027volume\u0027: [\u0027v1\u0027, \u0027v2\u0027],"},{"line_number":89,"context_line":"    \u0027compute\u0027: [\u0027v3\u0027],"},{"line_number":90,"context_line":"}"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"# Keep track of where the extensions are saved for that service."}],"source_content_type":"text/x-python","patch_set":3,"id":"1a930d6b_a218f61e","line":89,"updated":"2015-01-25 17:27:55.000000000","message":"There is no longer a supported v3 in Nova. We are using a micro-versioned API starting from 2.1. I bring this up because the hard-coding of major versions here seems to inject some inflexibility into the configuration tool. The direction that API projects should be heading is micro-versioned APIs that are fully discoverable (with resource schemas, etc). Would be good to add a comment or TODO in here that addresses the future direction of the API projects.","commit_id":"3b4c4cea40499fad86b691622d85bea3f2ae0b9c"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"eccf3d35694e0982e9ae1a4633eb4155658ff9aa","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    \u0027image\u0027: [\u0027v1\u0027, \u0027v2\u0027],"},{"line_number":87,"context_line":"    \u0027identity\u0027: [\u0027v2\u0027, \u0027v3\u0027],"},{"line_number":88,"context_line":"    \u0027volume\u0027: [\u0027v1\u0027, \u0027v2\u0027],"},{"line_number":89,"context_line":"    \u0027compute\u0027: [\u0027v3\u0027],"},{"line_number":90,"context_line":"}"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"# Keep track of where the extensions are saved for that service."}],"source_content_type":"text/x-python","patch_set":3,"id":"da86d52c_81b9297b","line":89,"in_reply_to":"1a930d6b_a218f61e","updated":"2015-02-04 18:55:05.000000000","message":"You are right but this inflexibility is inherited from the way these values are defined in config.py. This code is just following that and will need to change. I don\u0027t think the specifics of how tempest will handle micro-versions is yet defined.","commit_id":"3b4c4cea40499fad86b691622d85bea3f2ae0b9c"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"4add65af9558249dfdfeea53b149e28971585e12","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        for section in deployer_input.sections():"},{"line_number":122,"context_line":"            # There are no deployer input options in DEFAULT"},{"line_number":123,"context_line":"            for (key, value) in deployer_input.items(section):"},{"line_number":124,"context_line":"                conf.set(section, key, value, priority\u003dTrue)"},{"line_number":125,"context_line":"    for section, key, value in args.overrides:"},{"line_number":126,"context_line":"        conf.set(section, key, value, priority\u003dTrue)"},{"line_number":127,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a930d6b_22afa67e","line":124,"updated":"2015-01-25 17:27:55.000000000","message":"See above... Why have this --deployer-input file option? Easier to just have the installer/deployer script set options in the defaults.conf file itself.","commit_id":"3b4c4cea40499fad86b691622d85bea3f2ae0b9c"},{"author":{"_account_id":7227,"name":"Timur Nurlygayanov","email":"tnurlygayanov@mirantis.com","username":"tnurlygayanov"},"change_message_id":"ee3d475cb7038b3bbba16ec75c92fb0ac26db302","unresolved":false,"context_lines":[{"line_number":68,"context_line":"DEFAULT_IMAGE_FORMAT \u003d \u0027qcow2\u0027"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"VALID_RELEASES \u003d [\"rhelosp7\", \"rhelosp6\", \"rhelosp5\", \"icehouse\","},{"line_number":71,"context_line":"                  \"juno\", \"kilo\"]"},{"line_number":72,"context_line":"DEFAULT_RELEASE \u003d \"rhelosp7\""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"# services and their codenames"}],"source_content_type":"text/x-python","patch_set":5,"id":"3afb71cf_cd34affc","line":71,"updated":"2015-06-08 11:36:18.000000000","message":"What about \"master\" here?","commit_id":"eaa1b7cdbee0dcf706f4ec442d3ac8fdab9b7eb7"},{"author":{"_account_id":7872,"name":"Marc Koderer","email":"marc@koderer.com","username":"mkoderer"},"change_message_id":"c9091765516a786f24945a63c0f0cee4b9c31469","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"VALID_RELEASES \u003d [\"rhelosp7\", \"rhelosp6\", \"rhelosp5\", \"icehouse\","},{"line_number":71,"context_line":"                  \"juno\", \"kilo\"]"},{"line_number":72,"context_line":"DEFAULT_RELEASE \u003d \"rhelosp7\""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"# services and their codenames"},{"line_number":75,"context_line":"SERVICE_NAMES \u003d {"}],"source_content_type":"text/x-python","patch_set":5,"id":"3afb71cf_89823693","line":72,"updated":"2015-06-08 08:45:51.000000000","message":"This need\u0027s to get changed. Default should be \"master\". Do we really need this at all?","commit_id":"eaa1b7cdbee0dcf706f4ec442d3ac8fdab9b7eb7"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"42731a0900848f098749d01e6e2d9a36aaad766d","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"VALID_RELEASES \u003d [\"rhelosp7\", \"rhelosp6\", \"rhelosp5\", \"icehouse\","},{"line_number":71,"context_line":"                  \"juno\", \"kilo\"]"},{"line_number":72,"context_line":"DEFAULT_RELEASE \u003d \"rhelosp7\""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"# services and their codenames"},{"line_number":75,"context_line":"SERVICE_NAMES \u003d {"}],"source_content_type":"text/x-python","patch_set":5,"id":"3afb71cf_1ebd4868","line":72,"in_reply_to":"3afb71cf_4d731fe8","updated":"2015-06-08 13:51:35.000000000","message":"Yes, see my answer to Marc pointing out the same.","commit_id":"eaa1b7cdbee0dcf706f4ec442d3ac8fdab9b7eb7"},{"author":{"_account_id":7227,"name":"Timur Nurlygayanov","email":"tnurlygayanov@mirantis.com","username":"tnurlygayanov"},"change_message_id":"ee3d475cb7038b3bbba16ec75c92fb0ac26db302","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"VALID_RELEASES \u003d [\"rhelosp7\", \"rhelosp6\", \"rhelosp5\", \"icehouse\","},{"line_number":71,"context_line":"                  \"juno\", \"kilo\"]"},{"line_number":72,"context_line":"DEFAULT_RELEASE \u003d \"rhelosp7\""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"# services and their codenames"},{"line_number":75,"context_line":"SERVICE_NAMES \u003d {"}],"source_content_type":"text/x-python","patch_set":5,"id":"3afb71cf_4d731fe8","line":72,"in_reply_to":"3afb71cf_89823693","updated":"2015-06-08 11:36:18.000000000","message":"Hi Marc and David, \n\nI like this feature just because sometimes we will need to run tempest against some \"production\" cloud which will be installed from some stable version of OpenStack, not from master.\n\nBut for the default value I agree that we need to use \"master\" here, of course.","commit_id":"eaa1b7cdbee0dcf706f4ec442d3ac8fdab9b7eb7"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"42731a0900848f098749d01e6e2d9a36aaad766d","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"VALID_RELEASES \u003d [\"rhelosp7\", \"rhelosp6\", \"rhelosp5\", \"icehouse\","},{"line_number":71,"context_line":"                  \"juno\", \"kilo\"]"},{"line_number":72,"context_line":"DEFAULT_RELEASE \u003d \"rhelosp7\""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"# services and their codenames"},{"line_number":75,"context_line":"SERVICE_NAMES \u003d {"}],"source_content_type":"text/x-python","patch_set":5,"id":"3afb71cf_9e037842","line":72,"in_reply_to":"3afb71cf_89823693","updated":"2015-06-08 13:51:35.000000000","message":"Sorry, I should have explained this. The only purpose for this is that a user/distributor may support a release after it is dropped from upstream. So if I use this script for a juno deployment, at a certain point master tempest will stop working. This flag was so the script can be augmented to keep it working. It is tied to a stable branch workflow.\n\nSo this script is out of date since kilo went out the door. But I think the new default should be \"liberty\" perhaps.","commit_id":"eaa1b7cdbee0dcf706f4ec442d3ac8fdab9b7eb7"},{"author":{"_account_id":7872,"name":"Marc Koderer","email":"marc@koderer.com","username":"mkoderer"},"change_message_id":"c9091765516a786f24945a63c0f0cee4b9c31469","unresolved":false,"context_lines":[{"line_number":132,"context_line":"    for section, key, value in args.overrides:"},{"line_number":133,"context_line":"        conf.set(section, key, value, priority\u003dTrue)"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    uri \u003d conf.get(\"identity\", \"uri\")"},{"line_number":136,"context_line":"    conf.set(\"identity\", \"uri_v3\", uri.replace(\"v2.0\", \"v3\"))"},{"line_number":137,"context_line":"    if args.non_admin:"},{"line_number":138,"context_line":"        conf.set(\"identity\", \"admin_username\", \"\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"3afb71cf_98215afe","line":135,"updated":"2015-06-08 08:45:51.000000000","message":"Cloud be a issue with my environment: I just cloned a new copy of tempest and got [1]. Do I need to have a tempest.conf? I think identity options need to be in the arguments of the tool.\n\n[1]: http://paste.openstack.org/show/273627/","commit_id":"eaa1b7cdbee0dcf706f4ec442d3ac8fdab9b7eb7"},{"author":{"_account_id":1192,"name":"David Kranz","email":"dkranz@redhat.com","username":"david-kranz"},"change_message_id":"42731a0900848f098749d01e6e2d9a36aaad766d","unresolved":false,"context_lines":[{"line_number":132,"context_line":"    for section, key, value in args.overrides:"},{"line_number":133,"context_line":"        conf.set(section, key, value, priority\u003dTrue)"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"    uri \u003d conf.get(\"identity\", \"uri\")"},{"line_number":136,"context_line":"    conf.set(\"identity\", \"uri_v3\", uri.replace(\"v2.0\", \"v3\"))"},{"line_number":137,"context_line":"    if args.non_admin:"},{"line_number":138,"context_line":"        conf.set(\"identity\", \"admin_username\", \"\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"3afb71cf_d9090a2e","line":135,"in_reply_to":"3afb71cf_98215afe","updated":"2015-06-08 13:51:35.000000000","message":"Yes, any value obtained with \"get\" rather than \"get_defaulted\" must be supplied on the command line or in the deployer-input file.","commit_id":"eaa1b7cdbee0dcf706f4ec442d3ac8fdab9b7eb7"}]}
