)]}'
{"id":"openstack%2Fnova~691880","triplet_id":"openstack%2Fnova~master~I9bb4a852ae282e1f603d5aeabc592dc70958001c","project":"openstack/nova","branch":"master","topic":"bug/1850437","hashtags":[],"change_id":"I9bb4a852ae282e1f603d5aeabc592dc70958001c","subject":"Fix changePassword adminPass\u003d\"\" broken schema validation","status":"ABANDONED","created":"2019-10-29 15:04:08.000000000","updated":"2019-10-29 15:21:37.000000000","total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"6d449e239e6bca25a721a30472d29b11a740f313","_number":691880,"virtual_id_number":691880,"owner":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"actions":{},"labels":{"Verified":{"all":[{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"date":"2019-10-29 15:07:12.000000000","_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]},{"date":"2019-10-29 15:21:30.000000000","_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"}],"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":{"disliked":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"all":[{"value":-1,"date":"2019-10-29 15:17:57.000000000","permitted_voting_range":{"min":-1,"max":1},"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"}],"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":{"all":[{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":-1,"max":0},"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"}],"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":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2019-10-29 15:07:12.000000000","updated_by":{"_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]},"reviewer":{"_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2019-10-29 15:17:57.000000000","updated_by":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"reviewer":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"state":"REVIEWER"}],"messages":[{"id":"19007e2f49f4b6ea220522fb0671f9edbd9cc269","author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"date":"2019-10-29 15:04:08.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"3a3c6d1a2fc9acb5e1825c60407e8d41228cf211","author":{"_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]},"date":"2019-10-29 15:05:16.000000000","message":"Patch Set 1:\n\nBuild succeeded (check pipeline).\n\n- tempest-dsvm-intel-nfv-xenial tempest-dsvm-intel-nfv-xenial : SKIPPED (non-voting)\n- tempest-dsvm-multinode-ovsdpdk-nfv-networking-xenial tempest-dsvm-multinode-ovsdpdk-nfv-networking-xenial : SKIPPED (non-voting)\n- tempest-dsvm-ovsdpdk-nfv-networking-xenial tempest-dsvm-ovsdpdk-nfv-networking-xenial : SKIPPED (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"33500bf9399e0f4d5faa2a6fa7da1a71931b28b7","author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"date":"2019-10-29 15:06:29.000000000","message":"Uploaded patch set 2: Commit message was updated.","accounts_in_message":[],"_revision_number":2},{"id":"40e5239b099fbf2195f6c6f97f1c52b0c6bf1799","author":{"_account_id":16376,"name":"Intel NFV CI","email":"openstack-nfv-ci@intel.com","username":"intel-nfv-ci","tags":["SERVICE_USER"]},"date":"2019-10-29 15:07:12.000000000","message":"Patch Set 2:\n\nBuild succeeded (check pipeline).\n\n- tempest-dsvm-intel-nfv-xenial tempest-dsvm-intel-nfv-xenial : SKIPPED (non-voting)\n- tempest-dsvm-multinode-ovsdpdk-nfv-networking-xenial tempest-dsvm-multinode-ovsdpdk-nfv-networking-xenial : SKIPPED (non-voting)\n- tempest-dsvm-ovsdpdk-nfv-networking-xenial tempest-dsvm-ovsdpdk-nfv-networking-xenial : SKIPPED (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"501e336f906b1e89dd977d51e221790381748bed","author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"date":"2019-10-29 15:17:27.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"da9bd83945719dffa8213575dc817b180548945a","author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"date":"2019-10-29 15:17:57.000000000","message":"Patch Set 2: Code-Review-1\n\nyeah, so unfortunately this would need a microversion :(","accounts_in_message":[],"_revision_number":2},{"id":"e4b94eea55b8cb1e16b264f6dc2a1350fe8dc1f8","author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"date":"2019-10-29 15:21:30.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"b77c7716977bed17bdee2594b6c9ee20d8683f0c","author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"date":"2019-10-29 15:21:37.000000000","message":"Abandoned\n\nYeah I\u0027m wrong, ignore me.","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"dfdd3d752e5f645635fcda9cb2c7f0072365e003","revisions":{"6ab7f0a8d30f08def1a2c003aad76b422b775419":{"kind":"REWORK","_number":1,"created":"2019-10-29 15:04:08.000000000","uploader":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"ref":"refs/changes/80/691880/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/80/691880/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/80/691880/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/80/691880/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/80/691880/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/80/691880/1"}}},"commit":{"parents":[{"commit":"44d3d5eb4c57dd86c4a7e0adb11ae620f176519a","subject":"Remove dead set_admin_password code to generate password","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/44d3d5eb4c57dd86c4a7e0adb11ae620f176519a"}]}],"author":{"name":"Matt Riedemann","email":"mriedem.os@gmail.com","date":"2019-10-29 14:54:18.000000000","tz":-240},"committer":{"name":"Matt Riedemann","email":"mriedem.os@gmail.com","date":"2019-10-29 15:03:31.000000000","tz":-240},"subject":"Fix changePassword adminPass\u003d\"\" broken schema validation","message":"Fix changePassword adminPass\u003d\"\" broken schema validation\n\nThe changePassword server action API requires that adminPass is\nspecified and the schema currently requires a non-none value, but\ndoes not enforce a minimum length which means you can change the\npassword to the empty string which is likely not what someone wants\nnor does it result in the server automatically generating a password\nand returning it to the user (there is no response body for this API).\n\nLooking back over git history, it looks like originally an empty string\nwas not allowed for adminPass [1] but because there as no unit test for\nthat case, it was regressed when the schema was applied [2]. That is\nalso clear here [3].\n\nThis change updates the changePassword schema to enforce a minimum length\nof 1 on the adminPass value. A new schema parameter type is defined rather\nthan adjusting the existing admin_password parameter type since that is\nalso used in the schema for the server create, evacuate, rebuild and rescue\nAPIs. It may be such that adminPass\u003d\"\" is also not valid for those other\nAPIs but that is not dealt with here to avoid making this simple change\noverly complicated.\n\nNote that a microversion should not be required here since it was a\nregression in the schema validation applied to the v2.1 API and an empty\npassword is essentially useless, if not actually dangerous if applied in\nthe guest.\n\n[1] I35fb73a47a58584ad6f8af78ffa087ecebde92a8\n[2] I97a412aa23db75e3d892a113733e732eeb8008c1\n[3] Ic88e6f600f09282cfb73bd6ccb7a89d34a7b0e59\n\nChange-Id: I9bb4a852ae282e1f603d5aeabc592dc70958001c\nCloses-Bug: #1850437\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/6ab7f0a8d30f08def1a2c003aad76b422b775419"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/6ab7f0a8d30f08def1a2c003aad76b422b775419"}]},"branch":"refs/heads/master"},"dfdd3d752e5f645635fcda9cb2c7f0072365e003":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2019-10-29 15:06:29.000000000","uploader":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"ref":"refs/changes/80/691880/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/nova","ref":"refs/changes/80/691880/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/nova refs/changes/80/691880/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/nova refs/changes/80/691880/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/nova refs/changes/80/691880/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/nova refs/changes/80/691880/2"}}},"commit":{"parents":[{"commit":"44d3d5eb4c57dd86c4a7e0adb11ae620f176519a","subject":"Remove dead set_admin_password code to generate password","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/44d3d5eb4c57dd86c4a7e0adb11ae620f176519a"}]}],"author":{"name":"Matt Riedemann","email":"mriedem.os@gmail.com","date":"2019-10-29 14:54:18.000000000","tz":-240},"committer":{"name":"Matt Riedemann","email":"mriedem.os@gmail.com","date":"2019-10-29 15:05:35.000000000","tz":-240},"subject":"Fix changePassword adminPass\u003d\"\" broken schema validation","message":"Fix changePassword adminPass\u003d\"\" broken schema validation\n\nThe changePassword server action API requires that adminPass is\nspecified and the schema currently requires a non-none value, but\ndoes not enforce a minimum length which means you can change the\npassword to the empty string which is likely not what someone wants\nnor does it result in the server automatically generating a password\nand returning it to the user (there is no response body for this API).\n\nLooking back over git history, it looks like originally an empty string\nwas not allowed for adminPass [1] but because there was no unit test for\nthat case, it was regressed when the schema was applied [2]. That is\nalso clear here [3].\n\nThis change updates the changePassword schema to enforce a minimum length\nof 1 on the adminPass value. A new schema parameter type is defined rather\nthan adjusting the existing admin_password parameter type since that is\nalso used in the schema for the server create, evacuate, rebuild and rescue\nAPIs. It may be such that adminPass\u003d\"\" is also not valid for those other\nAPIs but that is not dealt with here to avoid making this simple change\noverly complicated.\n\nNote that a microversion should not be required here since it was a\nregression in the schema validation applied to the v2.1 API and an empty\npassword is essentially useless, if not actually dangerous if applied in\nthe guest.\n\n[1] I35fb73a47a58584ad6f8af78ffa087ecebde92a8\n[2] I97a412aa23db75e3d892a113733e732eeb8008c1\n[3] Ic88e6f600f09282cfb73bd6ccb7a89d34a7b0e59\n\nChange-Id: I9bb4a852ae282e1f603d5aeabc592dc70958001c\nCloses-Bug: #1850437\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/dfdd3d752e5f645635fcda9cb2c7f0072365e003"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/nova/commit/dfdd3d752e5f645635fcda9cb2c7f0072365e003"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
