)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"6f0b171c2db5cf49421837b4826867dab78ae1cf","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add documentation how to run functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"https://bugs.launchpad.net/python-ironicclient/+bug/1511731"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: I4a5cf4be98f32455e36ea7d6a45b18afca043809"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"fa80f949_e64ca678","line":9,"updated":"2015-11-03 11:25:02.000000000","message":"Oh, and one more thing - use Closes-Bug: #1511731 instead of this link in the message.","commit_id":"75db1920c4b541abe5bf47e68965f06be644ad82"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"5a36a1cb5c3a1587ea3cf6607e5d050b128de416","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Sergey Turivnyi \u003csturivnyi@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-11-06 14:05:31 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add documentation how to run functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Closes-bug:#1511731"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":20,"id":"da85f559_5a0dfb3c","line":7,"updated":"2015-11-09 23:17:57.000000000","message":"Please give more information on what was done.\n\nThere are instructions on how to run tox, doing pep8 checks, unit tests, functional tests, etc...\n\nTo me the subject is something like:\n Add documentation on developer testing\n\nAnd then please give a summary of the sections added.","commit_id":"2c29598cfe5fda54a288eeea462998ed2e690fa2"},{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"56b06bcf2cb7eea45c51200e178fe1286429e137","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Sergey Turivnyi \u003csturivnyi@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-11-10 09:34:50 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add documentation how to run functional tests"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"There are instructions on how to:"},{"line_number":10,"context_line":"run tox, doing pep8 checks, run unit tests and functional tests."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":21,"id":"da85f559_e037104b","line":7,"updated":"2015-11-11 11:18:55.000000000","message":"imo title should be changed too to be consistency","commit_id":"95895213319884de207c90a3095eb95c4a1b8869"}],"doc/source/testing.rst":[{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"761591aed69dd7e22757c709de3e394708f11e3c","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Functional testing assumes the existence of a script run_functional.sh that"},{"line_number":30,"context_line":"allocated in tools/ directory in python-ironicclient. The test.conf file"},{"line_number":31,"context_line":"cold be created manually or generated from Environment variables."},{"line_number":32,"context_line":"It assumes the existence of a openstack cloud installation with a demo and"},{"line_number":33,"context_line":"an admin user/tenant - or tenants named functional_admin and"},{"line_number":34,"context_line":"functional_nonadmin. The test.conf file allocates in"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a26ad4f_0af02ffd","line":31,"updated":"2015-11-02 14:27:25.000000000","message":"s/cold/could , please mention that run_functional.sh generates test.conf , imo it\u0027s not \nobviously.","commit_id":"f3f671dfad551be84c213722a0e6ae70112437ab"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"3f4c6b5b7e11ea069a876cbb4809f62bcd8a21d0","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Testing"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"The unit tests runs under both Python 2.7 and Python 3.4."},{"line_number":8,"context_line":"It is strongly encouraged to run the unit tests locally under one, the other,"},{"line_number":9,"context_line":"or both prior to submitting a patch."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a26ad4f_36c6b268","line":7,"updated":"2015-11-02 16:03:40.000000000","message":"Grammar nitpick: change \"runs\" to \"run\".","commit_id":"587afcc8391a0b5f85f69898f46585cc50e5c477"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"3f4c6b5b7e11ea069a876cbb4809f62bcd8a21d0","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    * tox -e functional - live functional testing against an existing openstack"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Functional testing assumes the existence of a script run_functional.sh that"},{"line_number":30,"context_line":"allocated in python-ironicclient/tools directory. The script run_functional.sh"},{"line_number":31,"context_line":"generates test.conf file. Also, the test.conf file cold be created manually or"},{"line_number":32,"context_line":"generated from Environment variables. It assumes the existence of a openstack"},{"line_number":33,"context_line":"cloud installation with a demo and an admin user/tenant - or tenants named"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a26ad4f_b6ade285","line":30,"updated":"2015-11-02 16:03:40.000000000","message":"\"Allocated\" isn\u0027t right here: maybe \"that lives in\", or just \"in\". Also add \"the\" before \"python-ironicclient\".","commit_id":"587afcc8391a0b5f85f69898f46585cc50e5c477"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"3f4c6b5b7e11ea069a876cbb4809f62bcd8a21d0","unresolved":false,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Functional testing assumes the existence of a script run_functional.sh that"},{"line_number":30,"context_line":"allocated in python-ironicclient/tools directory. The script run_functional.sh"},{"line_number":31,"context_line":"generates test.conf file. Also, the test.conf file cold be created manually or"},{"line_number":32,"context_line":"generated from Environment variables. It assumes the existence of a openstack"},{"line_number":33,"context_line":"cloud installation with a demo and an admin user/tenant - or tenants named"},{"line_number":34,"context_line":"functional_admin and functional_nonadmin. The test.conf file allocates in"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a26ad4f_16e4d6de","line":31,"updated":"2015-11-02 16:03:40.000000000","message":"Typo: \"cold\" should be \"could\".","commit_id":"587afcc8391a0b5f85f69898f46585cc50e5c477"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"3f4c6b5b7e11ea069a876cbb4809f62bcd8a21d0","unresolved":false,"context_lines":[{"line_number":29,"context_line":"Functional testing assumes the existence of a script run_functional.sh that"},{"line_number":30,"context_line":"allocated in python-ironicclient/tools directory. The script run_functional.sh"},{"line_number":31,"context_line":"generates test.conf file. Also, the test.conf file cold be created manually or"},{"line_number":32,"context_line":"generated from Environment variables. It assumes the existence of a openstack"},{"line_number":33,"context_line":"cloud installation with a demo and an admin user/tenant - or tenants named"},{"line_number":34,"context_line":"functional_admin and functional_nonadmin. The test.conf file allocates in"},{"line_number":35,"context_line":"ironicclient/tests/functional/ directory."}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a26ad4f_b6ce422b","line":32,"updated":"2015-11-02 16:03:40.000000000","message":"Typos: \"Environment\" -\u003e \"environment\" and \"a openstack\" -\u003e \"an openstack\".","commit_id":"587afcc8391a0b5f85f69898f46585cc50e5c477"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"3f4c6b5b7e11ea069a876cbb4809f62bcd8a21d0","unresolved":false,"context_lines":[{"line_number":31,"context_line":"generates test.conf file. Also, the test.conf file cold be created manually or"},{"line_number":32,"context_line":"generated from Environment variables. It assumes the existence of a openstack"},{"line_number":33,"context_line":"cloud installation with a demo and an admin user/tenant - or tenants named"},{"line_number":34,"context_line":"functional_admin and functional_nonadmin. The test.conf file allocates in"},{"line_number":35,"context_line":"ironicclient/tests/functional/ directory."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"The example of test.conf file::"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a26ad4f_d65c1e7f","line":34,"updated":"2015-11-02 16:03:40.000000000","message":"Do you mean that the directory containing test.conf is ironicclient/tests/functional? If so, change it to \"lives\" or \"should be\".","commit_id":"587afcc8391a0b5f85f69898f46585cc50e5c477"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"3f4c6b5b7e11ea069a876cbb4809f62bcd8a21d0","unresolved":false,"context_lines":[{"line_number":34,"context_line":"functional_admin and functional_nonadmin. The test.conf file allocates in"},{"line_number":35,"context_line":"ironicclient/tests/functional/ directory."},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"The example of test.conf file::"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    [functional]"},{"line_number":40,"context_line":"    api_version \u003d 1"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a26ad4f_f6efda84","line":37,"updated":"2015-11-02 16:03:40.000000000","message":"\"The\" implies uniqueness, that this is the only possible example: I\u0027d change this to \"An example test.conf file\"","commit_id":"587afcc8391a0b5f85f69898f46585cc50e5c477"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"3f4c6b5b7e11ea069a876cbb4809f62bcd8a21d0","unresolved":false,"context_lines":[{"line_number":47,"context_line":"If you use standalone ironic test.conf file could be used only with"},{"line_number":48,"context_line":"os_auth_token and ironic_url parameters"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"The example of test.conf file for standalone host::"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    [functional]"},{"line_number":53,"context_line":"    auth_strategy \u003d noauth"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a26ad4f_9601c63a","line":50,"updated":"2015-11-02 16:03:40.000000000","message":"Again, I\u0027d change this to \"An example test.conf file for a standalone host\"","commit_id":"587afcc8391a0b5f85f69898f46585cc50e5c477"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b091f279715d4a1534953385ec9040847f217028","unresolved":false,"context_lines":[{"line_number":2,"context_line":""},{"line_number":3,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":4,"context_line":"Testing"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"The unit tests run under both Python 2.7 and Python 3.4."},{"line_number":8,"context_line":"It is strongly encouraged to run the unit tests locally under one, the other,"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a26ad4f_c1a8da8e","line":5,"updated":"2015-11-02 16:25:29.000000000","message":"Would be prettier if these header lines matched section name length :)","commit_id":"3a76f2bb1775570d2baf2364b2d0cfba528faa00"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b091f279715d4a1534953385ec9040847f217028","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Testing"},{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"The unit tests run under both Python 2.7 and Python 3.4."},{"line_number":8,"context_line":"It is strongly encouraged to run the unit tests locally under one, the other,"},{"line_number":9,"context_line":"or both prior to submitting a patch."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a26ad4f_e1b636f8","line":7,"updated":"2015-11-02 16:25:29.000000000","message":"Also 2.6 and 3.3","commit_id":"3a76f2bb1775570d2baf2364b2d0cfba528faa00"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b091f279715d4a1534953385ec9040847f217028","unresolved":false,"context_lines":[{"line_number":27,"context_line":"    * tox -e functional - live functional testing against an existing openstack"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"Functional testing assumes the existence of a script run_functional.sh that"},{"line_number":30,"context_line":"in the python-ironicclient/tools directory. The script run_functional.sh"},{"line_number":31,"context_line":"generates test.conf file. Also, the test.conf file could be created manually or"},{"line_number":32,"context_line":"generated from environment variables. It assumes the existence of an openstack"},{"line_number":33,"context_line":"cloud installation with a demo and an admin user/tenant - or tenants named"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a26ad4f_e1b2b6e4","line":30,"updated":"2015-11-02 16:25:29.000000000","message":"This should be clarified I think. So as I understand, there are 2 ways to run functional tests: to just run ./run_functional.sh (which will do most things for you and with which you can use env variables) or to create testr.conf manually and do tox -efunctional (and this way you cannot use env variables), so run_functional.sh is not an obligatory thing to use. Please mention these 2 options separately.","commit_id":"3a76f2bb1775570d2baf2364b2d0cfba528faa00"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b091f279715d4a1534953385ec9040847f217028","unresolved":false,"context_lines":[{"line_number":41,"context_line":"    os_auth_url\u003dhttp://192.168.0.2:5000/v2.0/"},{"line_number":42,"context_line":"    os_username\u003dadmin"},{"line_number":43,"context_line":"    os_password\u003dadmin"},{"line_number":44,"context_line":"    os_tenant_name\u003dadmin os_service_type\u003dbaremetal"},{"line_number":45,"context_line":"    os_endpoint_type\u003dpublic"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"If you use standalone ironic test.conf file could be used only with"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a26ad4f_817982ca","line":44,"updated":"2015-11-02 16:25:29.000000000","message":"api_version, os_service_type and os_endpoint_type are not used in client initialization in the parent patch, so I\u0027d omit them for now.","commit_id":"3a76f2bb1775570d2baf2364b2d0cfba528faa00"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"b091f279715d4a1534953385ec9040847f217028","unresolved":false,"context_lines":[{"line_number":45,"context_line":"    os_endpoint_type\u003dpublic"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"If you use standalone ironic test.conf file could be used only with"},{"line_number":48,"context_line":"os_auth_token and ironic_url parameters"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"An example test.conf file for standalone host::"},{"line_number":51,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a26ad4f_211f4e6d","line":48,"updated":"2015-11-02 16:25:29.000000000","message":"auth_strategy is required here too as default one is keystone, might be worth mentioning.","commit_id":"3a76f2bb1775570d2baf2364b2d0cfba528faa00"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"62e5b784a074c19cb8dace535bfa7fde8828c580","unresolved":false,"context_lines":[{"line_number":5,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"The unit tests run under Python 2.6, Python 2.7, Python 3.3 and Python 3.4."},{"line_number":8,"context_line":"It is strongly encouraged to run the unit tests locally under one, the other,"},{"line_number":9,"context_line":"or both prior to submitting a patch."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Usage"}],"source_content_type":"text/x-rst","patch_set":7,"id":"1a26ad4f_335d5f15","line":8,"updated":"2015-11-02 17:12:30.000000000","message":"Since there are now more than two options, change \"one, the other, or both\" to \"one or more\".","commit_id":"ea1ede8a3a488d3be46f55554040143baeb46351"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"62e5b784a074c19cb8dace535bfa7fde8828c580","unresolved":false,"context_lines":[{"line_number":20,"context_line":"Run tests"},{"line_number":21,"context_line":"..........."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Functional testing assumes the existence of a script run_functional.sh that"},{"line_number":24,"context_line":"in the python-ironicclient/tools directory. The script run_functional.sh"},{"line_number":25,"context_line":"generates test.conf file. To run functional tests just run ./run_functional.sh"},{"line_number":26,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1a26ad4f_b3a72f0a","line":23,"updated":"2015-11-02 17:12:30.000000000","message":"Remove \"that\".","commit_id":"ea1ede8a3a488d3be46f55554040143baeb46351"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"62e5b784a074c19cb8dace535bfa7fde8828c580","unresolved":false,"context_lines":[{"line_number":29,"context_line":"cloud installation with a demo and an admin user/tenant - or tenants named"},{"line_number":30,"context_line":"functional_admin and functional_nonadmin. The test.conf file lives in"},{"line_number":31,"context_line":"ironicclient/tests/functional/ directory. To run functional tests in that way"},{"line_number":32,"context_line":"create testr.conf manually and do::"},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    * tox -e functional"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1a26ad4f_338b1f6a","line":32,"updated":"2015-11-02 17:12:30.000000000","message":"Is it test.conf or testr.conf?","commit_id":"ea1ede8a3a488d3be46f55554040143baeb46351"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"a6d8ce707da2eb2db274eed2920e4de7af23126f","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    os_password\u003dadmin"},{"line_number":49,"context_line":"    os_tenant_name\u003dadmin"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If you use standalone ironic test.conf file could be used only with"},{"line_number":52,"context_line":"auth_strategy, os_auth_token and ironic_url parameters"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"An example test.conf file for standalone host::"}],"source_content_type":"text/x-rst","patch_set":10,"id":"1a26ad4f_664a3728","line":51,"updated":"2015-11-02 17:38:24.000000000","message":"By \"standalone ironic\" do you mean that you\u0027re running the tests against an ironic server running on some other host? If so, I\u0027d suggest changing \"if you use standalone ironic\" to \"If you are testing an existing ironic server\".\n\nIn any event, the sentence is a bit hard to understand: it\u0027s not clear where the condition of the if-statement ends. Add a comma after the end of the condition. I\u0027d also reword the end of the sentence slightly, giving \"If [condition], the test.conf file can only contain the parameters auth_strategy, os_auth_token and ironic_url.\"","commit_id":"46aea3fc0819b3de6e2478cd80d266def66f136d"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"7de5cae532ff7726e56aa54b1d097e0804e5cb8d","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    os_password\u003dadmin"},{"line_number":49,"context_line":"    os_tenant_name\u003dadmin"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If you use standalone ironic test.conf file could be used only with"},{"line_number":52,"context_line":"auth_strategy, os_auth_token and ironic_url parameters"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"An example test.conf file for standalone host::"}],"source_content_type":"text/x-rst","patch_set":10,"id":"1a26ad4f_86e433e0","line":51,"in_reply_to":"1a26ad4f_664a3728","updated":"2015-11-02 17:48:15.000000000","message":"No, it is a mode when ironic runs without any other openstack services (without keystone too, that\u0027s why auth_strategy\u003dnoauth), maybe add clarification what standalone means but please don\u0027t change to \u0027existing server\u0027, here you deal with everything set up beforehand anyway.","commit_id":"46aea3fc0819b3de6e2478cd80d266def66f136d"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"e7c7ba7d8ee77e31fb2f6d462cfbadf380256e4f","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    os_password\u003dadmin"},{"line_number":49,"context_line":"    os_tenant_name\u003dadmin"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If you use standalone ironic test.conf file could be used only with"},{"line_number":52,"context_line":"auth_strategy, os_auth_token and ironic_url parameters"},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"An example test.conf file for standalone host::"}],"source_content_type":"text/x-rst","patch_set":10,"id":"1a26ad4f_86b3d399","line":51,"in_reply_to":"1a26ad4f_86e433e0","updated":"2015-11-02 17:53:20.000000000","message":"Oh, right - thanks! Are the three parameters listed the only ones *needed* in that case, or the only ones *allowed*?","commit_id":"46aea3fc0819b3de6e2478cd80d266def66f136d"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"cb196788083a1756d98f8938c83f83d316fe3da5","unresolved":false,"context_lines":[{"line_number":48,"context_line":"    os_password\u003dadmin"},{"line_number":49,"context_line":"    os_tenant_name\u003dadmin"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If you are testing an existing ironic server, the test.conf file can only"},{"line_number":52,"context_line":"contain the parameters auth_strategy, os_auth_token and ironic_url."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"An example test.conf file for standalone host::"}],"source_content_type":"text/x-rst","patch_set":12,"id":"1a26ad4f_69120859","line":51,"updated":"2015-11-02 17:55:15.000000000","message":"It turns out I was totally wrong about this - see Vladyslav Drok\u0027s comments on patchset 10.","commit_id":"75db1920c4b541abe5bf47e68965f06be644ad82"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"f6665189198e394050f7caeb6a148ea13e1fc1c5","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    os_tenant_name\u003dadmin"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If you are testing an existing ironic server, the test.conf file can only"},{"line_number":52,"context_line":"contain the parameters auth_strategy, os_auth_token and ironic_url."},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"An example test.conf file for standalone host::"},{"line_number":55,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"fa80f949_26c86e74","line":52,"updated":"2015-11-03 11:35:26.000000000","message":"After an IRC conversation with Vladyslav, we think \"If you are testing ironic in standalone mode, only the parameters \u0027auth_strategy\u0027, \u0027os_auth_token\u0027 and \u0027ironic_url\u0027 are required; all others will be ignored\" is both readable and correct - sorry for confusing things earlier.","commit_id":"75db1920c4b541abe5bf47e68965f06be644ad82"},{"author":{"_account_id":16986,"name":"Shuquan Huang","email":"shuquan.huang@live.com","username":"shuquan"},"change_message_id":"14e6087808ca82b86e40eda9442ad5947199317b","unresolved":false,"context_lines":[{"line_number":14,"context_line":"Note"},{"line_number":15,"context_line":"-------------------"},{"line_number":16,"context_line":"The unit test environment setup should be done on a clean installed VM"},{"line_number":17,"context_line":"or system. Sharing the environment with devstack testing is not recommended"},{"line_number":18,"context_line":"due to conflicting configuration with system dependencies."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Run tests"}],"source_content_type":"text/x-rst","patch_set":16,"id":"fa80f949_cf5bb22d","line":17,"updated":"2015-11-03 14:00:33.000000000","message":"We may add virtual environment here.","commit_id":"a8332e51ada2484b6b34943c4a36019fa91d0146"},{"author":{"_account_id":18893,"name":"Miles Gould","email":"mgould@redhat.com","username":"pozorvlak"},"change_message_id":"d95be711a0da9c7983d8daddc6ea4213c6529c4d","unresolved":false,"context_lines":[{"line_number":14,"context_line":"Note"},{"line_number":15,"context_line":"-------------------"},{"line_number":16,"context_line":"The unit test environment setup should be done on a clean installed VM, or"},{"line_number":17,"context_line":"inside a virtual environment. Sharing the environment with devstack testing"},{"line_number":18,"context_line":"is not recommended due to conflicting configuration with system dependencies."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Run tests"}],"source_content_type":"text/x-rst","patch_set":17,"id":"fa80f949_a668d0bb","line":17,"updated":"2015-11-03 16:10:44.000000000","message":"Does \"virtual environment\" mean \"Python virtualenv\" here? Is that enough to prevent conflicts with system-level dependencies installed by devstack?","commit_id":"4cfabbba2faf4bdb65a304055b6ca02a42da07cb"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"392b72a7f975cd6e3a4941b3100346b7486b699e","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    [functional]"},{"line_number":58,"context_line":"    auth_strategy \u003d noauth"},{"line_number":59,"context_line":"    os_auth_token \u003d fake"},{"line_number":60,"context_line":"    ironic_url \u003d http://10.0.0.2:6385"}],"source_content_type":"text/x-rst","patch_set":18,"id":"fa80f949_513dfc29","line":60,"updated":"2015-11-04 12:46:01.000000000","message":"I\u0027ve have a few minor issues with the layout/ordering of this document, please see this paste here, for an idea of how I think it should look to make it a bit easier to read: \nhttp://paste.openstack.org/show/477956/","commit_id":"539f9c5c2c47e8462ac563ca56768aaee12da15c"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"964e9c0f7e1c8ce0884ddbed03fdc229229762bb","unresolved":false,"context_lines":[{"line_number":10,"context_line":"All code has to pass the pep8 style guideline to merge into OpenStack, to"},{"line_number":11,"context_line":"validate the code against these guidelines you can run::"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"  * tox -e pep8 - style guidelines enforcement"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Unit Testing"},{"line_number":16,"context_line":"............"}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_28368d52","line":13,"updated":"2015-11-05 17:10:17.000000000","message":"This makes me think I should type:\n\n tox -e pep8 - style guidelines enforcement\n\nPlease separate comment from command.","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":17270,"name":"Sergii Turivnyi","email":"sturivnyi@mirantis.com","username":"sturivnyi"},"change_message_id":"4eef53372d0e45ed6682e29e2a1c94e0ba2fb3a1","unresolved":false,"context_lines":[{"line_number":10,"context_line":"All code has to pass the pep8 style guideline to merge into OpenStack, to"},{"line_number":11,"context_line":"validate the code against these guidelines you can run::"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"  * tox -e pep8 - style guidelines enforcement"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Unit Testing"},{"line_number":16,"context_line":"............"}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_50fb5379","line":13,"in_reply_to":"fa80f949_28368d52","updated":"2015-11-06 14:06:18.000000000","message":"Done","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"964e9c0f7e1c8ce0884ddbed03fdc229229762bb","unresolved":false,"context_lines":[{"line_number":19,"context_line":"prior to submitting a patch. There are multiple test targets that can be run"},{"line_number":20,"context_line":"to validate the code::"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    * tox -e [py26] [py27] [py33] [py34] - traditional unit testing"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":".. note::"},{"line_number":25,"context_line":"  The unit test environment setup should be done on a clean installed VM, or"}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_28ff6d68","line":22,"updated":"2015-11-05 17:10:17.000000000","message":"ditto","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":17270,"name":"Sergii Turivnyi","email":"sturivnyi@mirantis.com","username":"sturivnyi"},"change_message_id":"4eef53372d0e45ed6682e29e2a1c94e0ba2fb3a1","unresolved":false,"context_lines":[{"line_number":19,"context_line":"prior to submitting a patch. There are multiple test targets that can be run"},{"line_number":20,"context_line":"to validate the code::"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    * tox -e [py26] [py27] [py33] [py34] - traditional unit testing"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":".. note::"},{"line_number":25,"context_line":"  The unit test environment setup should be done on a clean installed VM, or"}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_d02d03ff","line":22,"in_reply_to":"fa80f949_28ff6d68","updated":"2015-11-06 14:06:18.000000000","message":"Done","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"964e9c0f7e1c8ce0884ddbed03fdc229229762bb","unresolved":false,"context_lines":[{"line_number":30,"context_line":"Functional Testing"},{"line_number":31,"context_line":".................."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Functional testing assumes the existence of a script run_functional.sh in the"},{"line_number":34,"context_line":"python-ironicclient/tools directory. The script run_functional.sh generates"},{"line_number":35,"context_line":"test.conf file. To run functional tests just run ./run_functional.sh"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_08514962","line":33,"updated":"2015-11-05 17:10:17.000000000","message":"s/of a script/of the script/","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":17270,"name":"Sergii Turivnyi","email":"sturivnyi@mirantis.com","username":"sturivnyi"},"change_message_id":"4eef53372d0e45ed6682e29e2a1c94e0ba2fb3a1","unresolved":false,"context_lines":[{"line_number":30,"context_line":"Functional Testing"},{"line_number":31,"context_line":".................."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Functional testing assumes the existence of a script run_functional.sh in the"},{"line_number":34,"context_line":"python-ironicclient/tools directory. The script run_functional.sh generates"},{"line_number":35,"context_line":"test.conf file. To run functional tests just run ./run_functional.sh"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_504273af","line":33,"in_reply_to":"fa80f949_08514962","updated":"2015-11-06 14:06:18.000000000","message":"Done","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"964e9c0f7e1c8ce0884ddbed03fdc229229762bb","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"Also, the test.conf file could be created manually or generated from"},{"line_number":38,"context_line":"environment variables. It assumes the existence of an openstack"},{"line_number":39,"context_line":"cloud installation with an admin credentials. The test.conf file lives in"},{"line_number":40,"context_line":"ironicclient/tests/functional/ directory. To run functional tests in that way"},{"line_number":41,"context_line":"create test.conf manually and do::"},{"line_number":42,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_6896d5f1","line":39,"updated":"2015-11-05 17:10:17.000000000","message":"s/with an admin/along with admin/","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":17270,"name":"Sergii Turivnyi","email":"sturivnyi@mirantis.com","username":"sturivnyi"},"change_message_id":"4eef53372d0e45ed6682e29e2a1c94e0ba2fb3a1","unresolved":false,"context_lines":[{"line_number":36,"context_line":""},{"line_number":37,"context_line":"Also, the test.conf file could be created manually or generated from"},{"line_number":38,"context_line":"environment variables. It assumes the existence of an openstack"},{"line_number":39,"context_line":"cloud installation with an admin credentials. The test.conf file lives in"},{"line_number":40,"context_line":"ironicclient/tests/functional/ directory. To run functional tests in that way"},{"line_number":41,"context_line":"create test.conf manually and do::"},{"line_number":42,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_b00f1f87","line":39,"in_reply_to":"fa80f949_6896d5f1","updated":"2015-11-06 14:06:18.000000000","message":"Done","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"964e9c0f7e1c8ce0884ddbed03fdc229229762bb","unresolved":false,"context_lines":[{"line_number":40,"context_line":"ironicclient/tests/functional/ directory. To run functional tests in that way"},{"line_number":41,"context_line":"create test.conf manually and do::"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    * tox -e functional - live functional testing against an existing openstack"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"An example test.conf file::"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_c8d7c1eb","line":43,"updated":"2015-11-05 17:10:17.000000000","message":"Ditto","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":17270,"name":"Sergii Turivnyi","email":"sturivnyi@mirantis.com","username":"sturivnyi"},"change_message_id":"4eef53372d0e45ed6682e29e2a1c94e0ba2fb3a1","unresolved":false,"context_lines":[{"line_number":40,"context_line":"ironicclient/tests/functional/ directory. To run functional tests in that way"},{"line_number":41,"context_line":"create test.conf manually and do::"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    * tox -e functional - live functional testing against an existing openstack"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"An example test.conf file::"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":19,"id":"fa80f949_f0ce072d","line":43,"in_reply_to":"fa80f949_c8d7c1eb","updated":"2015-11-06 14:06:18.000000000","message":"Done","commit_id":"892b31c69fd14e8162f60a637febde7dd52d1ca0"},{"author":{"_account_id":14810,"name":"Kan","email":"sofaopenstack@gmail.com","username":"Kan"},"change_message_id":"3613c199ad05b5841aaabaa7aafd06350d8bf741","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"Functional testing assumes the existence of the script run_functional.sh in the"},{"line_number":34,"context_line":"python-ironicclient/tools directory. The script run_functional.sh generates"},{"line_number":35,"context_line":"test.conf file. To run functional tests just run ./run_functional.sh"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"Also, the test.conf file could be created manually or generated from"},{"line_number":38,"context_line":"environment variables. It assumes the existence of an openstack"}],"source_content_type":"text/x-rst","patch_set":20,"id":"da85f559_34f283d3","line":35,"updated":"2015-11-10 06:25:34.000000000","message":"nit: Should end with \u0027.\u0027.","commit_id":"2c29598cfe5fda54a288eeea462998ed2e690fa2"},{"author":{"_account_id":14810,"name":"Kan","email":"sofaopenstack@gmail.com","username":"Kan"},"change_message_id":"3613c199ad05b5841aaabaa7aafd06350d8bf741","unresolved":false,"context_lines":[{"line_number":38,"context_line":"environment variables. It assumes the existence of an openstack"},{"line_number":39,"context_line":"cloud installation along with admin credentials. The test.conf file lives in"},{"line_number":40,"context_line":"ironicclient/tests/functional/ directory. To run functional tests in that way"},{"line_number":41,"context_line":"create test.conf manually and do::"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    * tox -e functional"},{"line_number":44,"context_line":""}],"source_content_type":"text/x-rst","patch_set":20,"id":"da85f559_d4b777f3","line":41,"updated":"2015-11-10 06:25:34.000000000","message":"s/do/run","commit_id":"2c29598cfe5fda54a288eeea462998ed2e690fa2"},{"author":{"_account_id":14810,"name":"Kan","email":"sofaopenstack@gmail.com","username":"Kan"},"change_message_id":"3613c199ad05b5841aaabaa7aafd06350d8bf741","unresolved":false,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":"If you are testing ironic in standalone mode, only the parameters"},{"line_number":55,"context_line":"\u0027auth_strategy\u0027, \u0027os_auth_token\u0027 and \u0027ironic_url\u0027 are required;"},{"line_number":56,"context_line":"all others will be ignored"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"An example test.conf file for standalone host::"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":20,"id":"da85f559_54edc7ed","line":56,"updated":"2015-11-10 06:25:34.000000000","message":"ditto","commit_id":"2c29598cfe5fda54a288eeea462998ed2e690fa2"},{"author":{"_account_id":14810,"name":"Kan","email":"sofaopenstack@gmail.com","username":"Kan"},"change_message_id":"0c692cb41a8dd14f4c9e1af3e542d0517c933c1f","unresolved":false,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":"If you are testing ironic in standalone mode, only the parameters"},{"line_number":55,"context_line":"\u0027auth_strategy\u0027, \u0027os_auth_token\u0027 and \u0027ironic_url\u0027 are required;"},{"line_number":56,"context_line":"all others will be ignored"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"An example test.conf file for standalone host::"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":20,"id":"da85f559_94780f2d","line":56,"in_reply_to":"da85f559_54edc7ed","updated":"2015-11-10 06:26:09.000000000","message":"nit: Should end with \u0027.\u0027.","commit_id":"2c29598cfe5fda54a288eeea462998ed2e690fa2"},{"author":{"_account_id":9068,"name":"Yuriy Yekovenko","email":"yyekovenko@mirantis.com","username":"yyekovenko"},"change_message_id":"aaa19fca6cfeaab7d87646948e2048a1dc7a8669","unresolved":false,"context_lines":[{"line_number":15,"context_line":"Unit Testing"},{"line_number":16,"context_line":"............"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"It is strongly encouraged to run the unit tests locally under one or more"},{"line_number":19,"context_line":"prior to submitting a patch. There are multiple test targets that can be run"},{"line_number":20,"context_line":"to validate the code::"},{"line_number":21,"context_line":""}],"source_content_type":"text/x-rst","patch_set":24,"id":"da85f559_c9a98791","line":18,"updated":"2015-11-12 15:27:58.000000000","message":"Looks like \"Python versions\" phrase is missed (just after \"one or more\").","commit_id":"e288ee2088308531dad395f9359333002af8de25"},{"author":{"_account_id":13636,"name":"aarefiev","display_name":"Anton","email":"arefyevanton@gmail.com","username":"aarefiev"},"change_message_id":"c262fc3b2daa4bcef0c67b9cd251ad388d85c71d","unresolved":false,"context_lines":[{"line_number":15,"context_line":"Unit Testing"},{"line_number":16,"context_line":"............"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"It is strongly encouraged to run the unit tests locally under one or more"},{"line_number":19,"context_line":"prior to submitting a patch. There are multiple test targets that can be run"},{"line_number":20,"context_line":"to validate the code::"},{"line_number":21,"context_line":""}],"source_content_type":"text/x-rst","patch_set":24,"id":"da85f559_0c4d5d99","line":18,"in_reply_to":"da85f559_c9a98791","updated":"2015-11-12 15:46:31.000000000","message":"nice catch","commit_id":"e288ee2088308531dad395f9359333002af8de25"},{"author":{"_account_id":14760,"name":"John L. Villalovos","email":"openstack.org@sodarock.com","username":"jlvillal"},"change_message_id":"3f43b75e6c3d36cc268c08eed9d25e3bd4133ff7","unresolved":false,"context_lines":[{"line_number":15,"context_line":"Unit Testing"},{"line_number":16,"context_line":"............"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"It is strongly encouraged to run the unit tests locally under one or more"},{"line_number":19,"context_line":"prior to submitting a patch. There are multiple test targets that can be run"},{"line_number":20,"context_line":"to validate the code::"},{"line_number":21,"context_line":""}],"source_content_type":"text/x-rst","patch_set":25,"id":"da85f559_69f65b5e","line":18,"updated":"2015-11-12 15:34:33.000000000","message":"Please fix comment from patch set 24. Thanks.","commit_id":"b5284fbbde4f7737f227994ad654cb8cb91f0169"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5949561fd851e1292567f38780c061470f9a45c5","unresolved":false,"context_lines":[{"line_number":10,"context_line":"All code has to pass the pep8 style guideline to merge into OpenStack, to"},{"line_number":11,"context_line":"validate the code against these guidelines you can run::"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"  * tox -e pep8"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Unit Testing"},{"line_number":16,"context_line":"............"}],"source_content_type":"text/x-rst","patch_set":26,"id":"da85f559_dc5a7e50","line":13,"updated":"2015-11-13 10:04:18.000000000","message":"please remove this star, it renders weirdly, I\u0027m afraid people will copy it and try to execute","commit_id":"a8203640a5dcebf285e2aab9e9ab9e50e0fb0cff"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5949561fd851e1292567f38780c061470f9a45c5","unresolved":false,"context_lines":[{"line_number":19,"context_line":"Python versions prior to submitting a patch. There are multiple test targets"},{"line_number":20,"context_line":"that can be run to validate the code::"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    * tox -e [py26] [py27] [py33] [py34]"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":".. note::"},{"line_number":25,"context_line":"  The unit test environment setup should be done on a clean installed VM, or"}],"source_content_type":"text/x-rst","patch_set":26,"id":"da85f559_7c57d226","line":22,"updated":"2015-11-13 10:04:18.000000000","message":"1. ditto\n\n2. I\u0027m surprised this whole document doesn\u0027t mention just running tox\n\n3. it looks like the following is possible:\n\n tox -e py27 py34\n\nthis is not correct, the correct line is:\n\n tox -epy27,py34","commit_id":"a8203640a5dcebf285e2aab9e9ab9e50e0fb0cff"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"5aa1443b6437bf8b2246439bbdd632ba880c9dda","unresolved":false,"context_lines":[{"line_number":19,"context_line":"Python versions prior to submitting a patch. There are multiple test targets"},{"line_number":20,"context_line":"that can be run to validate the code::"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    * tox -e [py26] [py27] [py33] [py34]"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":".. note::"},{"line_number":25,"context_line":"  The unit test environment setup should be done on a clean installed VM, or"}],"source_content_type":"text/x-rst","patch_set":26,"id":"da85f559_968cce36","line":22,"in_reply_to":"da85f559_7c57d226","updated":"2015-11-13 12:11:08.000000000","message":"I had a draft comment that I never got round to summiting on an earlier patch, I think it should be something like:\n\n    ...under one or more test environments prior to submitting a patch. To run all the recommended environments sequentially, run:: \n\n        tox\n\n    You can also selectively pick specific test environments by listing your choosen environments after a -e flag::\n\n        tox -e py26,py27,py33,py34\n\nI picked test environments over python versions because not all tox environments simply change python version :)","commit_id":"a8203640a5dcebf285e2aab9e9ab9e50e0fb0cff"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5949561fd851e1292567f38780c061470f9a45c5","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":".. note::"},{"line_number":25,"context_line":"  The unit test environment setup should be done on a clean installed VM, or"},{"line_number":26,"context_line":"  inside a python virtual environment. Sharing the environment with devstack"},{"line_number":27,"context_line":"  testing is not recommended due to conflicting configuration with system"},{"line_number":28,"context_line":"  dependencies."},{"line_number":29,"context_line":""}],"source_content_type":"text/x-rst","patch_set":26,"id":"da85f559_1c16c655","line":26,"updated":"2015-11-13 10:04:18.000000000","message":"I don\u0027t get this one. You can have a unit test environment just on your laptop, tox takes care of virtual environments.","commit_id":"a8203640a5dcebf285e2aab9e9ab9e50e0fb0cff"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"5949561fd851e1292567f38780c061470f9a45c5","unresolved":false,"context_lines":[{"line_number":40,"context_line":"ironicclient/tests/functional/ directory. To run functional tests in that way"},{"line_number":41,"context_line":"create test.conf manually and run::"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"    * tox -e functional"},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"An example test.conf file::"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":26,"id":"da85f559_9c02b60a","line":43,"updated":"2015-11-13 10:04:18.000000000","message":"ditto about a star","commit_id":"a8203640a5dcebf285e2aab9e9ab9e50e0fb0cff"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"df47df542913393eafbcdbe027e89225e04efb70","unresolved":false,"context_lines":[{"line_number":19,"context_line":"test environments prior to submitting a patch. To run all the recommended"},{"line_number":20,"context_line":"environments sequentially, run::"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    tox -e py26, py27, py33, py34"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":".. note::"},{"line_number":25,"context_line":"  Tox sets up virtual environment and installs all necessary dependencies."}],"source_content_type":"text/x-rst","patch_set":27,"id":"da85f559_40af6f94","line":22,"updated":"2015-11-13 15:14:54.000000000","message":"There should be no spaces between environments.","commit_id":"fd196f4da6ea3fe7f19f12f7a9f4c1fa9f831d5d"},{"author":{"_account_id":6637,"name":"Sam Betts","email":"sam@code-smash.net","username":"sambetts"},"change_message_id":"9de3e937c4d07596ea48cc6f2bb448fc22ac453a","unresolved":false,"context_lines":[{"line_number":20,"context_line":"environments sequentially, run::"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    tox -e py26,py27,py33,py34"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":".. note::"},{"line_number":25,"context_line":"  Tox sets up virtual environment and installs all necessary dependencies."},{"line_number":26,"context_line":"  Sharing the environment with devstack testing is not recommended due to"}],"source_content_type":"text/x-rst","patch_set":28,"id":"da85f559_bba0cda6","line":23,"updated":"2015-11-13 15:53:22.000000000","message":"I still think that this should mention running tox without any flags, as per my comment on patch set 26.","commit_id":"f4cee37aaf2f101a60f178d4ce08c0b9dc264e02"},{"author":{"_account_id":12356,"name":"Vladyslav Drok","email":"vdrok@mirantis.com","username":"vdrok"},"change_message_id":"d1c40db268e2b0dfbc3e68f156f70dc7e6bc3948","unresolved":false,"context_lines":[{"line_number":19,"context_line":"test environments prior to submitting a patch. To run all the recommended"},{"line_number":20,"context_line":"environments sequentially, run::"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"    tox"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"You can also selectively pick specific test environments by listing your"},{"line_number":25,"context_line":"chosen environments after a -e flag::"}],"source_content_type":"text/x-rst","patch_set":29,"id":"ba8a016a_c47ca974","line":22,"updated":"2015-11-17 17:06:29.000000000","message":"This will also run pep8.","commit_id":"451cf8d5ec2ae8d55b48b1dbeb8f73806cdc563b"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"f6aa3e09b94bd8be4c0cf910fee8b6a7a595689c","unresolved":false,"context_lines":[{"line_number":24,"context_line":"You can also selectively pick specific test environments by listing your"},{"line_number":25,"context_line":"chosen environments after a -e flag::"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"    tox -e py26,py27,py33,py34"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":".. note::"},{"line_number":30,"context_line":"  Tox sets up virtual environment and installs all necessary dependencies."}],"source_content_type":"text/x-rst","patch_set":29,"id":"ba8a016a_95cd695f","line":27,"updated":"2015-11-17 17:54:35.000000000","message":"We\u0027re dropping python 2.6 support right now, could you please also remove it here? :)\n\nMight be worth adding pep8 here, too.","commit_id":"451cf8d5ec2ae8d55b48b1dbeb8f73806cdc563b"}]}
