)]}'
{"id":"openstack%2Fos-brick~856576","triplet_id":"openstack%2Fos-brick~stable%2Fwallaby~Ie373ab050dcc0a35c749d9a53b6cf5ca060bcb58","project":"openstack/os-brick","branch":"stable/wallaby","topic":"xena-symlink-stable/wallaby","attention_set":{},"removed_from_attention_set":{"5689":{"account":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"last_update":"2022-10-28 16:25:42.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Ie373ab050dcc0a35c749d9a53b6cf5ca060bcb58","subject":"Fix encryption symlink issues","status":"MERGED","created":"2022-09-09 05:58:26.000000000","updated":"2022-10-28 16:27:06.000000000","submitted":"2022-10-28 16:25:42.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"856576-xena-symlink-stable/wallaby","cherry_pick_of_change":846343,"cherry_pick_of_patch_set":1,"meta_rev_id":"2098a86b6d78aafc03f172b18e5d1e6b2761e42e","_number":856576,"virtual_id_number":856576,"owner":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2022-10-28 16:25:41.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"}],"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":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"all":[{"value":2,"date":"2022-10-28 14:42:12.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2022-10-28 14:44:02.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"}],"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":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"all":[{"value":0,"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2022-10-28 14:44:02.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"}],"values":{"-1":"Branch Freeze"," 0":"No Priority","+1":"Important Change","+2":"Gate Blocker Fix / Urgent Change"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"}],"CC":[{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},{"_account_id":27710,"name":"Cloudbase OSBrick Windows CI","email":"windows_osbrick_ci@cloudbasesolutions.com","username":"windows-osbrick-ci"},{"_account_id":32912,"name":"Pure Storage Third-Party CI","display_name":"Pure Storage Third-Party CI","email":"openstack-third-party-ci@purestorage.com","username":"purestorage-thirdparty-ci","status":"Doing CI things"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2022-09-09 05:58:26.000000000","updated_by":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"reviewer":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"state":"CC"},{"updated":"2022-09-09 07:26:53.000000000","updated_by":{"_account_id":27710,"name":"Cloudbase OSBrick Windows CI","email":"windows_osbrick_ci@cloudbasesolutions.com","username":"windows-osbrick-ci"},"reviewer":{"_account_id":27710,"name":"Cloudbase OSBrick Windows CI","email":"windows_osbrick_ci@cloudbasesolutions.com","username":"windows-osbrick-ci"},"state":"CC"},{"updated":"2022-09-09 08:16:03.000000000","updated_by":{"_account_id":32912,"name":"Pure Storage Third-Party CI","display_name":"Pure Storage Third-Party CI","email":"openstack-third-party-ci@purestorage.com","username":"purestorage-thirdparty-ci","status":"Doing CI things"},"reviewer":{"_account_id":32912,"name":"Pure Storage Third-Party CI","display_name":"Pure Storage Third-Party CI","email":"openstack-third-party-ci@purestorage.com","username":"purestorage-thirdparty-ci","status":"Doing CI things"},"state":"CC"},{"updated":"2022-09-09 08:20:32.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-10-28 14:42:12.000000000","updated_by":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"reviewer":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"state":"REVIEWER"},{"updated":"2022-10-28 14:44:02.000000000","updated_by":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"reviewer":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"state":"REVIEWER"}],"messages":[{"id":"fb25e7ccfe23b0f71a35af07cbcd3195f82b5431","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"date":"2022-09-09 05:58:26.000000000","message":"Patch Set 1: Cherry Picked from branch stable/xena.\n\nThe following files contain Git conflicts:\n* os_brick/initiator/connectors/iscsi.py","accounts_in_message":[],"_revision_number":1},{"id":"13aa0d44d1e02e7d203e090f2756589a60db157d","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"date":"2022-09-09 06:14:13.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"3962d5ec08e0bde99c725f95ce957fdd6edf7724","tag":"autogenerated:gerrit:setReadyForReview","author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"date":"2022-09-09 06:25:49.000000000","message":"Set Ready For Review","accounts_in_message":[],"_revision_number":2},{"id":"422d825f8c0f4100ba7d76f3bc4a64d4c8c08c02","tag":"autogenerated:gerrit:setWorkInProgress","author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"date":"2022-09-09 06:32:49.000000000","message":"Set Work In Progress","accounts_in_message":[],"_revision_number":2},{"id":"89cd7fdb8ea8a46aa010f983f57f5a4031fc2655","tag":"autogenerated:gerrit:setReadyForReview","author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"date":"2022-09-09 07:07:23.000000000","message":"Set Ready For Review","accounts_in_message":[],"_revision_number":2},{"id":"227cb4fb667541afc3110aede89f59f1788ced15","tag":"autogenerated:cloudbase-ci","author":{"_account_id":27710,"name":"Cloudbase OSBrick Windows CI","email":"windows_osbrick_ci@cloudbasesolutions.com","username":"windows-osbrick-ci"},"date":"2022-09-09 07:26:53.000000000","message":"Patch Set 2:\n\nBuild succeeded.\n\n- os-brick-iscsi http://cloudbase-ci.com/os-brick/856576/2/iscsi/ : SUCCESS in 1h 12m 17s\n- os-brick-smb http://cloudbase-ci.com/os-brick/856576/2/smb/ : SUCCESS in 59m 31s\n- os-brick-ceph http://cloudbase-ci.com/os-brick/856576/2/ceph/ : SUCCESS in 59m 35s","accounts_in_message":[],"_revision_number":2},{"id":"e580d8c932566f3594ad2e17a01fb000a72fd027","author":{"_account_id":32912,"name":"Pure Storage Third-Party CI","display_name":"Pure Storage Third-Party CI","email":"openstack-third-party-ci@purestorage.com","username":"purestorage-thirdparty-ci","status":"Doing CI things"},"date":"2022-09-09 08:16:03.000000000","message":"Patch Set 2:\n\nBuild failed.\n\n- pure-devstack-cinder-tempest-iscsi-aio http://openstack-logs.purestorage.com/76/856576/2/thirdparty-check/pure-devstack-cinder-tempest-iscsi-aio/c48772f/ : SUCCESS in 2h 00m 55s\n- pure-devstack-cinder-tempest-fc-aio http://openstack-logs.purestorage.com/76/856576/2/thirdparty-check/pure-devstack-cinder-tempest-fc-aio/bb6dfb7/ : SUCCESS in 1h 36m 12s\n- pure-devstack-cinder-tempest-nvme-roce-aio http://openstack-logs.purestorage.com/76/856576/2/thirdparty-check/pure-devstack-cinder-tempest-nvme-roce-aio/0ca4d8c/ : FAILURE in 31m 23s","accounts_in_message":[],"_revision_number":2},{"id":"436674d70fc6c7c14be4d0875ddd84d956958c8e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-09-09 08:20:32.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/7a0a74346ffa4c2685dcbe5aa1e8658f\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/179d2553d41a4148a10a9c3bd19c2ca4 : SUCCESS in 1h 43m 54s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/222d2a04cc1c48e8901b35a8be2344ca : SUCCESS in 3m 51s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/25cbb1bf9cdb41b3869ab13b885c956f : SUCCESS in 6m 01s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/1f0dd462bcde47549faba3a8498332e6 : SUCCESS in 4m 49s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/54699a82c9cb4a9a93dee3ec029043b0 : SUCCESS in 5m 44s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e8bd54903fa542d791ab807c2839a8ab : SUCCESS in 7m 12s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/184642221a7d42f9bbf5f373b3c2a923 : SUCCESS in 5m 13s\n- os-brick-code-coverage https://zuul.opendev.org/t/openstack/build/fc702582f1f74d3790ab229fe4444f24 : SUCCESS in 5m 09s (non-voting)\n- os-brick-src-devstack-plugin-ceph https://zuul.opendev.org/t/openstack/build/7f60df840c7a47a497e2a3a06f1543fc : FAILURE in 1h 29m 30s (non-voting)\n- os-brick-src-tempest-lvm-lio-barbican https://zuul.opendev.org/t/openstack/build/9ef71da7d1da443ba7d8db516cbf2501 : SUCCESS in 1h 58m 52s\n- os-brick-src-tempest-nfs https://zuul.opendev.org/t/openstack/build/4507825b152e42bd9fa39836b66b2971 : SUCCESS in 1h 30m 40s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"8297b292f6a6cfd6322f061cdaf26542b97c131a","author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"date":"2022-10-28 14:42:12.000000000","message":"Patch Set 2: Code-Review+2\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"1e67bfa26ab5ce8c19ea768220615000def3c771","author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"date":"2022-10-28 14:44:02.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"7537069e8eb6dd7b5a8ac1095e59a020d52c35e6","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-10-28 14:44:38.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"41ac0198a22573c3acdd6392c55e9dd39a45d7aa","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-10-28 16:25:41.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/5be6effafd5e4ef391778dc79c831740\n\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/6674454e9b9340fc81a2603590da19b2 : SUCCESS in 1h 21m 19s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/ba3842a96311467ab574cf9358decd53 : SUCCESS in 3m 40s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/45705e720987429995faea211c00d345 : SUCCESS in 6m 59s\n- openstack-tox-py38 https://zuul.opendev.org/t/openstack/build/c441554c92af4a26b3d2a286d4295148 : SUCCESS in 3m 59s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/db28578cb0064910aa6095ea24dcfb80 : SUCCESS in 6m 08s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/3f5693bd387a40f09247bcaba34b3351 : SUCCESS in 5m 19s\n- os-brick-src-tempest-lvm-lio-barbican https://zuul.opendev.org/t/openstack/build/5a4b301138c14414968ad5268a5c86a6 : SUCCESS in 1h 33m 35s","accounts_in_message":[],"_revision_number":2},{"id":"2a951c345dca995760651851c3d6ad83291b0f9e","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-10-28 16:25:42.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"2098a86b6d78aafc03f172b18e5d1e6b2761e42e","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-10-28 16:27:06.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d8c7018d9f584e23b5ac22e3b6187ff1\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/c41d885bd6174de38a19889624564acc : SUCCESS in 37s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/8e311cf5039346a099707cdc3c829c51 : SUCCESS in 37s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"cf69f9247061bd0a945a6fb6bf688acff617eb2c","revisions":{"7ed803a8e070b8adeccb4d49392dcdadcc998348":{"kind":"REWORK","_number":1,"created":"2022-09-09 05:58:26.000000000","uploader":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"ref":"refs/changes/76/856576/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/os-brick","ref":"refs/changes/76/856576/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/os-brick refs/changes/76/856576/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/os-brick refs/changes/76/856576/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/os-brick refs/changes/76/856576/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/os-brick refs/changes/76/856576/1"}}},"commit":{"parents":[{"commit":"a5f53fd3fcbc35952f0e890beef7fbb8c18a45c5","subject":"NVMe-oF: Return right nqn when missing hostnqn","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/os-brick/commit/a5f53fd3fcbc35952f0e890beef7fbb8c18a45c5"}]}],"author":{"name":"Gorka Eguileor","email":"geguileo@redhat.com","date":"2022-04-04 18:01:39.000000000","tz":120},"committer":{"name":"Masayuki Igawa","email":"masayuki@igawa.io","date":"2022-09-09 05:58:26.000000000","tz":0},"subject":"Fix encryption symlink issues","message":"Fix encryption symlink issues\n\nThis patch fixes 2 issues related to the symlinks, or lack of, that\nconnectors\u0027 connect_volume methods return.\n\nSome connectors always return the block device instead of a symlink for\nencrypted volumes, and other connectors return a symlink that is owned\nby the system\u0027s udev rules.  Both cases are problematic\n\nReturning the real device can prevent the encryptor connect_volume to\ncomplete successfully, and in other cases (such as nvmeof) it completes,\nbut on the connector\u0027s disconnect volume it will leave the device behind\n(i.e., /dev/nvme0n1) preventing new connections that would use that same\ndevice name.\n\nReturning a symlink owned by the system\u0027s udev rules means that they can\nbe reclaimed by those rules at any time.  This can happen with\ncryptsetup, because when it creates a new mapping it triggers udev rules\nfor the device that can reclaim the symlink after os-brick has replaced\nit.\n\nThis patch creates a couple of decorators to facilitate this for all\nconnectors. These decorators transform the paths so that the callers\ngets the expected symlink, but the connector doesn\u0027t need to worry about\nit and will always see the value it returns regardless of what symlink\nthe caller gets.\n\nFrom this moment onwards we use our own custom symlink that starts with\n\"/dev/disk/by-id/os-brick\".\n\nThe patch fixes bugs in other connectors (such as the RBD local\nconnection), but since there are no open bugs they have not been\nreported.\n\nCloses-Bug: #1964379\nCloses-Bug: #1967790\nChange-Id: Ie373ab050dcc0a35c749d9a53b6cf5ca060bcb58\n(cherry picked from commit 1583a5038d34fd560b554e0eee5c1c5a7612722f)\n(cherry picked from commit 0bd5dc99152261d1d59ecb788faf4aea3e299edd)\nConflicts:\n\tos_brick/initiator/connectors/lightos.py\n\tos_brick/utils.py\n(cherry picked from commit b31b109f0f95c0102300bbda15b011f3623a2873)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/os-brick/commit/7ed803a8e070b8adeccb4d49392dcdadcc998348"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/os-brick/commit/7ed803a8e070b8adeccb4d49392dcdadcc998348"}]},"branch":"refs/heads/stable/wallaby"},"cf69f9247061bd0a945a6fb6bf688acff617eb2c":{"kind":"REWORK","_number":2,"created":"2022-09-09 06:14:13.000000000","uploader":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"ref":"refs/changes/76/856576/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/os-brick","ref":"refs/changes/76/856576/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/os-brick refs/changes/76/856576/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/os-brick refs/changes/76/856576/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/os-brick refs/changes/76/856576/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/os-brick refs/changes/76/856576/2"}}},"commit":{"parents":[{"commit":"a5f53fd3fcbc35952f0e890beef7fbb8c18a45c5","subject":"NVMe-oF: Return right nqn when missing hostnqn","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/os-brick/commit/a5f53fd3fcbc35952f0e890beef7fbb8c18a45c5"}]}],"author":{"name":"Gorka Eguileor","email":"geguileo@redhat.com","date":"2022-04-04 18:01:39.000000000","tz":120},"committer":{"name":"Masayuki Igawa","email":"masayuki@igawa.io","date":"2022-09-09 06:11:04.000000000","tz":540},"subject":"Fix encryption symlink issues","message":"Fix encryption symlink issues\n\nThis patch fixes 2 issues related to the symlinks, or lack of, that\nconnectors\u0027 connect_volume methods return.\n\nSome connectors always return the block device instead of a symlink for\nencrypted volumes, and other connectors return a symlink that is owned\nby the system\u0027s udev rules.  Both cases are problematic\n\nReturning the real device can prevent the encryptor connect_volume to\ncomplete successfully, and in other cases (such as nvmeof) it completes,\nbut on the connector\u0027s disconnect volume it will leave the device behind\n(i.e., /dev/nvme0n1) preventing new connections that would use that same\ndevice name.\n\nReturning a symlink owned by the system\u0027s udev rules means that they can\nbe reclaimed by those rules at any time.  This can happen with\ncryptsetup, because when it creates a new mapping it triggers udev rules\nfor the device that can reclaim the symlink after os-brick has replaced\nit.\n\nThis patch creates a couple of decorators to facilitate this for all\nconnectors. These decorators transform the paths so that the callers\ngets the expected symlink, but the connector doesn\u0027t need to worry about\nit and will always see the value it returns regardless of what symlink\nthe caller gets.\n\nFrom this moment onwards we use our own custom symlink that starts with\n\"/dev/disk/by-id/os-brick\".\n\nThe patch fixes bugs in other connectors (such as the RBD local\nconnection), but since there are no open bugs they have not been\nreported.\n\nCloses-Bug: #1964379\nCloses-Bug: #1967790\nChange-Id: Ie373ab050dcc0a35c749d9a53b6cf5ca060bcb58\n(cherry picked from commit 1583a5038d34fd560b554e0eee5c1c5a7612722f)\n(cherry picked from commit 0bd5dc99152261d1d59ecb788faf4aea3e299edd)\n(cherry picked from commit b31b109f0f95c0102300bbda15b011f3623a2873)\nConflicts:\n\tos_brick/initiator/connectors/iscsi.py\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/os-brick/commit/cf69f9247061bd0a945a6fb6bf688acff617eb2c"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/os-brick/commit/cf69f9247061bd0a945a6fb6bf688acff617eb2c"}]},"branch":"refs/heads/stable/wallaby"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","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":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"}},{"label":"Workflow","status":"OK","applied_by":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"}},{"label":"Review-Priority","status":"MAY"}]}],"submit_requirements":[]}
