Skip to content

Commit a227250

Browse files
authored
Merge branch 'main' into feature-9978
2 parents 3dfb321 + e3bd3c3 commit a227250

File tree

11 files changed

+124
-79
lines changed

11 files changed

+124
-79
lines changed

Procfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@ web-uploads: bin/start-web ddtrace-run python -m gunicorn.app.wsgiapp -c gunicor
55
worker: bin/start-worker celery -A warehouse worker -Q default -l info --max-tasks-per-child 32
66
worker-beat: bin/start-worker celery -A warehouse beat -S redbeat.RedBeatScheduler -l info
77
worker-traced: env DD_SERVICE=warehouse-worker bin/start-worker ddtrace-run celery -A warehouse worker -Q default -l info --max-tasks-per-child 32
8+
worker-drain-sqs: env BROKER_URL=sqs:///?region=us-east-2&queue_name_prefix=pypi-worker bin/start-worker celery -A warehouse worker -Q default -l info --max-tasks-per-child 32

dev/environment

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ WAREHOUSE_IP_SALT="insecure himalayan pink salt"
77

88
AWS_ACCESS_KEY_ID=foo
99
AWS_SECRET_ACCESS_KEY=foo
10-
BROKER_URL=sqs://localstack:4566/?region=us-east-1&queue_name_prefix=warehouse-dev
1110

1211
DATABASE_URL=postgresql+psycopg://postgres@db/warehouse
1312

requirements/deploy.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
gunicorn==23.0.0
2-
ddtrace==2.12.2
2+
ddtrace==2.13.0

requirements/deploy.txt

