From e882a16dadf4ca0bf8b12ea8771f685b4f2278f7 Mon Sep 17 00:00:00 2001 From: Conrad Kramer Date: Sun, 7 Jun 2026 09:12:37 -0700 Subject: [PATCH] Move Apple tester workflow to fresh runner labels --- .../workflows/apple-distribute-testers.yml | 12 ++++++------ ...nfrastructure-and-store-upload-pipeline.md | 6 ++++-- .../infra/forgejo-nsc-autoscaler-config.age | Bin 1761 -> 1767 bytes .../infra/forgejo-nsc-dispatcher-config.age | Bin 1240 -> 1240 bytes secrets/infra/forgejo-nsc-token.age | Bin 828 -> 828 bytes services/forgejo-nsc/deploy/autoscaler.yaml | 4 ++-- 6 files changed, 12 insertions(+), 10 deletions(-) diff --git a/.forgejo/workflows/apple-distribute-testers.yml b/.forgejo/workflows/apple-distribute-testers.yml index aed30e0..8a0fd57 100644 --- a/.forgejo/workflows/apple-distribute-testers.yml +++ b/.forgejo/workflows/apple-distribute-testers.yml @@ -84,7 +84,7 @@ env: jobs: prepare: name: Prepare Apple Distribution - runs-on: namespace-profile-linux-medium-apple + runs-on: namespace-profile-linux-medium-apple-v2 outputs: build_number: ${{ steps.plan.outputs.build_number }} sparkle_channel: ${{ steps.plan.outputs.sparkle_channel }} @@ -123,7 +123,7 @@ jobs: build-ios: name: Build Apple iOS needs: prepare - runs-on: namespace-profile-macos-large-apple + runs-on: namespace-profile-macos-large-apple-v2 steps: - name: Checkout uses: https://code.forgejo.org/actions/checkout@v4 @@ -219,7 +219,7 @@ jobs: build-macos: name: Build Apple macOS needs: prepare - runs-on: namespace-profile-macos-large-apple + runs-on: namespace-profile-macos-large-apple-v2 steps: - name: Checkout uses: https://code.forgejo.org/actions/checkout@v4 @@ -319,7 +319,7 @@ jobs: - prepare - build-ios - build-macos - runs-on: namespace-profile-linux-medium-apple + runs-on: namespace-profile-linux-medium-apple-v2 steps: - name: Checkout uses: https://code.forgejo.org/actions/checkout@v4 @@ -398,7 +398,7 @@ jobs: - prepare - sign-apple if: ${{ github.event.inputs.upload_app_store == 'true' }} - runs-on: namespace-profile-macos-large-apple + runs-on: namespace-profile-macos-large-apple-v2 steps: - name: Checkout uses: https://code.forgejo.org/actions/checkout@v4 @@ -501,7 +501,7 @@ jobs: - prepare - sign-apple if: ${{ github.event.inputs.upload_sparkle == 'true' }} - runs-on: namespace-profile-linux-medium-apple + runs-on: namespace-profile-linux-medium-apple-v2 steps: - name: Checkout uses: https://code.forgejo.org/actions/checkout@v4 diff --git a/evolution/proposals/BEP-0009-release-infrastructure-and-store-upload-pipeline.md b/evolution/proposals/BEP-0009-release-infrastructure-and-store-upload-pipeline.md index e95e0b9..bd96f2e 100644 --- a/evolution/proposals/BEP-0009-release-infrastructure-and-store-upload-pipeline.md +++ b/evolution/proposals/BEP-0009-release-infrastructure-and-store-upload-pipeline.md @@ -105,8 +105,10 @@ The same change also makes the forge itself the release authority: release tags - `namespace-profile-windows-large` - Use dedicated Apple distribution labels for the focused tester-distribution workflow so stale generic Namespace jobs cannot consume Apple release runners: - - `namespace-profile-linux-medium-apple` - - `namespace-profile-macos-large-apple` + - `namespace-profile-linux-medium-apple-v2` + - `namespace-profile-macos-large-apple-v2` + Label revisions are allowed when earlier accepted workflows have stale + queued jobs; the autoscaler should serve only the current focused label set. - Configure macOS Namespace targets with the Compute API CPU-by-memory shape format. `12x28` is the Burrow large macOS baseline; platform-prefixed values such as `macos/arm64:8x16` are not accepted by the macOS launcher. diff --git a/secrets/infra/forgejo-nsc-autoscaler-config.age b/secrets/infra/forgejo-nsc-autoscaler-config.age index 13ec1143756db8fac5f09adf4a6045d4972adbb3..89c1e8158fa61274229db0ad3b7243a223892e28 100644 GIT binary patch delta 1723 zcmaFJ`wvlg0hM{?Sj;ld|Yj}>2E0?aFLUD11 zZfc5=si~o*f@e`wu4B4_zOzwQMPkwRFY?!f2NyZke5qdPKjfHdugy=vYVe_WTz3zNo?j7~Tv%Tmm=}~9P~}u+Ql4Fv&gJ7Dl^jqQ>|2@>>Xn{t z7#QN_5@2j;>{sq?Q4wk3=jm&i?~)gm>f&W#!KJIKtKej5Zt3eAU{RHwR#X^P5U8JI zSnA@Rni&ulZjcgMP~xf|WEkmc<`Nic!Ij)|Uw3JMu56jpwlu??b2v^W1a#Dgl@)R{ zbzHRN+`I0;4$C9cq$i1S&f6jQ>&N#4vwoZ_J1ys|`4)2weCMJmCp`KkB)c0f2t}X=cu$u zMyXBjKf%D;fA?RvI{L)@PC}-~lz*S9x&9{bZJ z5V`P0eQw3FWA~W4yxhdzp2^PG==paQGw+-)a~8aKKJgb%`Gsf4`A`2`rpi4-h@yVOIWrdsuVUVr)R`4Z*Rx0`JFoWnS?*!fi8)|UHQd3LE6K4hDcz@T@m^`>`_ zxnGXq-5YJu{}=7HNt%=WuY9^}VW&&&bKA8GmtJ2fyZBc9>vFD}p+$~X6Q`v$UR|Mv`GJm~Ulv|hN&Va+boBlnN*_ide_k&?=+uI#M|885qUmt0l?D%#ja^7?mn=*?Ji&E6*s4~25yW)D-#a`PX z%d(=wb;A;F35R(bHi&$z<~&gu#N^g5ku6Ri`mI8oyjIMP<$T3r~)|{(SWG z*W>pit=?66`pM>s?m5`|%UR~rQhv`Z+y2@0gfE`*`PA|k^%KmR)f-II8IzxQ=*7ri znHR3V{^vyv+qD)7?A*@j7e%xec23?UbGu({8IwkRy@TTH!iRBAoBKq*tIiTWF8<(X zL_DkSwb+Fcjhl1?-yg|768x-w#kKkOyz1M&SU)enUVOKlKV7ZwPIyF&V8!>w%#?ZS zqo>Q~x+EN4l6@>!rR_*Mo8T>S4=YVGx&Bt4{P8K>Yg+wpx?Z^@qVU5U!tqo zh2ps~%*iSivRNCQ({C)|4*zXzI`gS*N$KOH Wh&2_8>TErCc2{0Do5MfnkuU&0JOgL| delta 1717 zcmaFP`;d2nPQ8i0L2zJpVS!nsc3GZ>VL*sWic6JoMp;sJn4^oakBNSnV{u`jze_>7 zBbTFpXi#dQcBo%UVzP0PX^?hgflFGEsjqpcdrq)LNotOhONovRl3}RtVVaa180D90X;L3isUMhZXzH1!otWcjz?EF)=BKY;Zjxr45?ENC z7VefA8kk#A=x^YfXOL7L6;zb#m1t3snU?J8$)&5St6&xtXq=XmR}fg5;cAj<;bD6TUM8SD{Yz!mxM?bEs~DrP+SB^JwVm#MJZ?82#z6^5UftS%EKJh_Wp%3o-I2FV~#y6XU1AIIn-X zwVvBsi^HCQ>jD~Hs%i1*sIa}-IC17Q)*Gq*DmR37#<#dl+j7i3nxppOf{?$5HYR$8 z*ayAx!u9r;dYdX&EKbe;A6y!X7oqD=z+SNPuTzqOMiv2IrV<73+=Z&lYc z)-+m}mR!s%o*vw{C-wi~Cw5Km9Yr&y9pheGx$)mYhRu^$XUv?z?Y4OJw2e9q%}klh zuRa`KYjafc_^X%v42NcHd&y{9s`D>$(({ZLzi%vVz4F)BPO?!YGSbv_4sz1&KJ z?g{1!>EC5U@9eh=y?AH)%f2PkO=h<4@_o^fZg0=^LdR{wbu*sdMrwCDZq1tD`&qF& z@eXHy*~$~Yx@+U)-bGDS*(fdfPAKFKm)geM%gr8NET=jyIyf_gYmP&*eT)0t4`ttf ztWi0^ebwAaFmpzN$>*+)@$l}=d@?cer7bi^4;3)Z3*dmhQ+Tw_O4y4t(+Wqg>ByRyi-$r=IJ%M zw?3WF<=L>tR&o8u=}kf2KG&WT;9ZbI+q96{mylv^5>@_^ilaU-Tqo z!?|7luCu}!B@*u3J>Va+E_HtWJC|eX88?nD*xCB-ANT9BWJ9f~b5{Ir6Igc0=!eJi ziYYG_hP8`?H7wKbJA65XX>RsQ{ku6qiylpzexj_7MY{X@&&YQkcJjX_7xI_wF)a6H zKX-ze=c7y0boL7`8b72QtGUK8eV4hro}}2!JoC3@!h9TQ7S+j7N2dI!OK>VcIfbdU17US!$G2>=6}4EX>6 diff --git a/secrets/infra/forgejo-nsc-dispatcher-config.age b/secrets/infra/forgejo-nsc-dispatcher-config.age index fe5523389559c1682af2da9be5ce6a1e7211bb7f..c45bdc71df6fa37c91a9befd5268a068670a99f1 100644 GIT binary patch delta 1191 zcmcb?d4qF;PJOt0NI`mPdO&$tkg&Mz~XArgmmvXtsWGPEn+*rAbh@X{fKCX-2rOf3nxa z4-)lmzP?p{zPbJt`JOIO&cWecPD$RGff0#;0fj#K<*q4V`9-O|+FnuaS-xDw{yt@8 z2EqBRS)Tb-`neIVVUdPmPT5iB0p;mI0fp|xK}m*%L0+kmS@|H3L_quy7@3#m9~l}H zWRx74>)~EnuAOd?XBp|@>*<>lQSX}NS6QBv?dDjSVjLLBr5zTW=@M0#ZE9K;Zc*S; zW@_&27@%EZmK5q_>FMR>QS6xIo#+*0o?4O2rK_u};GC@;kRR+?<&+eXmzHnlXl@jo zXq4jZqHT~=ZsMMq=HhP}UheCaZRu0YwLDny{!HD;&%{fo9Jl!6?z41%+T;4uxvR9_ zxJ2>#hBp0suRU|K@3vh^r~0Pk7#A-!NIA%MCbi^^mh*?IMz$okYf-RSvpR@M({{cdN%^S?hAO5J$6n@w@2fN~#ixL5kL zJnQJrsJ6Qgzco&E6k6O6$owtf+tuTb9)HWbR?urTA+NG1>HhZ@mA6=RL^!pb#p*ch zrfmFL|MG75cHJ1~&TMs!$vc=-BPNDA8m%{fv7gnWy~L;guJ&oO>oaFIomq6_U7_*v zid~8y*glqj{Wd|!^FaIA+W$VqKM$5w9qp34vFi9?n>6)VqS}#_rY|>z_1w@FYh1OM z@eYsc3f=~fqAkYGYQiU_9vaFnbG9gYdh;mDrKL*ddluDuzwOtx*D`p;yKBx8*N+E2 zGQR#ehhO*V#g6NzGY=@uQ(9>2{AFLf%l4aZYx93vtA{^$Y~bE^X1jZ5AHFLG==gf0+5qxuWfMrfW_88kMt0^$p$~i!-0|_qbc{!YQ1y?790N zTU=jm+4SJ9-7c^BdseMuIdbwS2ZR6Y7ci-=vxO=tW{bX6A4NJ@o zwq&OkYzcWatNV5^uS<2qK5?x-mmN~SC&q{$JTmurNx%AP?u!Rv!pbuY!%yp9%8b8v zbLz$JjBD1WRtF?QdZsgl9F(`cyKi@YX6Liq^8q!Vg{OBWtPEMF;q-p5U2nydRZGfS l!)hIS7oK@s_*UvkaDnmNSL^M>;`TUctT70^e|Y`I{{R*p1V{h? delta 1191 zcmcb?d4qF;PJM7;g|WL~l5tK&QMo~$zh{J7WlD0fML|?{iJ88uQHEKnk*Tk#r>V1X zI#<3+U_ef~qpO>7c)oY4pRci7X=S#jb8u2&Vt!^tqIq^eXpv=wZ)IYBB$uw8LUD11 zZfc5=si~o*f@e`wu4B4FQchKRX_;kkT2W?IN>pyPn`>HTS*f>+d6H9PigR{pc4oFq zWlmJOw^wjFSD;gHew9~pfO(mhforN?c2Gf7g^{Isa8j7JS5c@%ev*ZOnMI0Qg-Oc9 z4-)lJJ|_NNA!R8+{{E?9RVnU8o{_#mPNhas>E>Q8hFSVirO7Fom1Tuy;elLfW@Y7G z;UT%Q}xkZV^#(^OvCQj}_MZvyi*_9y?#al$}ZJ(_L9R%!9E@a`6fT+*1G=RQg0&_QM^^;Rg=8e<#LmCnb!?!75<5|+OEFM zC1cN4W6-zR-62V3(e#z;>OvGtFF5Vi$o%_amu_7K^KZA~?ME4|F0*%)P$;w5A2riK z`tGd*o0mULFY8)8#c;2qj_f*_UtilFEloSxT;x>DEcS{0q$|JZ46Xh(u`d?)=2h(W zmNBmnIr}$cbM?f|BjP)DbS|j7F;7SRZb(JT#_ZFn99cX`_grAL?7{j%F$loU31dU(5L{JbT3YMO7~d(~bGyS9Z>Z^}vE z!0ePyZ^D%FCQkkPi}k5>Y#%rK|IOyd_52$`J?|ZtzhD1wLgi*7yY6d>B^?f%G9_>B z&N|s2TCTf@X`{Y;hx5(o-=4E_liqmPeLravG`5+67A`f_3&Ro!fP_EHA@u{jbjt_iIR07T*soX}A!c{ANb|zPI;U z1YNI`_dg7Y|FByB_tjZbw%qs{ZFy?NbC>(~Pu6|)zWHDmhqr_O4)G4#jV%6l&v_b{ ktxS&d9p{*4C}DHYU{0XYVX2FYC#v6+_;1nLtG(qG07j7oNB{r; diff --git a/secrets/infra/forgejo-nsc-token.age b/secrets/infra/forgejo-nsc-token.age index c018ce4f7f844b7788e5b641679729f07742668a..0a7a46816d9a245242d025f3e8c06f1548aec6ef 100644 GIT binary patch delta 777 zcmdnPwufzkPQ8J?VMbbLVWPf?lY4+;dR4HAv!`j5QCL)nx3N)fiFuWOKwh$8YFJ7{ zI#)%NZ)C8iNl1B)sgH+YL7I!3VTym0U$9qsewAr}zq@;GXr#7_eo2v2D3`9CLUD11 zZfc5=si~o*f@e`wu4B4FRhE00howPkut|Y|U!jLnsarsJWKfoGey(M;rHenv#SxhWiLNPzP60`#+GZ&cIobvK1=*ookroD7 zsfEtkMF!acQAVk5r9l>jiN>KJA!Xs_ex9ywp}x-LRpm*EW>JnHpF}`Bk!|RfU80@u znXYYSSeohK5nxv0n-t)0l;xA*R9T-H;^yZUXyKus>f)E}%4Hl}?v?DFoLO$-@9P&9 zR+#Oa;*)NaoEYKl=vn2T5nfS{m!fYPV4jj)<+hkk{hUr4#(Aj$JQpe8ZJZR(`a+IN#yoql2Zv z`5Y=?55w#aCM(N)UvlX9!>cmq<9J2co@++k)q9zq@aN|Blcjm*E$X)IOMdh4!lvb1 zoxI&o^XE@5aVz1vd@+Ci+nAKepG@vX^OV%jwL_dWnCOSy54LXnIvrR$+LcMTTcYS$0~4 zCzns4X{Co@W>RsYuTODtSWu#2imP)#c~x4Dsi9|fdWo-gu47?xq@%xiIhU@TLUD11 zZfc5=si~o*f@e`wu4B4Fda!?_XO>|`Xn}r8s84u~g@JMM=58Yk7%BRb_fwx{0=*cBpxgSyFbCn_+>rQC^_3 zSQ(IHlH`_N;FIfKS{mdP>R#?$?CF?k?o^dt&ZVoXt59Z?lIfS`<(X2MT^t#n8dw}$ zY#18sW@hXb73`60ROx6MVqBE29hv48%GEBd!u9LHvwyilU9!{S%R)TDx<1ysN<>W! z3^#v2FFLHb>fF-er0Qqw5%;r1BKg((KL2~I{ds|sXwg}<7yb1@WktfAzgNqxn0I{@ zqp8}J7KOPd{g$u)n&(u~_RRlV$s6W#)$+fePjz{4nez)1`?nu6)+qk>zO~#)AzbU? zj;Rcf60~v`@4Wy0dr_{o(#%;84Zgjc*H-@|Zu?`7@DF`@6JGMJ&}Nu_QeiX0nxLgg z<}rSYbfy}q>8CgwKbj?!VYx-@teAGm0-k?bvT@v#-psC>D9dlYymhwqoexQVAJc55 zw_ALFV6`Th;mhroTb&nW^X@0?lI!lz>8{yPsrdJM|Mm@TqJNyGEaPxbEMEBk+1>rG zzkU_dw6K(VxL!GkbIad~@6(z*_n%=7ReijlW8HZ`ik$0|5R!Hqih8 diff --git a/services/forgejo-nsc/deploy/autoscaler.yaml b/services/forgejo-nsc/deploy/autoscaler.yaml index cd39e05..4524676 100644 --- a/services/forgejo-nsc/deploy/autoscaler.yaml +++ b/services/forgejo-nsc/deploy/autoscaler.yaml @@ -26,7 +26,7 @@ instances: min_idle: 0 ttl: "20m" machine_type: "8x16" - - labels: ["namespace-profile-linux-medium-apple"] + - labels: ["namespace-profile-linux-medium-apple-v2"] min_idle: 0 ttl: "30m" machine_type: "8x16" @@ -34,7 +34,7 @@ instances: min_idle: 0 ttl: "60m" machine_type: "12x28" - - labels: ["namespace-profile-macos-large-apple"] + - labels: ["namespace-profile-macos-large-apple-v2"] min_idle: 0 ttl: "90m" machine_type: "12x28"