)]}'
{"id":"openstack%2Fpython-ironic-inspector-client~605035","triplet_id":"openstack%2Fpython-ironic-inspector-client~master~Ie11797d34fef6be6ecbdd30cc3ed43e92294b55c","project":"openstack/python-ironic-inspector-client","branch":"master","topic":"yaml","hashtags":[],"change_id":"Ie11797d34fef6be6ecbdd30cc3ed43e92294b55c","subject":"Support loading introspection rules from YAML files","status":"MERGED","created":"2018-09-25 10:45:41.000000000","updated":"2018-10-12 12:04:27.000000000","submitted":"2018-10-12 12:04:27.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"605035-1539345867098-7429cd21","meta_rev_id":"009f0ae0b0ec6a8e4043553f5c7613131bcc2ebc","_number":605035,"virtual_id_number":605035,"owner":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},{"value":0,"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},{"value":0,"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},{"value":2,"date":"2018-10-12 12:04:26.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"date":"2018-09-27 08:19:11.000000000","_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"recommended":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"all":[{"value":1,"date":"2018-10-06 00:45:12.000000000","permitted_voting_range":{"min":1,"max":2},"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},{"value":2,"date":"2018-10-12 10:54:03.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},{"value":2,"date":"2018-09-27 02:20:27.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","value":1,"default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"all":[{"value":0,"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},{"value":1,"date":"2018-10-12 10:54:03.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},{"value":0,"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},{"value":0,"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},{"value":0,"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"values":{"-1":"Do Not Backport"," 0":"Backport Review Needed","+1":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2018-09-27 02:20:27.000000000","updated_by":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"reviewer":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"state":"REVIEWER"},{"updated":"2018-10-06 00:45:12.000000000","updated_by":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"reviewer":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"state":"REVIEWER"},{"updated":"2018-10-12 10:54:03.000000000","updated_by":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"reviewer":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"state":"REVIEWER"},{"updated":"2018-10-12 12:04:26.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"58f88aeff94adcd6edd2c0de2bc01a0c854e746f","author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"date":"2018-09-25 10:45:41.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"bb40d1c03e970e15b012ac6f66b458c981d70bd3","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-09-25 13:53:15.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/35/605035/1/check/openstack-tox-pep8/e7acf5a/ : SUCCESS in 4m 50s\n- openstack-tox-py27 http://logs.openstack.org/35/605035/1/check/openstack-tox-py27/bb6625f/ : SUCCESS in 4m 32s\n- openstack-tox-py35 http://logs.openstack.org/35/605035/1/check/openstack-tox-py35/19ea911/ : SUCCESS in 4m 42s\n- build-openstack-sphinx-docs http://logs.openstack.org/35/605035/1/check/build-openstack-sphinx-docs/b7f9d19/html/ : SUCCESS in 6m 06s\n- requirements-check http://logs.openstack.org/35/605035/1/check/requirements-check/d6ee82e/ : SUCCESS in 4m 01s\n- build-openstack-releasenotes http://logs.openstack.org/35/605035/1/check/build-openstack-releasenotes/08e8099/html/ : SUCCESS in 4m 44s\n- openstackclient-check-plugins http://logs.openstack.org/35/605035/1/check/openstackclient-check-plugins/154fd55/ : SUCCESS in 6m 30s (non-voting)\n- openstack-tox-py36 http://logs.openstack.org/35/605035/1/check/openstack-tox-py36/ddf38a2/ : SUCCESS in 4m 47s\n- openstack-tox-docs http://logs.openstack.org/35/605035/1/check/openstack-tox-docs/414f406/html/ : SUCCESS in 4m 26s\n- openstack-tox-functional http://logs.openstack.org/35/605035/1/check/openstack-tox-functional/b06b7eb/ : SUCCESS in 6m 02s\n- python-ironic-inspector-client-tempest-dsvm http://logs.openstack.org/35/605035/1/check/python-ironic-inspector-client-tempest-dsvm/1b65e64/ : SUCCESS in 53m 18s\n- openstack-tox-lower-constraints http://logs.openstack.org/35/605035/1/check/openstack-tox-lower-constraints/eb65dfc/ : SUCCESS in 6m 10s","accounts_in_message":[],"_revision_number":1},{"id":"96517fedc7b56f75afa71112ff06c3e3345b8862","author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"date":"2018-09-26 03:36:29.000000000","message":"Patch Set 1: Code-Review+1\n\nThanks! I am just unsure about the encoding stuff with py2/3, it seems there is a slight difference, pyyaml deserializes strings to str, while json deserializes strings to unicode under py2.7 and str under py3.5. I wonder if it could break at inspector under py2.7?","accounts_in_message":[],"_revision_number":1},{"id":"9a68d8a54d3cc99cdf3590c41b2def3042d0840d","author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"date":"2018-09-26 11:05:54.000000000","message":"Patch Set 1:\n\nTried the introspection rule import command under python 2.7 and python 3.6, both seem to work.","accounts_in_message":[],"_revision_number":1},{"id":"d7d5bfd6a97309249893b760e3136a3ffa769cd1","author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"date":"2018-09-27 02:20:27.000000000","message":"Patch Set 1: Code-Review+2\n\nThank you Dmitry, I guess I can count on you :P\n\nIt seems there should be a change in lower-constraints in this patch, but it\u0027s already there, maybe it\u0027s copied from other project before.","accounts_in_message":[],"_revision_number":1},{"id":"4aad77d1c53228d121fa4171dfef54f425019205","author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"date":"2018-09-27 08:19:11.000000000","message":"Patch Set 1:\n\nYep, PyYAML was already pulled in by something.","accounts_in_message":[],"_revision_number":1},{"id":"3f65ef674f941bb6f00f1808f368ba3e885da4f5","author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"date":"2018-09-28 06:28:42.000000000","message":"Patch Set 1:\n\n\u003e Yep, PyYAML was already pulled in by something.\n\nHi, Dmitry, I just found ironic client has this support too [1], cool!\n\nSince json is a subset of yaml, I think we needn\u0027t treat them differently in the ironic client.\n\n[1] https://github.com/openstack/python-ironicclient/blob/master/ironicclient/v1/create_resources.py#L83-L87","accounts_in_message":[],"_revision_number":1},{"id":"e002b7f275534ddeacd59197cd54bb5904f3c138","author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"date":"2018-09-28 06:32:39.000000000","message":"Patch Set 1:\n\n.. and by using yaml uniformly, the restriction on filename extension can be relaxed. For the YAML, .yaml or .yml are all valid extentions.","accounts_in_message":[],"_revision_number":1},{"id":"0083036bb9e571251e9b13d4f31122e7c5da92ad","author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"date":"2018-10-06 00:45:12.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"3f23823a412c7bfcdc3a6b598b20a632ef23f542","author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"date":"2018-10-12 10:54:03.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"f8a7983ab1b788cac026aa6745bf25e509e44b8a","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-10-12 10:54:14.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"e8a638d2c4e9e93bdd8a7c01a42aea533dfb0689","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-10-12 12:04:26.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/35/605035/1/gate/openstack-tox-pep8/3f1755b/ : SUCCESS in 4m 16s\n- openstack-tox-py27 http://logs.openstack.org/35/605035/1/gate/openstack-tox-py27/480edf0/ : SUCCESS in 4m 18s\n- openstack-tox-py35 http://logs.openstack.org/35/605035/1/gate/openstack-tox-py35/1b5dd96/ : SUCCESS in 4m 27s\n- openstack-tox-py36 http://logs.openstack.org/35/605035/1/gate/openstack-tox-py36/8561ad2/ : SUCCESS in 4m 42s\n- openstack-tox-docs http://logs.openstack.org/35/605035/1/gate/openstack-tox-docs/c3da4ca/html/ : SUCCESS in 4m 36s\n- requirements-check http://logs.openstack.org/35/605035/1/gate/requirements-check/73ebeac/ : SUCCESS in 3m 39s\n- build-openstack-releasenotes http://logs.openstack.org/35/605035/1/gate/build-openstack-releasenotes/9a50a3b/html/ : SUCCESS in 4m 25s\n- openstack-tox-functional http://logs.openstack.org/35/605035/1/gate/openstack-tox-functional/98788ed/ : SUCCESS in 5m 29s\n- openstack-tox-functional-py35 http://logs.openstack.org/35/605035/1/gate/openstack-tox-functional-py35/8c7c258/ : SUCCESS in 5m 46s\n- python-ironic-inspector-client-tempest-dsvm http://logs.openstack.org/35/605035/1/gate/python-ironic-inspector-client-tempest-dsvm/679ee0c/ : SUCCESS in 59m 28s\n- openstack-tox-lower-constraints http://logs.openstack.org/35/605035/1/gate/openstack-tox-lower-constraints/9a11d90/ : SUCCESS in 5m 29s","accounts_in_message":[],"_revision_number":1},{"id":"c05b056f1b884589087bafe41ad55b51efda7191","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2018-10-12 12:04:27.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"30fb16c924592e6c41864bf789ed38ad8e10ffd9","revisions":{"30fb16c924592e6c41864bf789ed38ad8e10ffd9":{"kind":"REWORK","_number":1,"created":"2018-09-25 10:45:41.000000000","uploader":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"ref":"refs/changes/35/605035/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-ironic-inspector-client","ref":"refs/changes/35/605035/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-ironic-inspector-client refs/changes/35/605035/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-ironic-inspector-client refs/changes/35/605035/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-ironic-inspector-client refs/changes/35/605035/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-ironic-inspector-client refs/changes/35/605035/1"}}},"commit":{"parents":[{"commit":"87251a349968ca02887e08cc13ce4ed39ec4dcc1","subject":"add python 3.6 unit test job","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironic-inspector-client/commit/87251a349968ca02887e08cc13ce4ed39ec4dcc1"}]}],"author":{"name":"Dmitry Tantsur","email":"divius.inside@gmail.com","date":"2018-09-25 10:44:18.000000000","tz":120},"committer":{"name":"Dmitry Tantsur","email":"divius.inside@gmail.com","date":"2018-09-25 10:44:18.000000000","tz":120},"subject":"Support loading introspection rules from YAML files","message":"Support loading introspection rules from YAML files\n\nWriting introspection rules can be annoying, let\u0027s support YAML\nto make operator\u0027s life simpler.\n\nChange-Id: Ie11797d34fef6be6ecbdd30cc3ed43e92294b55c\nStory: #2003870\nTask: #26707\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironic-inspector-client/commit/30fb16c924592e6c41864bf789ed38ad8e10ffd9"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-ironic-inspector-client/commit/30fb16c924592e6c41864bf789ed38ad8e10ffd9"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