Lines changed: 61 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -8,67 +8,67 @@ bytecode==0.15.1 \
88
--hash=sha256:0a1dc340cac823cff605609b8b214f7f9bf80418c6b9e0fc8c6db1793c27137d \
99
--hash=sha256:7263239a8d3f70fc7c303862b20cd2c6788052e37ce0a26e67309d280e985984
1010
# via ddtrace
11-
ddtrace==2.12.2 \
12-
--hash=sha256:00f914629f78b3f5225bb47f992e0d3f484cbcf0df0684e23c1fd118249d54c6 \
13-
--hash=sha256:0711bfff39064bdcd9476b95af7456644388466a567c1d6f5fed8488a0ebe8e8 \
14-
--hash=sha256:0aa2d1b8ffe6a81d438461a21193b8742ec9d42a548ca47bd6b7520a0785aa37 \
15-
--hash=sha256:0f873eb3b909e6b009a743fa5d592be8f45c46df293246ecc490c2c566fe8df8 \
16-
--hash=sha256:17dc3272b3f0a3e8038dc332da339ad2bb4c34253eea19d61e04c35530dbb6d1 \
17-
--hash=sha256:199b178bb678012f77027bece129dc349f9e7338f8d43393be863d59db87ba35 \
18-
--hash=sha256:2158ac1db34c6d3203741b032d82b0518d92a9bfe23b2ec1814b90fb912abb41 \
19-
--hash=sha256:2cfa7650dbecc8e8f5e87e1b7faa8d777d1b7c5080597f566db3d6555315fbb5 \
20-
--hash=sha256:2eaf7c8865c1ba18b8c193a6a6ddf6c77db34db1ac2b7c2252864bfdc49731e7 \
21-
--hash=sha256:2ee86941d8918f4f7659248d4765b0618fb187d77dfc251e676bc7f2f319daa0 \
22-
--hash=sha256:325412e32dc5122ff9e5f805c7f3f7ab768ea205b332394317d2a23711d238ee \
23-
--hash=sha256:3376d1003d83600fb26ae3891b98ea4389e9fc25cf4d8e54c75b8a09dd2b66f1 \
24-
--hash=sha256:3c122389354f4d47046edab70998ac666a51711451505f242596f850b4416cff \
25-
--hash=sha256:4587987dc9da1e23781e0783479211d327d8397938e2b89e080de44c69d3ec31 \
26-
--hash=sha256:46ebba827296783919584bf0a4f81938629d1aba4f0a142f75b224d383cd5d1a \
27-
--hash=sha256:481e4ea254be699ece2fb40787b83e488924a7e602d725540236364935987015 \
28-
--hash=sha256:4d6def8032dac5129341eab20a8263e3c7d4147b03568911b72d37a88b366c0e \
29-
--hash=sha256:4efbfaf3e8832ebf0ba39b684f27e5864d76854dbd9416e3790ce5fedd97fd55 \
30-
--hash=sha256:591ee5d55668f9cc313a8f1bafaef74b76c247e84375162604415f3b92015079 \
31-
--hash=sha256:5f2b2ead7f86e7cbde32a511424a86a8ccebea54d88dd88f4b78005d63b37e07 \
32-
--hash=sha256:61419124d0e805f71c8542a376723595edf55fb6f1f7e6f04239c96460e031bc \
33-
--hash=sha256:65883e5ac1a5cf81dd0c986457607181980c576c58859998cd9265656808d198 \
34-
--hash=sha256:65e489fc015f5f78772cf2a3c327735b02be95ae7935870007eb223c5b474c91 \
35-
--hash=sha256:669ad22baaf6cda84dcdb9e66dde782a56f19ee45755013755473b70ce211bd5 \
36-
--hash=sha256:67c2177e7dbee3bd90806c09aafd8109981362ceb05801e4a7807eb268380ee3 \
37-
--hash=sha256:6dc82ac95e293224ac0c386ba2a18bd30967711c6bc7a1d4520323c89dd53e13 \
38-
--hash=sha256:6ff3e0fa127d8b65277ac431af24dc4e000c363c2d6350602d456b2187db0934 \
39-
--hash=sha256:7050f299d268b75fd5265f4a41a12f33e5aadc588930bc49bd73cd5d9c443449 \
40-
--hash=sha256:7257a4a49634cde15cb9ba46b9a6f5caddfca68a20cc3199ce25860aa2361ca0 \
41-
--hash=sha256:7b40a18d167a676a1255b8f5a124ea114333e3dfd670cebae49738232f986ebf \
42-
--hash=sha256:7f5aa811995f79a38fe3d147c264c62de4717e31530efbeb429982d9e9ed75ae \
43-
--hash=sha256:830ef3bfed7eb55b5882a4f8be05538d95c00638e833d94dc951e56ea9be3e31 \
44-
--hash=sha256:849251b345d0cc3b1f03863222db96198cb2c27663241185ba991013c2406471 \
45-
--hash=sha256:85625ebe6512d17d64f46c72d4b39890c85fabbb7e5fc7aacee96d6b5248cf6c \
46-
--hash=sha256:890bdf5146fa9214334d87e716523e8578ee70e663fa899f605813688807f206 \
47-
--hash=sha256:8fa637b2200ab19f8bd06ac606f270a814707bdf41b580b6458a62f2d9656a3d \
48-
--hash=sha256:915ea24229e1339a465cf29c4e9a63481667838080858815382d1ee232609fc7 \
49-
--hash=sha256:9215a2ac13203d0875e8be61be42325e68e42aea0f8e6d192b23ebefa6301c3c \
50-
--hash=sha256:997124b85ee3a901c230e42f4922224018cd0ca228cbfbd24da96962c8209cbd \
51-
--hash=sha256:9a1b195a51769851eaf9b07abdb9216595eac8a78ba2c5123775d5a48e2d625e \
52-
--hash=sha256:9e925eb5bc2fa4eb12e0b63de67ca6ec0040584e40f888432504f2a0055a0a2a \
53-
--hash=sha256:a593a40702cbdac773d51f1c591bf92cf9f8498daea4398c5599286ce7b1fc8b \
54-
--hash=sha256:a9affcb1df63408c69ec5eace0eda9db51faf966dfa4fc8c452abe721d7b4924 \
55-
--hash=sha256:ab83e213df189619e5f2e8fbb83849b44bca6c04036be095f9095b4638592d45 \
56-
--hash=sha256:afb81dea72a09d60c8bcc96dca32d66be7cb41bd7e1adaf568b94d9e2f709bb9 \
57-
--hash=sha256:b1208755f89b4f551985621882876dfdf530f6110dcc931d95f9e5090c2372d4 \
58-
--hash=sha256:b50c8ee700f70ddc4646a3f9bfabf6dfe8226c249feeb590cf65ef9185faa0d2 \
59-
--hash=sha256:b877c337efac8ac1d4c867751a8833ab8db27869e3542089331f3dabd7943292 \
60-
--hash=sha256:bd0e750fe0efc0f0d21a270a4ba119d677c0c7a3a0fce9c17c54b63e2ed6ddd1 \
61-
--hash=sha256:bdcccbd5158953ada26296df97f352c2b3b1acc234cd02cf62f2460bb655b4a3 \
62-
--hash=sha256:c2adacad5b79353cb1499bf596c70ff60ea525c8bfeeb80899196b3e0ab39d58 \
63-
--hash=sha256:c60f668b1b3f5ef9730485ba89b620989966556a4e6466e912efda95bab52835 \
64-
--hash=sha256:ca72e4f349e4549bae5fb07016c91a79cfb32f0b3385d597846ae5de981df339 \
65-
--hash=sha256:d462fa90fe4f6089bb05942c36b1c375799bcac36377fcecb1675adfb7376c89 \
66-
--hash=sha256:dd9592e5e9fa374e6516d175509706ce1f29da2200fcf5e2468eda3ccf3d628d \
67-
--hash=sha256:eddbf64140fb6945dfb342fa2bd3c06f70cd1229b36718852682a8055cbdae33 \
68-
--hash=sha256:f655df935b270a263d6bcfd48ef0cbed51a9ffb817b24b76250e2f653766408d \
69-
--hash=sha256:fb9fdb1a552a2e1196b2063a6b5e4ba45bcc48fdbf120a66862056c869339cf0 \
70-
--hash=sha256:fd062973a3f04229eebe1b261030e97f1a36f68fbeb8c481b6eebfaa3c262097 \
71-
--hash=sha256:fd6b8948e35507ec4ef54b938788403b1548c3d6626649d4718b0be70867e8b3
11+
ddtrace==2.13.0 \
12+
--hash=sha256:084eb3f8031ea2cbf7d3d9b3e622dcc1fa75bf821fcdff2084d15635d51a28b2 \
13+
--hash=sha256:0de86840376cb45c2a3d488945040cd1f615c725263c08dc9dc458cfcd9c6b7e \
14+
--hash=sha256:1ec24c98aba3251a3a9e8de2eb33e614681343ef3932b6c6cf731b56fd47e18b \
15+
--hash=sha256:1eee1a3d448d01fa4df9505eac3cb30b595cfad84884d22df0e3d3ceba53d9f6 \
16+
--hash=sha256:215d8fcc9d8449b2c9f0aca178a0022f7083bbda27d07cb91a1081a735fe6516 \
17+
--hash=sha256:29b2e28368bdf4da8945ba78241a8293ba4fa8a246f04869061290b4297831e6 \
18+
--hash=sha256:3121bac3b913553473d042109c175111e1afc0c8280ea88661591cf896d5055c \
19+
--hash=sha256:35c7230604b0cecf4390255fc3f1736624f725a2158983fc8680901369b997bb \
20+
--hash=sha256:369f6d701e37d52edcaef3a36312ee1d3277513fdc9816a8c0b66caa74b12e25 \
21+
--hash=sha256:374626db3cd96080235794cfc8e2678382671d364e09b6d38859c2f7f69f8704 \
22+
--hash=sha256:3c678c572de3c39ccf32a4df2fc35e20fe355ee5967fe13037e44258234f27d4 \
23+
--hash=sha256:42c931e489d12e2c0a6d5cb4f582aad8c74ddb4ccb465c7cb1b0dacfb2b733f0 \
24+
--hash=sha256:47b2fc7cc4b4d44da97bfe1de78c03b1d306ce8609ae5efcd1004460cf0ad43e \
25+
--hash=sha256:48e3b76d8c2b804430bd222308e22cc05f9a67266ddd0707cf342d0151414b71 \
26+
--hash=sha256:4c87f1ce25b325427030b1d2dc7433f4a48b8d6495b4a1fd5bff0e8e2b2882dc \
27+
--hash=sha256:505fea65d34dbd03c8a71652045df7faf3f8a2948a08b9fe3888742bd9d15233 \
28+
--hash=sha256:5b68f0b7d7183f461f90f80f197b3b7c40d9da90c3214a9aeb69ba26aeef3c85 \
29+
--hash=sha256:5c681b39527d8cc1e59e699f60f0401f067efc146f325816d59ac344b71ae733 \
30+
--hash=sha256:68c624bdf0a7694270791fad30ecd2cbabef2c917634a10de2ae40f92bc1026f \
31+
--hash=sha256:6d62a1592f7a145bf332562826a6699cb574aedbd2f9dbdcb53ead65adcf3a5e \
32+
--hash=sha256:74270c26142516e81a5c9d537e4dfc1719c237c0ceeca2389768e4f18133b17e \
33+
--hash=sha256:7449d83c76b832728a5516b4e44077aab88cda5df8e1d899eb98e63e0f7559f8 \
34+
--hash=sha256:79a4d8dc730b2d2e16f0cbabc19a2826642bf2e3f6a051ba20b84538060cc2c7 \
35+
--hash=sha256:827d3c7266826acee0d2a45e624f6cca527b91fd570b6dc729414754d932f533 \
36+
--hash=sha256:829d588b19d6d838c8396e518d45aa1733a0419c077e1fee08b55638754e995c \
37+
--hash=sha256:90503ea1fe9de78008bc0ca25851334e9aa9bc5b3cbc62a47e1e5b090201a002 \
38+
--hash=sha256:9622e83681688b342a6ca6952daac4b4990cd6e3d041a3a178c6eba0de54e564 \
39+
--hash=sha256:974631565f374bd1a4f6865c0c41ba5d638a39db59553c51702c868df58af31c \
40+
--hash=sha256:9aafa3f578301965b7642f5734563e813922482eeb37fa3a56c4e496379d7fe3 \
41+
--hash=sha256:9ddb25786fbb151660d36614f5596de9ab90c4083e8b980c4e06a4d7b54dfbcd \
42+
--hash=sha256:9f6bc77d02ba67f50bc52d1ed041dd7f9e3d9e0ada80f18b85e79f26515c1104 \
43+
--hash=sha256:a3252e70d4a1e5fe4f91fbc02a01cf53f6459e28955769a28f9b642e56c3a149 \
44+
--hash=sha256:a5f9564f4799d7b1abfa98317e041e7e7d97490f01e0cac74b32836739276417 \
45+
--hash=sha256:a7291d2840f2f35fd705e6d273bb05f55dfd07140bdb8539b1b4f2e6be388605 \
46+
--hash=sha256:a85280b947ecd13371e68cf790359c7842d53050b2ad25a1360102b1caf3481a \
47+
--hash=sha256:a8771b9384b2af5a5e761e9b78142e4e4433c1a917a5ff8d5308acce51766dc9 \
48+
--hash=sha256:a9b12e45b377d93a4e2cc493b8303495624299981954cb401f4551768a81854d \
49+
--hash=sha256:ae3b521391f7d3370a2d19fe811d2baa8f5bdb181dffe8bde2d5852c12b61077 \
50+
--hash=sha256:b2060b41ea60bd0248bc9db6343edb3d3277a47be73696038ef37d657e46e7a7 \
51+
--hash=sha256:b6d88c12339e2834ea2a9c09e8d15b69766fa4bd39f944b2b0cdbc72edcf860e \
52+
--hash=sha256:b89d46cf2df5981b165c8aacc5df5236c189011de8424836539d65501f743b33 \
53+
--hash=sha256:bb31153224b2f1240d88783a03caafd476a1e1b2da2c4e6a1eaaf718a9aa7a22 \
54+
--hash=sha256:bc99859b8abca416645871d012a5a0f250aba853caecb12d04e828d54de9b322 \
55+
--hash=sha256:bd7128ee7e8fb70231879ccb1f2f87b79fabfef15c6f5d10a3fb70e58450e535 \
56+
--hash=sha256:bf34ba2889758cbc4b44940c615fcdd1d2857272b47e6b679d3587c661651431 \
57+
--hash=sha256:c12ba9f0c7c02f035e8d167867863e5b0475eada5d4a774aa8f58cdadae90d63 \
58+
--hash=sha256:c2f008c625712f6cfe621bcbb2da82ca0c126299b3bb8dd08debe7be4ec2776d \
59+
--hash=sha256:c568932d8958cb44b3a9a9f21d68ecb4dff5479718af25434245f35c141a4939 \
60+
--hash=sha256:c7adcf3e36b113bd9309d1132cd4d219e350365925b115eb6d7e4f71b402f58d \
61+
--hash=sha256:cc8b4957b1e2beb0527865392a3edcdefbb759fbecb791c711d2be45144ac984 \
62+
--hash=sha256:ccf51c3a31283fe74f2ad06b96beccf69754499cbbb00e4055ac43b98fbe7392 \
63+
--hash=sha256:ce79a48deca6b1414dfaf8a368337258285625baebed58562e98a0648c400b00 \
64+
--hash=sha256:d120906ce5cde152a82a5fdf02ee6be1e9a955719221e95477dbcd86c3f38783 \
65+
--hash=sha256:d15bc0119fe626a38453ece0f7d77d4f3481ddff7ac72a166450694638533645 \
66+
--hash=sha256:d97fdb1a04266b64814f01ab6839ffc5bca14daa717b185cce344df4b549b411 \
67+
--hash=sha256:e6b5a462cff369bf3047efe8f2bd7134ba71a66266064853014dd1e9b534e536 \
68+
--hash=sha256:ec93f049d7c3cd393d239fbc58f3d878de429a10a50d195dd486d4b5e1d70ade \
69+
--hash=sha256:eceafb5900913e2d69f40624faccd2d6a398fdd5ce1f22ff3527e991e19de9a0 \
70+
--hash=sha256:feba681d0f6ca39aa16b35d755924a1cf762c32b84bdae19e8266d2e2e45b547 \
71+
--hash=sha256:ff69b557b2a5b0293a63613feb2a21015e240da17a97a5f8f0ce5c0f53108bfa
7272
# via -r requirements/deploy.in
7373
deprecated==1.2.14 \
7474
--hash=sha256:6fac8b097794a90302bdbb17b9b815e732d3c4720583ff1b198499d78470466c \

