)]}'
{"id":"openstack%2Fdevstack~837731","triplet_id":"openstack%2Fdevstack~master~Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53","project":"openstack/devstack","branch":"master","topic":"source-wheels","attention_set":{"5263":{"account":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"last_update":"2022-04-13 22:23:02.000000000","reason":"A robot voted negatively on a label"},"4146":{"account":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"last_update":"2022-04-13 21:29:48.000000000","reason":"Dan Smith replied on the change"}},"removed_from_attention_set":{},"hashtags":[],"change_id":"Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53","subject":"Separate wheel building from installation","status":"NEW","created":"2022-04-13 14:13:22.000000000","updated":"2022-04-13 22:23:02.000000000","submit_type":"MERGE_IF_NECESSARY","mergeable":false,"submittable":false,"total_comment_count":10,"unresolved_comment_count":2,"work_in_progress":true,"has_review_started":false,"meta_rev_id":"78c3a81652d2363883a414a5776b94f22012ccae","_number":837731,"virtual_id_number":837731,"owner":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"tag":"autogenerated:zuul:check","value":-1,"date":"2022-04-13 22:23:02.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":-1,"default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"disliked":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":-1,"date":"2022-04-13 21:29:48.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"value":2,"date":"2022-04-13 21:17:15.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}],"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":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}],"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":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":-1,"max":2},"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"value":0,"permitted_voting_range":{"min":-1,"max":2},"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}],"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":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{"REVIEWER":[{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"reviewer_updates":[{"updated":"2022-04-13 15:30:09.000000000","updated_by":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"reviewer":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"state":"CC"},{"updated":"2022-04-13 16:51:27.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-04-13 21:17:15.000000000","updated_by":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"reviewer":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"state":"REVIEWER"},{"updated":"2022-04-13 21:29:48.000000000","updated_by":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"reviewer":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"state":"REVIEWER"}],"messages":[{"id":"3a5d713ee37b0abc5aa7d94b2324c47c9310c28f","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 14:13:22.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"3d5e2461831f90038115ef11f46f2878efc6374e","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 14:35:41.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"2a8f69c2e9204ab51f1e9bdd749b61f60a7f49dc","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 14:56:39.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"5ddbc460edc552ae1ffe5c2757db13efad425dbf","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 15:21:26.000000000","message":"Uploaded patch set 4.","accounts_in_message":[],"_revision_number":4},{"id":"a0ca67e41a2badf902f07585c1ab77e5418bebbb","author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"date":"2022-04-13 15:30:09.000000000","message":"Patch Set 4:\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"a79f4cc6e9d1e6881da6c3122d66fd196fae46dc","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 15:55:33.000000000","message":"Patch Set 4:\n\n(2 comments)","accounts_in_message":[],"_revision_number":4},{"id":"a5ba9dac5e60f12e9a3c84e24a0659253273b0cb","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 16:10:42.000000000","message":"Uploaded patch set 5.","accounts_in_message":[],"_revision_number":5},{"id":"dc99cb79a36ccadcd108459ee94ebce8e0412339","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-04-13 16:51:27.000000000","message":"Patch Set 5: 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- grenade https://zuul.opendev.org/t/openstack/build/acc1b37da8db4d3185720f41df43bce6 : FAILURE in 11m 18s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/c26fd5f466c54c22b3bfed3729c28e1d : FAILURE in 10m 15s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/087470ad9a6245bebb5d94515133a2dd : SUCCESS in 5m 40s\n- devstack https://zuul.opendev.org/t/openstack/build/c10f326164cf4e7b81845111399f4d19 : FAILURE in 9m 53s\n- devstack-ipv6 https://zuul.opendev.org/t/openstack/build/b72fb499f9764199ac90908c5ad44b79 : FAILURE in 9m 56s\n- devstack-enforce-scope https://zuul.opendev.org/t/openstack/build/f67b334ad33144ecbacdbafcdc2d7f48 : FAILURE in 9m 22s\n- devstack-platform-fedora-latest https://zuul.opendev.org/t/openstack/build/d755df2def5c4ac0923be85e7bf68418 : FAILURE in 10m 59s (non-voting)\n- devstack-platform-centos-8-stream https://zuul.opendev.org/t/openstack/build/f3ec71519b994eb6b96eeaa7d625419f : FAILURE in 10m 52s (non-voting)\n- devstack-platform-centos-9-stream https://zuul.opendev.org/t/openstack/build/b2fe5608eac34063ae652b4c1cde7c41 : FAILURE in 10m 33s\n- devstack-platform-debian-bullseye https://zuul.opendev.org/t/openstack/build/9f702efa9997475c9fb606769bdd8bed : FAILURE in 9m 47s (non-voting)\n- devstack-multinode https://zuul.opendev.org/t/openstack/build/c1d9224b3bb447e9a6a454f0e6826864 : FAILURE in 11m 56s\n- devstack-unit-tests https://zuul.opendev.org/t/openstack/build/407dc20d44494e70b3982c5ac9cd2054 : SUCCESS in 4m 38s\n- openstack-tox-bashate https://zuul.opendev.org/t/openstack/build/3ae2794334d947758f14e33769780d91 : SUCCESS in 2m 54s\n- ironic-tempest-bios-ipmi-direct-tinyipa https://zuul.opendev.org/t/openstack/build/b97a82ea5ea04b9f91d8b9bc776dd0d0 : FAILURE in 11m 51s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/3ff3672d8e554876a0dea582ca0b0d43 : RETRY_LIMIT in 8m 09s\n- neutron-ovs-grenade-multinode https://zuul.opendev.org/t/openstack/build/9a6b6bbfa22048279728730527b2f506 : FAILURE in 19m 54s\n- neutron-linuxbridge-tempest https://zuul.opendev.org/t/openstack/build/4677413952ab433b933208275cc18580 : FAILURE in 9m 47s\n- neutron-ovn-tempest-ovs-release https://zuul.opendev.org/t/openstack/build/eb55992ee3e64aafaae81c92d5ab1bfd : FAILURE in 10m 47s (non-voting)\n- tempest-multinode-full-py3 https://zuul.opendev.org/t/openstack/build/815f4e2871df4adfa091a7b2891d8e3e : FAILURE in 14m 14s (non-voting)\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/841d26da94c5420abb05fdd2ea900b88 : POST_FAILURE in 10m 09s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/d7cf18d4107a4a91991efce846f0da05 : FAILURE in 11m 11s\n- nova-ceph-multistore https://zuul.opendev.org/t/openstack/build/d3b18595434449cba14a9cf264a0ba9e : FAILURE in 13m 39s","accounts_in_message":[],"_revision_number":5},{"id":"ae31aa275b5aef422341fab3640a796b8b5b1205","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 16:55:35.000000000","message":"Uploaded patch set 6.","accounts_in_message":[],"_revision_number":6},{"id":"f88b665f9c8ff29e517e9ab61332ec12ce691c2e","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 17:26:21.000000000","message":"Uploaded patch set 7.","accounts_in_message":[],"_revision_number":7},{"id":"f5e22efd11a1f7fc7a2632ec322236031e7dd302","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 17:54:51.000000000","message":"Uploaded patch set 8.","accounts_in_message":[],"_revision_number":8},{"id":"b2a2d0e339085a694d032c6cd2145e1d0c5ebd34","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 18:20:08.000000000","message":"Uploaded patch set 9.","accounts_in_message":[],"_revision_number":9},{"id":"cf83630c80f2cadb67bf51aaf05dd58cf4bcb4f1","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 19:17:37.000000000","message":"Uploaded patch set 10.","accounts_in_message":[],"_revision_number":10},{"id":"61928817d0b492fa15e458a2752b35e8f87b649d","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 19:50:33.000000000","message":"Uploaded patch set 11.","accounts_in_message":[],"_revision_number":11},{"id":"8f0c8c5c59e4dd341bfb5852bae6876004569777","tag":"autogenerated:gerrit:newWipPatchSet","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 20:20:47.000000000","message":"Uploaded patch set 12.","accounts_in_message":[],"_revision_number":12},{"id":"5194cfd786c6e3ff81320e3839d8f76f49c3dac6","author":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"},"date":"2022-04-13 21:17:15.000000000","message":"Patch Set 12: Code-Review+2\n\n(4 comments)","accounts_in_message":[],"_revision_number":12},{"id":"b87e185045f2a902d06acf4be82a0691d9de9d2a","author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"date":"2022-04-13 21:29:48.000000000","message":"Patch Set 12: Code-Review-1\n\n(2 comments)","accounts_in_message":[],"_revision_number":12},{"id":"48d129b21fedbac18db9b8fc3cca988f374eb2dc","author":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"date":"2022-04-13 21:41:57.000000000","message":"Patch Set 12:\n\nNote that the tempest-full-py3 failure has to do with lib/horizon growing a dependency on editable mode installation since it wants to create a keystore at /usr/local/lib/python3.8/dist-packages/openstack_dashboard/local/_usr_local_lib_python3.8_dist-packages_openstack_dashboard_local_.secret_key_store which is no longer symlinked to a writeable directory for the stack user in a non-editable install. The devstack-platform-centos-9-stream failure indicates that we end up with wheel (implicitly?) installed in Ubuntu jobs but not on CentOS Stream 9.","accounts_in_message":[],"_revision_number":12},{"id":"78c3a81652d2363883a414a5776b94f22012ccae","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2022-04-13 22:23:02.000000000","message":"Patch Set 12: 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- grenade https://zuul.opendev.org/t/openstack/build/a7c9ba3acd9c459d9df73e0fdb887621 : FAILURE in 10m 32s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/2815fbe9faa34111a15ea5f40aa8ccef : FAILURE in 21m 57s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/819b6e664ab74f6d9c7eefa7e0eb153f : SUCCESS in 5m 03s\n- devstack https://zuul.opendev.org/t/openstack/build/e74e1da459494e8ab4d03dc20d4651fb : SUCCESS in 20m 50s\n- devstack-ipv6 https://zuul.opendev.org/t/openstack/build/c430e0d8cec2466fbd953c7a41d88bbe : SUCCESS in 20m 19s\n- devstack-enforce-scope https://zuul.opendev.org/t/openstack/build/919cb711b9f1437189569bef661e5595 : SUCCESS in 18m 42s\n- devstack-platform-fedora-latest https://zuul.opendev.org/t/openstack/build/800117f9d3ec4c158e0a608513af248a : FAILURE in 10m 44s (non-voting)\n- devstack-platform-centos-8-stream https://zuul.opendev.org/t/openstack/build/5d4e9e9e746043a1b480a819ca5da74c : FAILURE in 24m 24s (non-voting)\n- devstack-platform-centos-9-stream https://zuul.opendev.org/t/openstack/build/576eeade76b2498f97bad39ed81ee288 : FAILURE in 19m 33s\n- devstack-platform-debian-bullseye https://zuul.opendev.org/t/openstack/build/c7236eb8cd0849f3a9f889752e146155 : FAILURE in 19m 12s (non-voting)\n- devstack-multinode https://zuul.opendev.org/t/openstack/build/803591caaa5e4e9f8760892e3907225a : SUCCESS in 45m 39s\n- devstack-unit-tests https://zuul.opendev.org/t/openstack/build/e43b350afe774989b2df1c76589c59ad : SUCCESS in 4m 42s\n- openstack-tox-bashate https://zuul.opendev.org/t/openstack/build/67ab6e95f469459aa46e4dabefd12879 : SUCCESS in 2m 53s\n- ironic-tempest-bios-ipmi-direct-tinyipa https://zuul.opendev.org/t/openstack/build/cc3f123383b44ca48e45aa8bbcf23c0e : SUCCESS in 1h 06m 59s\n- swift-dsvm-functional https://zuul.opendev.org/t/openstack/build/0c26f75276f4467283f77e0f5243ea95 : SUCCESS in 37m 15s\n- neutron-ovs-grenade-multinode https://zuul.opendev.org/t/openstack/build/721428bc5eed4a63806afa393179ee70 : FAILURE in 24m 49s\n- neutron-linuxbridge-tempest https://zuul.opendev.org/t/openstack/build/02cd8eb78d444865b176fc713f5a1edc : SUCCESS in 51m 30s\n- neutron-ovn-tempest-ovs-release https://zuul.opendev.org/t/openstack/build/6ff822a7b57645dcb621fc14cba0cae4 : SUCCESS in 1h 01m 37s (non-voting)\n- tempest-multinode-full-py3 https://zuul.opendev.org/t/openstack/build/efb4a93f9d094cadbcf7de74b0a1ada5 : SUCCESS in 1h 55m 07s (non-voting)\n- openstacksdk-functional-devstack https://zuul.opendev.org/t/openstack/build/308b5ff17cda40328bfdd7cc79a65d00 : SUCCESS in 39m 15s\n- tempest-ipv6-only https://zuul.opendev.org/t/openstack/build/e32f6b0f4f5349069546803866ca3686 : SUCCESS in 53m 34s\n- nova-ceph-multistore https://zuul.opendev.org/t/openstack/build/d36cba2da5ac4423813d701d37993411 : SUCCESS in 1h 10m 06s","accounts_in_message":[],"_revision_number":12}],"current_revision_number":12,"current_revision":"9b4c38dccbcbd03243e8600422d99554c269a29f","revisions":{"02ebfddac17af6f8cc197d4c337f0f0a55c35278":{"kind":"REWORK","_number":1,"created":"2022-04-13 14:13:22.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/1"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting wheel rather than relying on pip\u0027s implicit\nwheel-building feature.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/02ebfddac17af6f8cc197d4c337f0f0a55c35278"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/02ebfddac17af6f8cc197d4c337f0f0a55c35278"}]},"branch":"refs/heads/master"},"af3bc7f30bbe5ab82bce5d10e07d05eb05a68811":{"kind":"REWORK","_number":2,"created":"2022-04-13 14:35:41.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/2"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:35:34.000000000","tz":0},"subject":"Separate sdist building from installation","message":"Separate sdist building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build an sdist from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting tarball (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit building feature.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/af3bc7f30bbe5ab82bce5d10e07d05eb05a68811"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/af3bc7f30bbe5ab82bce5d10e07d05eb05a68811"}]},"branch":"refs/heads/master"},"f89c648d2fa1a8e345c2dd9f3303fb6bc6969c06":{"kind":"REWORK","_number":3,"created":"2022-04-13 14:56:39.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/3"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:56:31.000000000","tz":0},"subject":"Separate sdist building from installation","message":"Separate sdist building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build an sdist from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting tarball (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit building feature.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/f89c648d2fa1a8e345c2dd9f3303fb6bc6969c06"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/f89c648d2fa1a8e345c2dd9f3303fb6bc6969c06"}]},"branch":"refs/heads/master"},"0c5c821e3a37f552eae75d3acbdd0239c8f19c46":{"kind":"REWORK","_number":4,"created":"2022-04-13 15:21:26.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/4","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/4","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/4 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/4 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/4 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/4"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 15:21:18.000000000","tz":0},"subject":"Separate sdist building from installation","message":"Separate sdist building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build an sdist from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting tarball (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit building feature.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/0c5c821e3a37f552eae75d3acbdd0239c8f19c46"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/0c5c821e3a37f552eae75d3acbdd0239c8f19c46"}]},"branch":"refs/heads/master"},"209d21bb4ff166324ca3a447756cec879c3087c3":{"kind":"REWORK","_number":5,"created":"2022-04-13 16:10:42.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/5","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/5","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/5 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/5 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/5 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/5"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 16:07:04.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting package (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit build callout.\n\nDrop editable/develop installation, as we can\u0027t support it if\nseparating the build and install steps. The future of editable mode\ninstalls in SetupTools is up in the air with PEP-660, and it\u0027s also\njust a fundamentally broken idea to be installing packages as one\nuser (root) which point to files writeable by a completely different\nuser (stack). If we want proper editable installs, we should put\nwork into venv-based installs so we can finally get rid of the `sudo\npip install` antipattern which the Python packaging community and\ndistros alike are desperately trying to kill off.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/209d21bb4ff166324ca3a447756cec879c3087c3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/209d21bb4ff166324ca3a447756cec879c3087c3"}]},"branch":"refs/heads/master"},"2d6cc1c9d11dc936cc8255a545a6f930eed55596":{"kind":"REWORK","_number":6,"created":"2022-04-13 16:55:35.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/6","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/6","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/6 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/6 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/6 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/6"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 16:55:28.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting package (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit build callout.\n\nDrop editable/develop installation, as we can\u0027t support it if\nseparating the build and install steps. The future of editable mode\ninstalls in SetupTools is up in the air with PEP-660, and it\u0027s also\njust a fundamentally broken idea to be installing packages as one\nuser (root) which point to files writeable by a completely different\nuser (stack). If we want proper editable installs, we should put\nwork into venv-based installs so we can finally get rid of the `sudo\npip install` antipattern which the Python packaging community and\ndistros alike are desperately trying to kill off.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/2d6cc1c9d11dc936cc8255a545a6f930eed55596"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/2d6cc1c9d11dc936cc8255a545a6f930eed55596"}]},"branch":"refs/heads/master"},"bc8862e54fc9687734aed74cc84b30fcb533ce7f":{"kind":"REWORK","_number":7,"created":"2022-04-13 17:26:21.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/7","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/7","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/7 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/7 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/7 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/7"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 17:26:09.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting package (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit build callout.\n\nDrop editable/develop installation, as we can\u0027t support it if\nseparating the build and install steps. The future of editable mode\ninstalls in SetupTools is up in the air with PEP-660, and it\u0027s also\njust a fundamentally broken idea to be installing packages as one\nuser (root) which point to files writeable by a completely different\nuser (stack). If we want proper editable installs, we should put\nwork into venv-based installs so we can finally get rid of the `sudo\npip install` antipattern which the Python packaging community and\ndistros alike are desperately trying to kill off.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/bc8862e54fc9687734aed74cc84b30fcb533ce7f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/bc8862e54fc9687734aed74cc84b30fcb533ce7f"}]},"branch":"refs/heads/master"},"21b5f12946607809e2fd278e4ec918f71e7c5524":{"kind":"REWORK","_number":8,"created":"2022-04-13 17:54:51.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/8","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/8","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/8 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/8 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/8 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/8"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 17:54:45.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting package (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit build callout.\n\nDrop editable/develop installation, as we can\u0027t support it if\nseparating the build and install steps. The future of editable mode\ninstalls in SetupTools is up in the air with PEP-660, and it\u0027s also\njust a fundamentally broken idea to be installing packages as one\nuser (root) which point to files writeable by a completely different\nuser (stack). If we want proper editable installs, we should put\nwork into venv-based installs so we can finally get rid of the `sudo\npip install` antipattern which the Python packaging community and\ndistros alike are desperately trying to kill off.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/21b5f12946607809e2fd278e4ec918f71e7c5524"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/21b5f12946607809e2fd278e4ec918f71e7c5524"}]},"branch":"refs/heads/master"},"f51558a2e360ce08c018208333a512b0a3194b53":{"kind":"REWORK","_number":9,"created":"2022-04-13 18:20:08.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/9","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/9","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/9 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/9 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/9 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/9"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 18:20:02.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting package (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit build callout.\n\nDrop editable/develop installation, as we can\u0027t support it if\nseparating the build and install steps. The future of editable mode\ninstalls in SetupTools is up in the air with PEP-660, and it\u0027s also\njust a fundamentally broken idea to be installing packages as one\nuser (root) which point to files writeable by a completely different\nuser (stack). If we want proper editable installs, we should put\nwork into venv-based installs so we can finally get rid of the `sudo\npip install` antipattern which the Python packaging community and\ndistros alike are desperately trying to kill off.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/f51558a2e360ce08c018208333a512b0a3194b53"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/f51558a2e360ce08c018208333a512b0a3194b53"}]},"branch":"refs/heads/master"},"8ea50d01f5d621674cec09d4730aa7e828abdac8":{"kind":"REWORK","_number":10,"created":"2022-04-13 19:17:37.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/10","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/10","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/10 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/10 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/10 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/10"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 19:17:31.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting package (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit build callout.\n\nDrop editable/develop installation, as we can\u0027t support it if\nseparating the build and install steps. The future of editable mode\ninstalls in SetupTools is up in the air with PEP-660, and it\u0027s also\njust a fundamentally broken idea to be installing packages as one\nuser (root) which point to files writeable by a completely different\nuser (stack). If we want proper editable installs, we should put\nwork into venv-based installs so we can finally get rid of the `sudo\npip install` antipattern which the Python packaging community and\ndistros alike are desperately trying to kill off.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/8ea50d01f5d621674cec09d4730aa7e828abdac8"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/8ea50d01f5d621674cec09d4730aa7e828abdac8"}]},"branch":"refs/heads/master"},"93aa106292be5a5ac8f0889967bb53862a229924":{"kind":"REWORK","_number":11,"created":"2022-04-13 19:50:33.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/11","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/11","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/11 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/11 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/11 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/11"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 19:50:27.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting package (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit build callout.\n\nDrop editable/develop installation, as we can\u0027t support it if\nseparating the build and install steps. The future of editable mode\ninstalls in SetupTools is up in the air with PEP-660, and it\u0027s also\njust a fundamentally broken idea to be installing packages as one\nuser (root) which point to files writeable by a completely different\nuser (stack). If we want proper editable installs, we should put\nwork into venv-based installs so we can finally get rid of the `sudo\npip install` antipattern which the Python packaging community and\ndistros alike are desperately trying to kill off.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/93aa106292be5a5ac8f0889967bb53862a229924"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/93aa106292be5a5ac8f0889967bb53862a229924"}]},"branch":"refs/heads/master"},"9b4c38dccbcbd03243e8600422d99554c269a29f":{"kind":"REWORK","_number":12,"created":"2022-04-13 20:20:47.000000000","uploader":{"_account_id":5263,"name":"Jeremy Stanley","display_name":"fungi","email":"fungi@yuggoth.org","username":"fungi","status":"missing, presumed fed"},"ref":"refs/changes/31/837731/12","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/devstack","ref":"refs/changes/31/837731/12","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/12 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/12 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/devstack refs/changes/31/837731/12 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/devstack refs/changes/31/837731/12"}}},"commit":{"parents":[{"commit":"ce0ff1fd9d32a3cc33d46caacda555c4f6773515","subject":"Merge \"ensure /usr/local/bin in in path\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/ce0ff1fd9d32a3cc33d46caacda555c4f6773515"}]}],"author":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 14:11:07.000000000","tz":0},"committer":{"name":"Jeremy Stanley","email":"fungi@yuggoth.org","date":"2022-04-13 20:20:40.000000000","tz":0},"subject":"Separate wheel building from installation","message":"Separate wheel building from installation\n\nBecause Git (and so PBR) should not be called on a checkout which\nisn\u0027t owned by the same user, e.g. cloning as a non-root user and\nthen doing `sudo pip install .`, explicitly build a wheel from the\nsource tree first as stack and then only elevate privs when\ninstalling the resulting package (with PBR\u0027s metadata already\ninside) rather than relying on pip\u0027s implicit build callout.\n\nDrop editable/develop installation, as we can\u0027t support it if\nseparating the build and install steps. The future of editable mode\ninstalls in SetupTools is up in the air with PEP-660, and it\u0027s also\njust a fundamentally broken idea to be installing packages as one\nuser (root) which point to files writeable by a completely different\nuser (stack). If we want proper editable installs, we should put\nwork into venv-based installs so we can finally get rid of the `sudo\npip install` antipattern which the Python packaging community and\ndistros alike are desperately trying to kill off.\n\nChange-Id: Ie72f4ff8d7ff3ec6263db6ab7281ae4ed1846f53\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/9b4c38dccbcbd03243e8600422d99554c269a29f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/devstack/commit/9b4c38dccbcbd03243e8600422d99554c269a29f"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"OK","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":4146,"name":"Clark Boylan","email":"cboylan@sapwetik.org","username":"cboylan"}},{"label":"Workflow","status":"MAY"},{"label":"Review-Priority","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Verified\u003dMAX","label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Review-Priority","description":"Review priority","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"-label:Review-Priority\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":[],"failing_atoms":["label:Review-Priority\u003dMIN"],"atom_explanations":{"label:Review-Priority\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"UNSATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":false,"status":"FAIL","passing_atoms":[],"failing_atoms":["label:Workflow\u003dMAX","label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
