)]}'
{"id":"openstack%2Fpython-novaclient~685981","triplet_id":"openstack%2Fpython-novaclient~stable%2Fstein~I0f9f75cba68e7582d32d4aab2f8f077b4360d386","project":"openstack/python-novaclient","branch":"stable/stein","topic":"bug/1845322","hashtags":[],"change_id":"I0f9f75cba68e7582d32d4aab2f8f077b4360d386","subject":"Stop silently ignoring invalid \u0027nova boot --hint\u0027 options","status":"MERGED","created":"2019-10-01 14:37:15.000000000","updated":"2019-10-03 09:40:59.000000000","submitted":"2019-10-03 09:39:20.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":"685981-1570095560905-2741a3e8","meta_rev_id":"c278b50fa2048ee1fcba976ed7a06b075bc10f58","_number":685981,"virtual_id_number":685981,"owner":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2019-10-03 09:39:20.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},{"value":0,"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},{"value":0,"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"}],"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":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2019-10-02 21:32:39.000000000","_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},{"value":2,"date":"2019-10-03 07:53:30.000000000","_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},{"value":1,"date":"2019-10-01 23:48:21.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"}],"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":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},{"value":1,"date":"2019-10-03 07:53:30.000000000","_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},{"value":0,"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},{"value":0,"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},{"value":0,"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"}],"values":{" 0":"Default Priority","+1":"Contributor Review Promise","+2":"Core Review Promise"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2019-10-01 23:48:21.000000000","updated_by":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"reviewer":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"state":"REVIEWER"},{"updated":"2019-10-02 21:32:39.000000000","updated_by":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"reviewer":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"state":"REVIEWER"},{"updated":"2019-10-03 07:53:30.000000000","updated_by":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"reviewer":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"state":"REVIEWER"},{"updated":"2019-10-03 09:39:20.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":"1d7f71bfa44fcc2b7e5148072fc34d22b0ce18f3","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2019-10-01 14:37:15.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"27c75111477200d3762abff7d5b592431a622d96","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2019-10-01 14:55:30.000000000","message":"Uploaded patch set 2: Commit message was updated.","accounts_in_message":[],"_revision_number":2},{"id":"74cb1fb48ec6d382c650db6120dd000879d0fde6","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2019-10-01 14:59:32.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"5afc9f3fc55585823c57a1f5d74ad91e5db5d81e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-10-01 16:41:11.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- tempest-full https://zuul.opendev.org/t/openstack/build/446033d9c62c40409c54f0313a6f3633 : SUCCESS in 1h 38m 10s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/cee00fdc053f4ce2a3b303d452715e51 : SUCCESS in 1h 16m 03s\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/ad27b62f93a745b490d7ecc0ea8a1600 : SUCCESS in 4m 36s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/ca2b48fcff3e4dc6a902de32e49a3bfb : SUCCESS in 5m 37s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/1e628b8724484d239701a0817faeb4aa : SUCCESS in 4m 13s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/64939d6ae9024ca78b512aa06f0f69d5 : SUCCESS in 3m 57s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/ebc180d466b34a9198db5bbd199201d0 : SUCCESS in 4m 40s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/6b41b471571c4254b8c0c0b39b261066 : SUCCESS in 3m 09s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/c3986d846d1d40078d63cd99180a89a4 : SUCCESS in 5m 33s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/5c0fe978fc7f439d8b341351091f51bb : SUCCESS in 3m 32s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/2559b7d2b32845a2b5dc49585863c68e : SUCCESS in 6m 12s\n- novaclient-dsvm-functional https://zuul.opendev.org/t/openstack/build/f8006c4e933541a88a54f55601a2200c : SUCCESS in 1h 07m 31s","accounts_in_message":[],"_revision_number":3},{"id":"284afe0830714babf6dcda10a2e1981c3eea333e","author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"date":"2019-10-01 23:48:21.000000000","message":"Patch Set 3: Code-Review+1\n\nClean backport. LGTM.","accounts_in_message":[],"_revision_number":3},{"id":"0594b64b811bab2d90711c3b4a838c07e8bb1cff","author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"date":"2019-10-02 21:32:39.000000000","message":"Patch Set 3: Code-Review+2\n\nYup, lgtm and the stable/train fix is merged.","accounts_in_message":[],"_revision_number":3},{"id":"a5a6dd7a9ef42102afcfaedf1f9450e578e9f33a","author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"date":"2019-10-03 07:53:30.000000000","message":"Patch Set 3: Code-Review+2 Workflow+1\n\nLGTM, clean, includes a releasenote and in stable/train.","accounts_in_message":[],"_revision_number":3},{"id":"6265428f931e742f21a5c60a6776f53092dcd5fe","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-10-03 07:53:42.000000000","message":"Patch Set 3: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":3},{"id":"54212d87212518bcfdff2d4f2a625e6e799159e1","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-10-03 09:39:20.000000000","message":"Patch Set 3: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- tempest-full https://zuul.opendev.org/t/openstack/build/cd1aea1f5b554c2d835745a6b227f279 : SUCCESS in 1h 43m 53s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/0e56df51657346a28ef690f0ed988312 : SUCCESS in 1h 25m 04s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/3ca364b13ce44eeabe5f856da9e1a63b : SUCCESS in 4m 46s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/7a0836988eec42ef9be009ce0d82d84e : SUCCESS in 3m 35s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/fa5b7c7657ce4c638426e10232abd738 : SUCCESS in 3m 29s\n- openstack-tox-py35 https://zuul.opendev.org/t/openstack/build/4bc590cc5dc048a8b003b49f504f5431 : SUCCESS in 4m 34s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/8ea4421102c24c5ca573257b373359e9 : SUCCESS in 3m 36s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/dce0b6d11f854988b4f13feac722f095 : SUCCESS in 5m 44s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/2806a2cbe5d044688a9f46b25f281429 : SUCCESS in 3m 25s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/cd12b4aca81547eeb34bbfeff1cfb714 : SUCCESS in 5m 44s\n- novaclient-dsvm-functional https://zuul.opendev.org/t/openstack/build/70791bcab5cd47db9b326a9a8cd2ea40 : SUCCESS in 59m 42s","accounts_in_message":[],"_revision_number":3},{"id":"4758ab1d375f10a59107be9c43414104f3e76ba3","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-10-03 09:39:20.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":3},{"id":"5ef9b4c1812be8ef52314a59559e7fe73938b5c4","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-10-03 09:40:59.000000000","message":"Patch Set 3:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/786a3574f59c4672af2f2b397fed93ef : SUCCESS in 56s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/39d032edd3d14540a2faacddf60ec9aa : SUCCESS in 1m 11s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"c7e793c22e72d4d426a6d10e9c2cfa426fedd365","revisions":{"7607b85db9ea5454d35834edf2fe74e5f5368a59":{"kind":"REWORK","_number":1,"created":"2019-10-01 14:37:15.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/81/685981/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-novaclient","ref":"refs/changes/81/685981/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/1"}}},"commit":{"parents":[{"commit":"e15cc789d9428cd03c2c5fbd6f5023522f2290cc","subject":"Use SHA256 instead of MD5 in completion cache","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/e15cc789d9428cd03c2c5fbd6f5023522f2290cc"}]}],"author":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2019-09-25 11:10:21.000000000","tz":60},"committer":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2019-10-01 14:36:51.000000000","tz":60},"subject":"Stop silently ignoring invalid \u0027nova boot --hint\u0027 options","message":"Stop silently ignoring invalid \u0027nova boot --hint\u0027 options\n\nThe \u0027--hint\u0027 option for \u0027nova boot\u0027 expects a key-value pair like so:\n\n  nova boot --hint group\u003d245e1dfe-2d0e-4139-80a9-fce124948896 ...\n\nHowever, the command doesn\u0027t complain if this isn\u0027t the case, meaning\ntypos like the below aren\u0027t indicated to the user:\n\n  nova boot --hint 245e1dfe-2d0e-4139-80a9-fce124948896\n\nDue to how we\u0027d implemented this here, this ultimately results in us\nPOSTing the following as part of the body to \u0027os-servers\u0027:\n\n  {\n    ...\n    \"OS-SCH-HNT:scheduler_hints\": {\n      \"245e1dfe-2d0e-4139-80a9-fce124948896\": null\n    }\n    ...\n  }\n\nWhich is unfortunately allowed and ignored by nova due to the use of\n\u0027additionalProperties\u0027 in the schema [1]\n\nDo what we do for loads of other options and explicitly fail on invalid\nvalues.\n\n[1] https://github.com/openstack/nova/blob/19.0.0/nova/api/openstack/compute/schemas/servers.py#L142-L146\n\nChange-Id: I0f9f75cba68e7582d32d4aab2f8f077b4360d386\nSigned-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e\nCloses-Bug: #1845322\n(cherry picked from commit 6954aacd54e85859fecde22ac04db1ce7601dd35)\n(cherry picked from commit 5ab4fd1e9d84cbe40d8075682c90a12ca4865e4d)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/7607b85db9ea5454d35834edf2fe74e5f5368a59"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/7607b85db9ea5454d35834edf2fe74e5f5368a59"}]},"branch":"refs/heads/stable/stein"},"c7c04dd728eaf79e1ebac7f2992d224b4c518f4f":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2019-10-01 14:55:30.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/81/685981/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-novaclient","ref":"refs/changes/81/685981/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/2"}}},"commit":{"parents":[{"commit":"e15cc789d9428cd03c2c5fbd6f5023522f2290cc","subject":"Use SHA256 instead of MD5 in completion cache","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/e15cc789d9428cd03c2c5fbd6f5023522f2290cc"}]}],"author":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2019-09-25 11:10:21.000000000","tz":60},"committer":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2019-10-01 14:55:12.000000000","tz":60},"subject":"Stop silently ignoring invalid \u0027nova boot --hint\u0027 options","message":"Stop silently ignoring invalid \u0027nova boot --hint\u0027 options\n\nThe \u0027--hint\u0027 option for \u0027nova boot\u0027 expects a key-value pair like so:\n\n  nova boot --hint group\u003d245e1dfe-2d0e-4139-80a9-fce124948896 ...\n\nHowever, the command doesn\u0027t complain if this isn\u0027t the case, meaning\ntypos like the below aren\u0027t indicated to the user:\n\n  nova boot --hint 245e1dfe-2d0e-4139-80a9-fce124948896\n\nDue to how we\u0027d implemented this here, this ultimately results in us\nPOSTing the following as part of the body to \u0027os-servers\u0027:\n\n  {\n    ...\n    \"OS-SCH-HNT:scheduler_hints\": {\n      \"245e1dfe-2d0e-4139-80a9-fce124948896\": null\n    }\n    ...\n  }\n\nWhich is unfortunately allowed and ignored by nova due to the use of\n\u0027additionalProperties\u0027 in the schema [1]\n\nDo what we do for loads of other options and explicitly fail on invalid\nvalues.\n\nNOTE(stephenfin): This includes the release note first added separately\nin change I753e9a0cda1e118578373c519cf2fb2dd605a623.\n\n[1] https://github.com/openstack/nova/blob/19.0.0/nova/api/openstack/compute/schemas/servers.py#L142-L146\n\nChange-Id: I0f9f75cba68e7582d32d4aab2f8f077b4360d386\nSigned-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e\nCloses-Bug: #1845322\n(cherry picked from commit 6954aacd54e85859fecde22ac04db1ce7601dd35)\n(cherry picked from commit fe889e3935fd3962b4d226b8a15e8c51614a6e32)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/c7c04dd728eaf79e1ebac7f2992d224b4c518f4f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/c7c04dd728eaf79e1ebac7f2992d224b4c518f4f"}]},"branch":"refs/heads/stable/stein"},"c7e793c22e72d4d426a6d10e9c2cfa426fedd365":{"kind":"REWORK","_number":3,"created":"2019-10-01 14:59:32.000000000","uploader":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"ref":"refs/changes/81/685981/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-novaclient","ref":"refs/changes/81/685981/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-novaclient refs/changes/81/685981/3"}}},"commit":{"parents":[{"commit":"e15cc789d9428cd03c2c5fbd6f5023522f2290cc","subject":"Use SHA256 instead of MD5 in completion cache","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/e15cc789d9428cd03c2c5fbd6f5023522f2290cc"}]}],"author":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2019-09-25 11:10:21.000000000","tz":60},"committer":{"name":"Stephen Finucane","email":"sfinucan@redhat.com","date":"2019-10-01 14:59:17.000000000","tz":60},"subject":"Stop silently ignoring invalid \u0027nova boot --hint\u0027 options","message":"Stop silently ignoring invalid \u0027nova boot --hint\u0027 options\n\nThe \u0027--hint\u0027 option for \u0027nova boot\u0027 expects a key-value pair like so:\n\n  nova boot --hint group\u003d245e1dfe-2d0e-4139-80a9-fce124948896 ...\n\nHowever, the command doesn\u0027t complain if this isn\u0027t the case, meaning\ntypos like the below aren\u0027t indicated to the user:\n\n  nova boot --hint 245e1dfe-2d0e-4139-80a9-fce124948896\n\nDue to how we\u0027d implemented this here, this ultimately results in us\nPOSTing the following as part of the body to \u0027os-servers\u0027:\n\n  {\n    ...\n    \"OS-SCH-HNT:scheduler_hints\": {\n      \"245e1dfe-2d0e-4139-80a9-fce124948896\": null\n    }\n    ...\n  }\n\nWhich is unfortunately allowed and ignored by nova due to the use of\n\u0027additionalProperties\u0027 in the schema [1]\n\nDo what we do for loads of other options and explicitly fail on invalid\nvalues.\n\nNOTE(stephenfin): This includes the release note first added separately\nin change I753e9a0cda1e118578373c519cf2fb2dd605a623.\n\n[1] https://github.com/openstack/nova/blob/19.0.0/nova/api/openstack/compute/schemas/servers.py#L142-L146\n\nChange-Id: I0f9f75cba68e7582d32d4aab2f8f077b4360d386\nSigned-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e\nCloses-Bug: #1845322\n(cherry picked from commit 6954aacd54e85859fecde22ac04db1ce7601dd35)\n(cherry picked from commit 33627242e8f845934bcc5affb616108a79d28cbe)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/c7e793c22e72d4d426a6d10e9c2cfa426fedd365"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/c7e793c22e72d4d426a6d10e9c2cfa426fedd365"}]},"branch":"refs/heads/stable/stein"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