requirements/docs-blog.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -315,9 +315,9 @@ mkdocs-get-deps==0.2.0 \
315315
--hash=sha256:162b3d129c7fad9b19abfdcb9c1458a651628e4b1dea628ac68790fb3061c60c \
316316
--hash=sha256:2bf11d0b133e77a0dd036abeeb06dec8775e46efa526dc70667d8863eefc6134
317317
# via mkdocs
318-
mkdocs-material==9.5.36 \
319-
--hash=sha256:140456f761320f72b399effc073fa3f8aac744c77b0970797c201cae2f6c967f \
320-
--hash=sha256:36734c1fd9404bea74236242ba3359b267fc930c7233b9fd086b0898825d0ac9
318+
mkdocs-material==9.5.37 \
319+
--hash=sha256:2c31607431ec234db124031255b0a9d4f3e1c3ecc2c47ad97ecfff0460471941 \
320+
--hash=sha256:6e8a986abad77be5edec3dd77cf1ddf2480963fb297a8e971f87a82fd464b070
321321
# via -r requirements/docs-blog.in
322322
mkdocs-material-extensions==1.3.1 \
323323
--hash=sha256:10c9511cea88f568257f960358a467d12b970e1f7b2c0e5fb2bb48cab1928443 \

requirements/docs-user.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -219,9 +219,9 @@ mkdocs-macros-plugin==1.2.0 \
219219
--hash=sha256:3e442f8f37aa69710a69b5389e6b6cd0f54f4fcaee354aa57a61735ba8f97d27 \
220220
--hash=sha256:7603b85cb336d669e29a8a9cc3af8b90767ffdf6021b3e023d5ec2e0a1f927a7
221221
# via -r requirements/docs-user.in
222-
mkdocs-material==9.5.36 \
223-
--hash=sha256:140456f761320f72b399effc073fa3f8aac744c77b0970797c201cae2f6c967f \
224-
--hash=sha256:36734c1fd9404bea74236242ba3359b267fc930c7233b9fd086b0898825d0ac9
222+
mkdocs-material==9.5.37 \
223+
--hash=sha256:2c31607431ec234db124031255b0a9d4f3e1c3ecc2c47ad97ecfff0460471941 \
224+
--hash=sha256:6e8a986abad77be5edec3dd77cf1ddf2480963fb297a8e971f87a82fd464b070
225225
# via -r requirements/docs-user.in
226226
mkdocs-material-extensions==1.3.1 \
227227
--hash=sha256:10c9511cea88f568257f960358a467d12b970e1f7b2c0e5fb2bb48cab1928443 \

