)]}'
{"id":"openstack%2Fironic-python-agent~844933","triplet_id":"openstack%2Fironic-python-agent~stable%2Fxena~I0fd6356f036d5ff17510fb838eaf418164cdfc92","project":"openstack/ironic-python-agent","branch":"stable/xena","attention_set":{},"removed_from_attention_set":{"23851":{"account":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"last_update":"2022-06-10 11:12:12.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I0fd6356f036d5ff17510fb838eaf418164cdfc92","subject":"Multipath Hardware path handling","status":"MERGED","created":"2022-06-07 09:45:26.000000000","updated":"2022-06-10 11:13:26.000000000","submitted":"2022-06-10 11:12:12.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":"844933","cherry_pick_of_change":837039,"cherry_pick_of_patch_set":19,"meta_rev_id":"d9148979f18b1a83c793c0cb1128ea0c0b7f6268","_number":844933,"virtual_id_number":844933,"owner":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:gate","value":2,"date":"2022-06-10 11:12:11.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"value":0,"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}],"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":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"all":[{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2022-06-10 09:36:27.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"value":2,"date":"2022-06-10 09:40:01.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}],"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":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"all":[{"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"},{"value":1,"date":"2022-06-10 09:40:01.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"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"},{"value":0,"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}],"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":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"CC":[{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2022-06-07 09:45:26.000000000","updated_by":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"reviewer":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"state":"CC"},{"updated":"2022-06-07 09:47:45.000000000","updated_by":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"reviewer":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"state":"CC"},{"updated":"2022-06-07 09:47:45.000000000","updated_by":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"reviewer":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"state":"CC"},{"updated":"2022-06-07 11:42:01.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"},{"updated":"2022-06-10 09:36:27.000000000","updated_by":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"reviewer":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"state":"REVIEWER"},{"updated":"2022-06-10 09:40:01.000000000","updated_by":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"reviewer":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"state":"REVIEWER"}],"messages":[{"id":"f95f185faf5f25d57cf1f69a241c4871fd4d9c81","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"date":"2022-06-07 09:45:26.000000000","message":"Patch Set 1: Cherry Picked from branch master.\n\nThe following files contain Git conflicts:\n* ironic_python_agent/tests/unit/test_utils.py\n* ironic_python_agent/utils.py","accounts_in_message":[],"_revision_number":1},{"id":"6977ea1e5d3e828a8e53f6aae99e7c6fb7a231d0","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"date":"2022-06-07 09:47:27.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"8313c95453c0870cf5d1c4e94dba9e42798ab795","author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"date":"2022-06-07 09:47:45.000000000","message":"Patch Set 2:\n\nThis change is ready for review.","accounts_in_message":[],"_revision_number":2},{"id":"6b593169232ddfd6b09392a6d71281cce8c0863c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-06-07 11:42:01.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\n\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/4a937929a7ca4a2ca93cfac487920000 : FAILURE in 5m 18s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/a972f06ad96042b083778a9764ca22c1 : SUCCESS in 4m 02s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/f495efb4346748088e844f684726b645 : FAILURE in 4m 19s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/deb327b33e894bcb8248b65487c3ca81 : FAILURE in 4m 23s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/2b107048b38544409193eeba25b98122 : FAILURE in 4m 46s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/637c11a0619c4028bf8284bcfb769d3a : SUCCESS in 5m 43s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/da4b329f285d4492bd25587baf8d396c : SUCCESS in 3m 36s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/7e264eddfc1941d69b913729865cba78 : SUCCESS in 4m 08s\n- ipa-tox-examples https://zuul.opendev.org/t/openstack/build/2b50bae3f0a04ffdac42ac86dcbc61e8 : SUCCESS in 3m 40s\n- ipa-tempest-bios-ipmi-direct-src https://zuul.opendev.org/t/openstack/build/e52c7fb2b0724954b0c90a2c1b9f3fe9 : SUCCESS in 1h 22m 59s\n- ipa-tempest-uefi-redfish-vmedia-src https://zuul.opendev.org/t/openstack/build/571b0e726c9d4c93b6168c327584a00b : SUCCESS in 1h 29m 39s\n- ironic-standalone-ipa-src https://zuul.opendev.org/t/openstack/build/c8c8f7b332a74042b45f2fc7dd532eba : SUCCESS in 1h 14m 47s\n- metalsmith-integration-ipa-src https://zuul.opendev.org/t/openstack/build/8771738324b747778842589f494493bf : SUCCESS in 1h 11m 19s\n- metalsmith-integration-ipa-src-uefi https://zuul.opendev.org/t/openstack/build/65e104e3d3504d05bbed6ac14b6eebf4 : SUCCESS in 1h 47m 45s (non-voting)\n- ironic-python-agent-check-image-tinyipa https://zuul.opendev.org/t/openstack/build/4dd93cafd28f4955b7d3b1210f63e007 : SUCCESS in 15m 32s (non-voting)\n- ironic-python-agent-check-image-dib-centos8 https://zuul.opendev.org/t/openstack/build/cca3e67210a540d3a469e7ac71d711d1 : SUCCESS in 15m 43s (non-voting)\n- ipa-tempest-ironic-inspector-src https://zuul.opendev.org/t/openstack/build/911b0106116c47e489af4479a26c535b : SUCCESS in 1h 52m 10s (non-voting)\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/6ad5cdc6af9d447592ff0e1363697529 : SUCCESS in 3m 31s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"2e9c5ad8cae2b9303547ad53892a71ad611ae025","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"date":"2022-06-09 13:21:38.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"a974bf423618e729c93322ce5b74360c4d8a7d1c","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-06-09 15:42:22.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/77be60c303b94306ab15539f62701c38 : SUCCESS in 4m 07s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d82b58084b8f4e0e9c38bd3bbdd28527 : SUCCESS in 3m 16s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/1b0774dcf4814e6fa339009fefef8fc3 : SUCCESS in 4m 38s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/5b021b9eaa434734adcbbe71e69d61ae : SUCCESS in 4m 18s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/c12e43f4a7d14a5995e7388e1b59c575 : SUCCESS in 4m 01s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/a85e89d56a4c49b8b1cb8670b5b3a4f5 : SUCCESS in 5m 46s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/08e11e83cbde4c71bd0890c46b8f3b36 : SUCCESS in 3m 21s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/8e6f26492d584ff3b5332e41dfbb2613 : SUCCESS in 3m 50s\n- ipa-tox-examples https://zuul.opendev.org/t/openstack/build/feab54fe7298481b907a566be16f54a5 : SUCCESS in 3m 44s\n- ipa-tempest-bios-ipmi-direct-src https://zuul.opendev.org/t/openstack/build/97b628da1cb84c57854bd27417d0364b : SUCCESS in 1h 17m 32s\n- ipa-tempest-uefi-redfish-vmedia-src https://zuul.opendev.org/t/openstack/build/b10dcb82dc334175848e988cfd546adf : SUCCESS in 1h 38m 59s\n- ironic-standalone-ipa-src https://zuul.opendev.org/t/openstack/build/808d7d177d7b4e2b91ddce86cc89957c : SUCCESS in 52m 28s\n- metalsmith-integration-ipa-src https://zuul.opendev.org/t/openstack/build/9e6aa18fee4d4f84b7327236fc4a3772 : SUCCESS in 1h 05m 24s\n- metalsmith-integration-ipa-src-uefi https://zuul.opendev.org/t/openstack/build/7a195da56ad84bdb8be02668268647e0 : SUCCESS in 1h 25m 03s (non-voting)\n- ironic-python-agent-check-image-tinyipa https://zuul.opendev.org/t/openstack/build/e7b2771be7444affb2ce5d86f0fa6a30 : SUCCESS in 14m 25s (non-voting)\n- ironic-python-agent-check-image-dib-centos8 https://zuul.opendev.org/t/openstack/build/099357d01a2d4999b86808428882a6b3 : SUCCESS in 12m 54s (non-voting)\n- ipa-tempest-ironic-inspector-src https://zuul.opendev.org/t/openstack/build/dfc9195685724b91a8f051e55acb04f1 : SUCCESS in 1h 57m 55s (non-voting)\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/9e40cf5485284a3c9d9ad16348040943 : SUCCESS in 3m 27s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"47bf6cc3c47d793161b653a6451d83f8c817e50b","author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"date":"2022-06-10 09:36:27.000000000","message":"Patch Set 3: Code-Review+2","accounts_in_message":[],"_revision_number":3},{"id":"517ab386030d13ef05ae4fdf0ded3b4278181783","author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"date":"2022-06-10 09:40:01.000000000","message":"Patch Set 3: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":3},{"id":"4864af8475d7a0f493caf7500c5731a35a9e6e9d","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-06-10 09:40:56.000000000","message":"Patch Set 3: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":3},{"id":"f5ef9faec5fadfe4b797ba52ef205d9874a40fc8","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-06-10 11:12:11.000000000","message":"Patch Set 3: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3b0b21952ba747e7801b5605ca0048a9 : SUCCESS in 3m 03s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/bd78e18ea93d4c0bb5ca45dc334b7d45 : SUCCESS in 3m 40s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/fdd193cef6e142c58de7872cd9fccec9 : SUCCESS in 3m 31s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/0a4d18218bba4d4f8c680aa85d9d5358 : SUCCESS in 5m 24s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/31fb8533617943878309a11d44f6f556 : SUCCESS in 3m 56s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/76eb1890bbe3435b943fad1789a08c4b : SUCCESS in 3m 33s\n- ipa-tempest-bios-ipmi-direct-src https://zuul.opendev.org/t/openstack/build/dcced14904ad4360b0882ccd508d1943 : SUCCESS in 1h 24m 37s\n- ipa-tempest-uefi-redfish-vmedia-src https://zuul.opendev.org/t/openstack/build/0e609eb881384b768ea10dd2fab3ce0a : SUCCESS in 1h 22m 58s\n- metalsmith-integration-ipa-src https://zuul.opendev.org/t/openstack/build/66b7a67c0fe943dabcd8a258ace215bd : SUCCESS in 1h 31m 05s\n- ironic-standalone-ipa-src https://zuul.opendev.org/t/openstack/build/44019e0f486b44aba35b05fc8ac02b43 : SUCCESS in 1h 10m 02s","accounts_in_message":[],"_revision_number":3},{"id":"c4bda5c0fd98de3ffe6b94450816a37a13090453","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-06-10 11:12:12.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":3},{"id":"d9148979f18b1a83c793c0cb1128ea0c0b7f6268","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-06-10 11:13:26.000000000","message":"Patch Set 3:\n\nBuild succeeded (promote pipeline).\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/0d53cfbc1407444db53dc27515c50ed0 : SUCCESS in 52s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/9c122d566dfa40afbc58b422a9f7f5a7 : SUCCESS in 45s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"faf2ee2df8ddf3cba80eaa8acbd8b0cf0225ee10","revisions":{"9210fea1e17916a5af152c621eadf5e1933c64af":{"kind":"REWORK","_number":1,"created":"2022-06-07 09:45:26.000000000","uploader":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"ref":"refs/changes/33/844933/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/33/844933/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/1"}}},"commit":{"parents":[{"commit":"3aa5928aa47726eee865705b1378f2494017595c","subject":"Merge \"Use a pre-defined partition UUID to detect configdrive on GPT\" into stable/xena","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/3aa5928aa47726eee865705b1378f2494017595c"}]}],"author":{"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","date":"2022-04-07 22:15:17.000000000","tz":-420},"committer":{"name":"Riccardo Pittau","email":"elfosardo@gmail.com","date":"2022-06-07 09:45:26.000000000","tz":0},"subject":"Multipath Hardware path handling","message":"Multipath Hardware path handling\n\nRemoves multipath base devices from consideration by\ndefault, and instead allows the device-mapper device\nmanaged by multipath to be picked up and utilized\ninstead.\n\nIn effect, allowing us to ignore standby paths *and*\nleverage multiple concurrent IO paths if so offered\nvia ALUA.\n\nIn reality, anyone who has previously built IPA with\nmultipath tooling might not have encountered issues\npreviously because they used Active/Active SAN storage\nenvironments. They would have worked because the IO lock\nwould have been exchanged between controllers and paths.\nHowever, Active/Passive environments will block passive\npaths from access, ultimately preventing new locks from\nbeing established without proper negotiation. Ultimately\nrequiring multipathing *and* the agent to be smart enough\nto know to disqualify underlying paths to backend storage\nvolumes.\n\nAn additional benefit of this is active/active MPIO devices\nwill, as long as ``multipath`` is present inside the ramdisk,\nno longer possibly result in duplicate IO wipes occuring\naccross numerous devices.\n\nStory: #2010003\nTask: #45108\nResolves: rhbz#2076622\nResolves: rhbz#2070519\nChange-Id: I0fd6356f036d5ff17510fb838eaf418164cdfc92\n(cherry picked from commit 014d37743a3b5694e0e2a3cabfafe885417172d5)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/9210fea1e17916a5af152c621eadf5e1933c64af"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/9210fea1e17916a5af152c621eadf5e1933c64af"}]},"branch":"refs/heads/stable/xena"},"9ec373fc9fe4fca36a1454e85662eda2b504664f":{"kind":"REWORK","_number":2,"created":"2022-06-07 09:47:27.000000000","uploader":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"ref":"refs/changes/33/844933/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/33/844933/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/2"}}},"commit":{"parents":[{"commit":"3aa5928aa47726eee865705b1378f2494017595c","subject":"Merge \"Use a pre-defined partition UUID to detect configdrive on GPT\" into stable/xena","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/3aa5928aa47726eee865705b1378f2494017595c"}]}],"author":{"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","date":"2022-04-07 22:15:17.000000000","tz":-420},"committer":{"name":"Riccardo Pittau","email":"elfosardo@gmail.com","date":"2022-06-07 09:47:22.000000000","tz":120},"subject":"Multipath Hardware path handling","message":"Multipath Hardware path handling\n\nRemoves multipath base devices from consideration by\ndefault, and instead allows the device-mapper device\nmanaged by multipath to be picked up and utilized\ninstead.\n\nIn effect, allowing us to ignore standby paths *and*\nleverage multiple concurrent IO paths if so offered\nvia ALUA.\n\nIn reality, anyone who has previously built IPA with\nmultipath tooling might not have encountered issues\npreviously because they used Active/Active SAN storage\nenvironments. They would have worked because the IO lock\nwould have been exchanged between controllers and paths.\nHowever, Active/Passive environments will block passive\npaths from access, ultimately preventing new locks from\nbeing established without proper negotiation. Ultimately\nrequiring multipathing *and* the agent to be smart enough\nto know to disqualify underlying paths to backend storage\nvolumes.\n\nAn additional benefit of this is active/active MPIO devices\nwill, as long as ``multipath`` is present inside the ramdisk,\nno longer possibly result in duplicate IO wipes occuring\naccross numerous devices.\n\nStory: #2010003\nTask: #45108\nResolves: rhbz#2076622\nResolves: rhbz#2070519\nChange-Id: I0fd6356f036d5ff17510fb838eaf418164cdfc92\n(cherry picked from commit 014d37743a3b5694e0e2a3cabfafe885417172d5)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/9ec373fc9fe4fca36a1454e85662eda2b504664f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/9ec373fc9fe4fca36a1454e85662eda2b504664f"}]},"branch":"refs/heads/stable/xena"},"faf2ee2df8ddf3cba80eaa8acbd8b0cf0225ee10":{"kind":"REWORK","_number":3,"created":"2022-06-09 13:21:38.000000000","uploader":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"ref":"refs/changes/33/844933/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/33/844933/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/33/844933/3"}}},"commit":{"parents":[{"commit":"345d45950f9175873897bcc510cd93177c9c6972","subject":"Collect a full lsblk output in the ramdisk logs","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/345d45950f9175873897bcc510cd93177c9c6972"}]}],"author":{"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","date":"2022-04-07 22:15:17.000000000","tz":-420},"committer":{"name":"Riccardo Pittau","email":"elfosardo@gmail.com","date":"2022-06-09 13:21:27.000000000","tz":120},"subject":"Multipath Hardware path handling","message":"Multipath Hardware path handling\n\nRemoves multipath base devices from consideration by\ndefault, and instead allows the device-mapper device\nmanaged by multipath to be picked up and utilized\ninstead.\n\nIn effect, allowing us to ignore standby paths *and*\nleverage multiple concurrent IO paths if so offered\nvia ALUA.\n\nIn reality, anyone who has previously built IPA with\nmultipath tooling might not have encountered issues\npreviously because they used Active/Active SAN storage\nenvironments. They would have worked because the IO lock\nwould have been exchanged between controllers and paths.\nHowever, Active/Passive environments will block passive\npaths from access, ultimately preventing new locks from\nbeing established without proper negotiation. Ultimately\nrequiring multipathing *and* the agent to be smart enough\nto know to disqualify underlying paths to backend storage\nvolumes.\n\nAn additional benefit of this is active/active MPIO devices\nwill, as long as ``multipath`` is present inside the ramdisk,\nno longer possibly result in duplicate IO wipes occuring\naccross numerous devices.\n\nStory: #2010003\nTask: #45108\nResolves: rhbz#2076622\nResolves: rhbz#2070519\nChange-Id: I0fd6356f036d5ff17510fb838eaf418164cdfc92\n(cherry picked from commit 014d37743a3b5694e0e2a3cabfafe885417172d5)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/faf2ee2df8ddf3cba80eaa8acbd8b0cf0225ee10"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/faf2ee2df8ddf3cba80eaa8acbd8b0cf0225ee10"}]},"branch":"refs/heads/stable/xena"}},"requirements":[],"submit_records":[{"status":"CLOSED","labels":[{"label":"Verified","status":"OK","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"OK","applied_by":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}},{"label":"Backport-Candidate","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Verified\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Workflow","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Workflow\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","status":"SATISFIED","is_legacy":true,"submittability_expression_result":{"expression":"label:Code-Review\u003dCustom-Rule","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dCustom-Rule"],"failing_atoms":[],"atom_explanations":{}}}]}
