)]}'
{"id":"openstack%2Fopenstack-helm~1003105","triplet_id":"openstack%2Fopenstack-helm~master~I6247a05771d91efd3f6708b59c7522bf42a056d2","project":"openstack/openstack-helm","branch":"master","attention_set":{},"removed_from_attention_set":{"3009":{"account":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"last_update":"2026-08-31 23:55:57.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"I6247a05771d91efd3f6708b59c7522bf42a056d2","subject":"deploy: retry the flaky external downloads","status":"MERGED","created":"2026-08-31 19:15:24.000000000","updated":"2026-08-31 23:56:55.000000000","submitted":"2026-08-31 23:55:57.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":"1003105","meta_rev_id":"bb559524d3a1fc3ead650ba9872fe72ca4099202","_number":1003105,"virtual_id_number":1003105,"owner":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},{"value":0,"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-08-31 23:55:56.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"all":[{"value":2,"date":"2026-08-31 22:33:48.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},{"value":2,"date":"2026-08-31 22:29:02.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"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":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"all":[{"value":1,"date":"2026-08-31 22:33:48.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},{"value":0,"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},{"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-08-31 20:27:30.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":"2026-08-31 22:29:02.000000000","updated_by":{"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"},"reviewer":{"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"},"state":"REVIEWER"},{"updated":"2026-08-31 22:33:48.000000000","updated_by":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"reviewer":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"state":"REVIEWER"}],"messages":[{"id":"6c50bec8bdcac87fd8ad0c44a98b7ef2251a1e3f","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"date":"2026-08-31 19:15:24.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"86a944f79e0ea23f04c0d54376729f56e44fa884","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"date":"2026-08-31 20:07:50.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"f1b8a10877194944f6233db314a99a47ca60a0d1","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-31 20:27:30.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\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/ab46c125b655450ca1357ed9fb10e211\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/e30ccfa02929495f8738a0799ce4b761 : SUCCESS in 4m 24s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/d68f248a88ec473a954451631b58d4f4 : SUCCESS in 4m 15s\n- openstack-helm-linter https://zuul.opendev.org/t/openstack/build/a6ee1567fe3040a58e5409a0417c56a3 : SUCCESS in 2m 06s\n- openstack-helm-mariadb-crd-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/3036f4c08ed544c8a232c1d433a8a984 : FAILURE in 4m 45s\n- openstack-helm-mariadb-operator-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/dfadcb87bad745aab30520e1f020e7b0 : FAILURE in 5m 40s\n- openstack-helm-rabbitmq-crd-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/113ed05da9124591a77292729d39d4a8 : FAILURE in 6m 12s\n- openstack-helm-pre-commit https://zuul.opendev.org/t/openstack/build/0b160b5cdb2e44b59201b6d3a6f1b713 : SUCCESS in 3m 04s\n- openstack-helm-build-charts https://zuul.opendev.org/t/openstack/build/9cc9d8b32add4530b60d98d91c8b8d23 : SUCCESS in 2m 25s\n- openstack-helm-cinder-2025-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/3c53526c3f5f42f09d1be7a8bed7cabb : FAILURE in 5m 19s\n- openstack-helm-compute-kit-2025-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/afcd70cabe524d288dadb8ad0611a22b : FAILURE in 4m 45s\n- openstack-helm-cinder-2025-2-ubuntu_noble https://zuul.opendev.org/t/openstack/build/28319c4b7ebd40b1a123e19ad2c417fe : FAILURE in 5m 37s\n- openstack-helm-compute-kit-2025-2-ubuntu_noble https://zuul.opendev.org/t/openstack/build/3dfa737702304ebda538d103318873e0 : FAILURE in 5m 11s\n- openstack-helm-cinder-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/76e525007bda4c8b94bbe17a22f24562 : FAILURE in 6m 01s\n- openstack-helm-compute-kit-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/0cf3a3568ec649eeb63f54c59a108e11 : FAILURE in 5m 01s\n- openstack-helm-tls-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/e0d30cb395d1428e98f2006334c8418d : FAILURE in 5m 14s\n- openstack-helm-compute-kit-dpdk-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/581dd6cc00134078858eeed108e622fb : FAILURE in 4m 38s\n- openstack-helm-octavia-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/33a316f559964252bd1d55dded29f999 : FAILURE in 5m 15s\n- openstack-helm-logging https://zuul.opendev.org/t/openstack/build/9c56836e31d048b79674a58e8d7ae0c8 : FAILURE in 7m 26s\n- openstack-helm-monitoring https://zuul.opendev.org/t/openstack/build/1198e42d97484ae9885769b5de48a068 : FAILURE in 4m 23s","accounts_in_message":[],"_revision_number":2},{"id":"2e1744b1d73345892097ad54b8e3559931ec170b","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"date":"2026-08-31 20:34:49.000000000","message":"Uploaded patch set 3.\n\nOutdated Votes:\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":3},{"id":"33566893281e1a923fae65b6714a3930d2ddfbce","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-31 22:04:24.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/cf3ade6c50fa42c9a3adbc255b7dccbe\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7f1bceb35aa44400a6d58107e96936f0 : SUCCESS in 4m 49s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/78bbbe22929041ce893544211004af5e : SUCCESS in 3m 48s\n- openstack-helm-linter https://zuul.opendev.org/t/openstack/build/ecb639dfb9be4513b580d7a7f77e30d4 : SUCCESS in 2m 05s\n- openstack-helm-mariadb-crd-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/a4fa3ba2fb5c4b84b3c89d4a0c3b984f : SUCCESS in 1h 01m 20s\n- openstack-helm-mariadb-operator-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/6b41c174aeea41c7a94800f617e90254 : SUCCESS in 1h 03m 11s\n- openstack-helm-rabbitmq-crd-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/b6ade1cd710e4f398acf553246b984ba : SUCCESS in 59m 14s\n- openstack-helm-pre-commit https://zuul.opendev.org/t/openstack/build/798b9e522ffd46d2bf99fcae92147f84 : SUCCESS in 2m 34s\n- openstack-helm-build-charts https://zuul.opendev.org/t/openstack/build/5a128c6820c641ca9f0999f7f28ac428 : SUCCESS in 2m 24s\n- openstack-helm-cinder-2025-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/46d31b082cac494d92828d1885653393 : SUCCESS in 53m 10s\n- openstack-helm-compute-kit-2025-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/265f3e9f0ddd4b4bab9ce4b78b969f56 : SUCCESS in 1h 14m 33s\n- openstack-helm-cinder-2025-2-ubuntu_noble https://zuul.opendev.org/t/openstack/build/e075c02ee92749c7b398a1fa8785672e : SUCCESS in 46m 49s\n- openstack-helm-compute-kit-2025-2-ubuntu_noble https://zuul.opendev.org/t/openstack/build/f08e82c7e5b94ddb9b7a03c7c682c684 : SUCCESS in 1h 13m 37s\n- openstack-helm-cinder-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/ab401615d5174479b603751324ee16cb : SUCCESS in 39m 57s\n- openstack-helm-compute-kit-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/34ea093341be48a79cfa1792ae6ba86f : SUCCESS in 1h 17m 37s\n- openstack-helm-tls-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/2c065e3eb6a746868cecd109e0427c70 : SUCCESS in 1h 26m 41s\n- openstack-helm-compute-kit-dpdk-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/330dc5d8c53e4755af649398e0fb0eba : SUCCESS in 55m 35s\n- openstack-helm-octavia-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/2cf1130a27134c96bc67b829b58e60ce : SUCCESS in 1h 01m 39s\n- openstack-helm-logging https://zuul.opendev.org/t/openstack/build/e21d5ef65a55427494e18aaec9a7859c : SUCCESS in 47m 11s\n- openstack-helm-monitoring https://zuul.opendev.org/t/openstack/build/f4200dbcf1ee41f3a5a14e8165d3c715 : SUCCESS in 34m 02s","accounts_in_message":[],"_revision_number":3},{"id":"150370668d0861b539b9326bae26e067a350e898","author":{"_account_id":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"},"date":"2026-08-31 22:29:02.000000000","message":"Patch Set 3: Code-Review+2","accounts_in_message":[],"_revision_number":3},{"id":"cbad7eb5fdf51232969c368937d49e138c90d94f","author":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"date":"2026-08-31 22:33:48.000000000","message":"Patch Set 3: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":3},{"id":"1aee78036f5c7026ca1a9506efc73cbe0ff5209c","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-31 22:34:00.000000000","message":"Patch Set 3: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":3},{"id":"61e11c59db623cb649dd4f2ccb1fc8c8964703ee","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-31 23:55:56.000000000","message":"Patch Set 3: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b1b44fcc4fd04e29b23b5ceb3f846277\n\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/bd3c17a14e17471ebc0148ae24206b76 : SUCCESS in 5m 05s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/e3f3f3f88e80431196487a19e250b72f : SUCCESS in 4m 26s\n- openstack-helm-linter https://zuul.opendev.org/t/openstack/build/d62f9cee7b0643b9a748b3423c653a51 : SUCCESS in 2m 05s\n- openstack-helm-cinder-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/4ba2fe966bb348369c73f72e52c80d49 : SUCCESS in 48m 35s\n- openstack-helm-compute-kit-2026-1-ubuntu_noble https://zuul.opendev.org/t/openstack/build/c2b626aaccd94afeb9355bc411f61304 : SUCCESS in 1h 16m 37s\n- openstack-helm-logging https://zuul.opendev.org/t/openstack/build/ff761fe1547047d086b82e44a387836d : SUCCESS in 39m 50s\n- openstack-helm-monitoring https://zuul.opendev.org/t/openstack/build/4634835103a84329af46cd592443b3dc : SUCCESS in 24m 34s","accounts_in_message":[],"_revision_number":3},{"id":"82c3cfeae3f99c0c3a7345b3f0f9cb14cddc418d","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-31 23:55:57.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":3},{"id":"bb559524d3a1fc3ead650ba9872fe72ca4099202","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-08-31 23:56:55.000000000","message":"Patch Set 3:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/554200a0e3554564b544f53cdebe0178\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/050f118dfde44d2da76616eef49a7918 : SUCCESS in 49s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"285e2a1eae1f629db7831c957b7f1faf08ef5b50","revisions":{"9002866781f52eaff10fc4e4f6e1d2b780136e5d":{"kind":"REWORK","_number":1,"created":"2026-08-31 19:15:24.000000000","uploader":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"ref":"refs/changes/05/1003105/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstack-helm","ref":"refs/changes/05/1003105/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/1"}}},"commit":{"parents":[{"commit":"0ee5adeffcaefb6f7a78bb23bf845414672e6827","subject":"Merge \"Migrate to RabbitMQ 4.x by default\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/0ee5adeffcaefb6f7a78bb23bf845414672e6827"}]}],"author":{"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","date":"2026-08-31 19:15:13.000000000","tz":-300},"committer":{"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","date":"2026-08-31 19:15:23.000000000","tz":-300},"subject":"deploy: retry the deploy-env downloads","message":"deploy: retry the deploy-env downloads\n\nThree tasks in deploy-env fetch from the internet with a single\nattempt, and a reset connection on any of them kills the job two\nminutes in, before a chart is ever installed:\n\n  - the Docker apt repository key from download.docker.com\n  - the Kubernetes apt repository key from pkgs.k8s.io\n  - the Calico manifest from raw.githubusercontent.com\n\nThe Docker key is the one that keeps biting:\n\n  TASK [deploy-env : Add Docker apt repository key]\n  \"url\": \"https://download.docker.com/linux/ubuntu/gpg\"\n  \"msg\": \"Request failed: \u003curlopen error [Errno 104] Connection reset\n          by peer\u003e\"\n\nThree times in five days on openstack-helm-compute-kit-dpdk-2026-1,\non 2026-08-27 and twice on 2026-08-31. That job runs on the\nubuntu-noble-32GB label, which comes from a single provider, so it\ncarries the exposure more visibly than the rest, but nothing about the\ntask is job specific and every job runs it.\n\nThe failure is transient. Between the two failures on 2026-08-31 the\nsame job passed twice from the same region, once forty minutes later.\nA second attempt would almost certainly have succeeded, and there is\nno attempt to be second.\n\nRetry each of the three, five times with ten seconds between, in the\nstyle the role already uses for its cluster waits. Fifty seconds of\ntolerance costs nothing on a job that runs for an hour, and a genuine\noutage still fails, just fifty seconds later.\n\nSigned-off-by: Vladimir Kozhukalov \u003ckozhukalov@gmail.com\u003e\nChange-Id: I6247a05771d91efd3f6708b59c7522bf42a056d2\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/9002866781f52eaff10fc4e4f6e1d2b780136e5d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/9002866781f52eaff10fc4e4f6e1d2b780136e5d"}]},"branch":"refs/heads/master"},"01036d86c2622e0c9ce25229d13c1ed32039f44b":{"kind":"REWORK","_number":2,"created":"2026-08-31 20:07:50.000000000","uploader":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"ref":"refs/changes/05/1003105/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstack-helm","ref":"refs/changes/05/1003105/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/2"}}},"commit":{"parents":[{"commit":"0ee5adeffcaefb6f7a78bb23bf845414672e6827","subject":"Merge \"Migrate to RabbitMQ 4.x by default\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/0ee5adeffcaefb6f7a78bb23bf845414672e6827"}]}],"author":{"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","date":"2026-08-31 19:15:13.000000000","tz":-300},"committer":{"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","date":"2026-08-31 20:07:45.000000000","tz":-300},"subject":"deploy: retry the flaky external downloads","message":"deploy: retry the flaky external downloads\n\nFour tasks in the CI roles fetch from the internet with a single\nattempt, and a reset connection on any of them kills the job minutes\nin, before a chart is ever installed:\n\n  - the Docker apt repository key from download.docker.com\n  - the Kubernetes apt repository key from pkgs.k8s.io\n  - the Calico manifest from raw.githubusercontent.com\n  - the chromedriver version index from googlechromelabs.github.io\n\nThe Docker key is the one that keeps biting:\n\n  TASK [deploy-env : Add Docker apt repository key]\n  \"url\": \"https://download.docker.com/linux/ubuntu/gpg\"\n  \"msg\": \"Request failed: \u003curlopen error [Errno 104] Connection reset\n          by peer\u003e\"\n\nThree times in five days on openstack-helm-compute-kit-dpdk-2026-1, on\n2026-08-27 and twice on 2026-08-31. That job runs on the\nubuntu-noble-32GB label, which comes from a single provider, so it\ncarries the exposure more visibly than the rest, but nothing about the\ntask is job specific and every job runs it.\n\nThe failures are transient. Between the two on 2026-08-31 the same job\npassed twice from the same region, once forty minutes later. A second\nattempt would almost certainly have succeeded, and there is no attempt\nto be second.\n\nRetry each of the four, five times with ten seconds between, in the\nstyle the role already uses for its cluster waits. Fifty seconds of\ntolerance costs nothing on a job that runs for an hour, and a genuine\noutage still fails, just fifty seconds later.\n\nReport the chromedriver failure honestly while we are here. The task\nran under set -ex without pipefail, so a failing wget inside\n\n  wget -qO- \u003cindex\u003e | jq -r ... | tail -1\n\nleft the pipeline exit status as tail\u0027s, which is zero, and -q hid the\nmessage. An unreachable index therefore became an empty DRIVER_URL and\nsurfaced three lines later as\n\n  wget: missing URL\n\nwhich is what the failure on 2026-08-31 19:20 looked like, while five\nnodes in another provider resolved the same index for the same Chrome\nversion eight seconds earlier. Set pipefail, drop -q so wget can say\nwhat went wrong, and fail with a clear message when the index is\nreachable but publishes no driver for the installed Chrome. That last\ncase is a real bug rather than a blip, and it should not be disguised\nas this one.\n\nSigned-off-by: Vladimir Kozhukalov \u003ckozhukalov@gmail.com\u003e\nChange-Id: I6247a05771d91efd3f6708b59c7522bf42a056d2\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/01036d86c2622e0c9ce25229d13c1ed32039f44b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/01036d86c2622e0c9ce25229d13c1ed32039f44b"}]},"branch":"refs/heads/master"},"285e2a1eae1f629db7831c957b7f1faf08ef5b50":{"kind":"REWORK","_number":3,"created":"2026-08-31 20:34:49.000000000","uploader":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"ref":"refs/changes/05/1003105/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/openstack-helm","ref":"refs/changes/05/1003105/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/openstack-helm refs/changes/05/1003105/3"}}},"commit":{"parents":[{"commit":"0ee5adeffcaefb6f7a78bb23bf845414672e6827","subject":"Merge \"Migrate to RabbitMQ 4.x by default\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/0ee5adeffcaefb6f7a78bb23bf845414672e6827"}]}],"author":{"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","date":"2026-08-31 19:15:13.000000000","tz":-300},"committer":{"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","date":"2026-08-31 20:34:47.000000000","tz":-300},"subject":"deploy: retry the flaky external downloads","message":"deploy: retry the flaky external downloads\n\nFour tasks in the CI roles fetch from the internet with a single\nattempt, and a reset connection on any of them kills the job minutes\nin, before a chart is ever installed:\n\n  - the Docker apt repository key from download.docker.com\n  - the Kubernetes apt repository key from pkgs.k8s.io\n  - the Calico manifest from raw.githubusercontent.com\n  - the chromedriver version index from googlechromelabs.github.io\n\nThe Docker key is the one that keeps biting:\n\n  TASK [deploy-env : Add Docker apt repository key]\n  \"url\": \"https://download.docker.com/linux/ubuntu/gpg\"\n  \"msg\": \"Request failed: \u003curlopen error [Errno 104] Connection reset\n          by peer\u003e\"\n\nThree times in five days on openstack-helm-compute-kit-dpdk-2026-1, on\n2026-08-27 and twice on 2026-08-31. That job runs on the\nubuntu-noble-32GB label, which comes from a single provider, so it\ncarries the exposure more visibly than the rest, but nothing about the\ntask is job specific and every job runs it.\n\nThe failures are transient. Between the two on 2026-08-31 the same job\npassed twice from the same region, once forty minutes later. A second\nattempt would almost certainly have succeeded, and there is no attempt\nto be second.\n\nRetry each of the four, five times with ten seconds between, in the\nstyle the role already uses for its cluster waits. Fifty seconds of\ntolerance costs nothing on a job that runs for an hour, and a genuine\noutage still fails, just fifty seconds later.\n\nReport the chromedriver failure honestly while we are here. The task\nran under set -ex without pipefail, so a failing wget inside\n\n  wget -qO- \u003cindex\u003e | jq -r ... | tail -1\n\nleft the pipeline exit status as tail\u0027s, which is zero, and -q hid the\nmessage. An unreachable index therefore became an empty DRIVER_URL and\nsurfaced three lines later as\n\n  wget: missing URL\n\nwhich is what the failure on 2026-08-31 19:20 looked like, while five\nnodes in another provider resolved the same index for the same Chrome\nversion eight seconds earlier. Set pipefail, drop -q so wget can say\nwhat went wrong, and fail with a clear message when the index is\nreachable but publishes no driver for the installed Chrome. That last\ncase is a real bug rather than a blip, and it should not be disguised\nas this one.\n\nSigned-off-by: Vladimir Kozhukalov \u003ckozhukalov@gmail.com\u003e\nChange-Id: I6247a05771d91efd3f6708b59c7522bf42a056d2\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/285e2a1eae1f629db7831c957b7f1faf08ef5b50"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/openstack-helm/commit/285e2a1eae1f629db7831c957b7f1faf08ef5b50"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","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":34520,"name":"Sergiy Markin","email":"smarkin@mirantis.com","username":"sm515x"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"}}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["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":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