requirements/main.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44
#
55
# pip-compile --allow-unsafe --generate-hashes --output-file=requirements/main.txt requirements/main.in
66
#
7-
alembic==1.13.2 \
8-
--hash=sha256:1ff0ae32975f4fd96028c39ed9bb3c867fe3af956bd7bb37343b54c9fe7445ef \
9-
--hash=sha256:6b8733129a6224a9a711e17c99b08462dbf7cc9670ba8f2e2ae9af860ceb1953
7+
alembic==1.13.3 \
8+
--hash=sha256:203503117415561e203aa14541740643a611f641517f0209fcae63e9fa09f1a2 \
9+
--hash=sha256:908e905976d15235fae59c9ac42c4c5b75cfcefe3d27c0fbf7ae15a37715d80e
1010
# via
1111
# -r requirements/main.in
1212
# alembic-postgresql-enum
@@ -2260,9 +2260,9 @@ typing-extensions==4.12.2 \
22602260
# pydantic-core
22612261
# sqlalchemy
22622262
# stripe
2263-
tzdata==2024.1 \
2264-
--hash=sha256:2674120f8d891909751c38abcdfd386ac0a5a1127954fbc332af6b5ceae07efd \
2265-
--hash=sha256:9068bc196136463f5245e51efda838afa15aaeca9903f49050dfa2679db4d252
2263+
tzdata==2024.2 \
2264+
--hash=sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc \
2265+
--hash=sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd
22662266
# via celery
22672267
ua-parser==0.18.0 \
22682268
--hash=sha256:9d94ac3a80bcb0166823956a779186c746b50ea4c9fd9bf30fdb758553c38950 \

tests/unit/test_tasks.py

Lines changed: 42 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -460,26 +460,36 @@ def test_make_celery_app():
460460

461461

462462
@pytest.mark.parametrize(
463-
("env", "ssl", "broker_url", "expected_url", "transport_options"),
463+
(
464+
"env",
465+
"ssl",
466+
"broker_url",
467+
"broker_redis_url",
468+
"expected_url",
469+
"transport_options",
470+
),
464471
[
465472
(
466473
Environment.development,
467474
False,
468475
"amqp://guest@rabbitmq:5672//",
476+
None,
469477
"amqp://guest@rabbitmq:5672//",
470478
{},
471479
),
472480
(
473481
Environment.production,
474482
True,
475483
"amqp://guest@rabbitmq:5672//",
484+
None,
476485
"amqp://guest@rabbitmq:5672//",
477486
{},
478487
),
479488
(
480489
Environment.development,
481490
False,
482491
"sqs://",
492+
None,
483493
"sqs://",
484494
{
485495
"client-config": {"tcp_keepalive": True},
@@ -489,6 +499,7 @@ def test_make_celery_app():
489499
Environment.production,
490500
True,
491501
"sqs://",
502+
None,
492503
"sqs://",
493504
{
494505
"client-config": {"tcp_keepalive": True},
@@ -498,6 +509,7 @@ def test_make_celery_app():
498509
Environment.development,
499510
False,
500511
"sqs://?queue_name_prefix=warehouse",
512+
None,
501513
"sqs://",
502514
{
503515
"queue_name_prefix": "warehouse-",
@@ -508,6 +520,7 @@ def test_make_celery_app():
508520
Environment.production,
509521
True,
510522
"sqs://?queue_name_prefix=warehouse",
523+
None,
511524
"sqs://",
512525
{
513526
"queue_name_prefix": "warehouse-",
@@ -518,6 +531,7 @@ def test_make_celery_app():
518531
Environment.development,
519532
False,
520533
"sqs://?region=us-east-2",
534+
None,
521535
"sqs://",
522536
{
523537
"region": "us-east-2",
@@ -528,6 +542,7 @@ def test_make_celery_app():
528542
Environment.production,
529543
True,
530544
"sqs://?region=us-east-2",
545+
None,
531546
"sqs://",
532547
{
533548
"region": "us-east-2",
@@ -538,6 +553,7 @@ def test_make_celery_app():
538553
Environment.development,
539554
False,
540555
"sqs:///?region=us-east-2&queue_name_prefix=warehouse",
556+
None,
541557
"sqs://",
542558
{
543559
"region": "us-east-2",
@@ -549,16 +565,39 @@ def test_make_celery_app():
549565
Environment.production,
550566
True,
551567
"sqs:///?region=us-east-2&queue_name_prefix=warehouse",
568+
None,
552569
"sqs://",
553570
{
554571
"region": "us-east-2",
555572
"queue_name_prefix": "warehouse-",
556573
"client-config": {"tcp_keepalive": True},
557574
},
558575
),
576+
(
577+
Environment.production,
578+
True,
579+
"sqs:///?region=us-east-2&queue_name_prefix=warehouse",
580+
"redis://127.0.0.1:6379/10",
581+
"sqs://",
582+
{
583+
"region": "us-east-2",
584+
"queue_name_prefix": "warehouse-",
585+
"client-config": {"tcp_keepalive": True},
586+
},
587+
),
588+
(
589+
Environment.production,
590+
True,
591+
None,
592+
"redis://127.0.0.1:6379/10",
593+
"redis://127.0.0.1:6379/10",
594+
{},
595+
),
559596
],
560597
)
561-
def test_includeme(env, ssl, broker_url, expected_url, transport_options):
598+
def test_includeme(
599+
env, ssl, broker_url, broker_redis_url, expected_url, transport_options
600+
):
562601
registry_dict = {}
563602
config = pretend.stub(
564603
action=pretend.call_recorder(lambda *a, **kw: None),
@@ -570,6 +609,7 @@ def test_includeme(env, ssl, broker_url, expected_url, transport_options):
570609
settings={
571610
"warehouse.env": env,
572611
"celery.broker_url": broker_url,
612+
"celery.broker_redis_url": broker_redis_url,
573613
"celery.result_url": pretend.stub(),
574614
"celery.scheduler_url": pretend.stub(),
575615
},

warehouse/admin/views/users.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -572,7 +572,6 @@ def user_recover_account_complete(user: User, request):
572572
user.totp_secret = None
573573
user.webauthn = []
574574
user.recovery_codes = []
575-
_user_reset_password(user, request)
576575

577576
for account_recovery in user.active_account_recoveries:
578577
account_recovery.additional["status"] = "completed"
@@ -585,6 +584,8 @@ def user_recover_account_complete(user: User, request):
585584
email.primary = True
586585
email.verified = True
587586

587+
_user_reset_password(user, request)
588+
588589
request.session.flash(
589590
(
590591
"Account Recovery Complete, "

warehouse/config.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -362,6 +362,7 @@ def configure(settings=None):
362362
)
363363
maybe_set(settings, "warehouse.downloads_table", "WAREHOUSE_DOWNLOADS_TABLE")
364364
maybe_set(settings, "celery.broker_url", "BROKER_URL")
365+
maybe_set_redis(settings, "celery.broker_redis_url", "REDIS_URL", db=10)
365366
maybe_set_redis(settings, "celery.result_url", "REDIS_URL", db=12)
366367
maybe_set_redis(settings, "celery.scheduler_url", "REDIS_URL", db=0)
367368
maybe_set_redis(settings, "oidc.jwk_cache_url", "REDIS_URL", db=1)

warehouse/tasks.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,10 @@ def includeme(config):
195195

196196
broker_transport_options = {}
197197

198-
broker_url = s["celery.broker_url"]
198+
broker_url = s.get("celery.broker_url")
199+
if broker_url is None:
200+
broker_url = s["celery.broker_redis_url"]
201+
199202
if broker_url.startswith("sqs://"):
200203
parsed_url = parse_url(broker_url)
201204
parsed_query = urllib.parse.parse_qs(parsed_url.query)

0 commit comments

Comments
 (0)