From 10fc07a79b6c7062df94ca5d6621d0074a6c2d0b Mon Sep 17 00:00:00 2001 From: Frostebite Date: Mon, 14 Apr 2025 01:37:55 +0100 Subject: [PATCH] Enhance LFS file pulling by configuring git for token-based authentication - Added configuration to use GIT_PRIVATE_TOKEN for git operations, replacing SSH and HTTPS URLs with token-based authentication. - Improved error handling to ensure GIT_PRIVATE_TOKEN availability before attempting to pull LFS files. - This change streamlines the process of pulling LFS files in environments requiring token authentication. --- dist/index.js | Bin 15145116 -> 15145916 bytes dist/index.js.map | Bin 16837009 -> 16837881 bytes src/model/cloud-runner/remote-client/index.ts | 17 +++++++++++++++++ 3 files changed, 17 insertions(+) diff --git a/dist/index.js b/dist/index.js index b57f1659267480404daae67329934377a57e0504..b20ac2a14677d26707c0c221ac2b9566a6d69cc8 100644 GIT binary patch delta 1159 zcmZwA*;@=?7{=kNK26bBCPR}#SsKmMB>NVUWQ3BDT_qzUEt+H}MA?_<6GQfWDI!al zY{{A>JIQ+Dz+d3<>mWLCaGyNy^IWg3*ydbTYIDxYcF1-t5h|@L*9lLT*r;e@Oo%B= z*64)0%&Jr<{1Po0QR$Y<_zbftHOZXf9qgT!o|<5`S`FruOhdTQ^mn7u35|@i>zrI0 zY-DX@h*}mY9W+X9!*W{P1D|k5bzV`So3w{HD)RLrF|Vr3Lk9W_rOed}zxp^-{?-ex z`kUeZu~Po<|2GMe5dp$WCc6lOEC>)<`O{Z4%c;-`G=dWpaE1#SqX}H0L{rrDo1+C( za6?O|(F(2M4h=le2A=RjTeL%ac*6%B&=H-`8NSe>3;dvi9{vb`0fFd>Aap}_^gvJa zLT~gzU-UzN3_vgjVh{!+1Va#tp$Nk;gkw027=Z|k#3+nLB%&||(HIL8#vumdF#!`X z36n7eQ!x#(h(kQ4BLOpD#!Mt)7A%;JB+NlFQjm%?%tbn^$iO^gVm=mNAr@gVmS8EC zVL7s}0xPi!*;tJ=$U!dFVjb3F12$q4He(C6VjJ?X9XpT@iJd6GF6@R4d$1RU*oXZ% zfP*-M!#IMYIELdmfs;6e(>Q~(C_*vL;XF!k0T)qX)Z#O~;48kBR%pLh G|M~;3(+3#< delta 961 zcmWm4Q+pKv007Xh-P*FQ39 z$`DOi%2A#QRHPD>sX|q%QJospq!zWQLtW}op9VCf5shg=Q<~A77PO=lt!YDB+R>g4 zbfgoV=|We!(VZUjq!+#ELtpyQp8*VH5Q7=QP=+y_5sYLMqZz|k#xb4=Ok@(1nZi`2 zF`XIAWEQiDVGeVdM=bMMz(N+Wm?bP_8OvG0N>;I&HLPVF>)Ak%jcj5wTZm&T+t|(y zcCw4z>|rna*v|nDa)`qm;V8#A&I#f<$te;z%^4CoOA_Ze&jl`WiOXE!D%ZHq4Q_Ia z+uY$U_qfjk9`cCCJmD$Nc+Lx6@`~5I;VtiY&j&v8iO+oDE8qCe4}K>8j{NoV??21d BLx diff --git a/dist/index.js.map b/dist/index.js.map index 404daf08ebd0ada8bd92d8cb3ef9955352b6c020..d76d1e49ece2d7cbb904894dcc602be1023d4126 100644 GIT binary patch delta 1333 zcmZw9XIRZ)9Eb5M9f_19(h}$2L1rggg@mMxlA}~K5JFQr+DNj==&@y!b5K($8~m+qp6lft6HpwJl4=+M~U zn2^kP$@K4}#LU`UF8ylM5ko`5#psU;OA(||$}8Hqx~YGziWCM!<2a?Mkc$8l5u}pz zgu+H@BqEa}nb?&m84LdeskX3vP{Uk&O_U79(gdmDe>&A~iC-cY|4#i%9RK`Pim*6I zB?^MDLNNqGF$`e{M+71fg=h>%3`QUp8jM67;*o$vBq13o7=_UogH((~8pa_V z<1qmfF$t3~1yeB%(~*H0n2A}KjZ6s4!CcJ4d@R61EW%=BVF{LE8J1%OR$>)aV-2#g z7VEGc8?X^tY{F)2!B%X;cI03Oc48NDu^W4^7yFQh{WySw$VUMRaR`TT1V?cU$8iED zaSEq#24`^&=WziSaS4}k1y^wmMYxU|xQSwv;1+J96nAhJ_i!H%@DPvi7*FsN&+r^C g@Di`^8gK9x@9-WU@DZQz8DH=f-*U4xI`^W!1GTP$K>z>% delta 1075 zcmWm0d3X;5007W$r8QTM1aYoYGS+O_>f#_7b+Ks3;KTv(J_JOm>?eEQF8DY z!8}d~ImtzC@{pG&$VYw(P>?4n#8VWe2t_Hz(-fx!B?%>r@U-Zdh|JKG@W_bBl#D<` zSW0SEso+3*Yy_n!O&QAa49`-I@>HNAm8eV=s#1;WJVzwY^8znYgO{jD6t#Gn+SH*g z(bS_p4S0oyG@>z0Xv(WJqdBk9f|j)6b>5&gZD>n7+7m+uI?{>Gbm2|9@)q6bP7iwW zHt*1j-n>g6-lH$?^8x+%kp2u{AcGjp5QZ|0kBB9X;f&y8MiS2`Mw7r8#xjlo<4NQb zCNPmnOlAsGNn#qwOlJn4lEO@8F`GHeWghccz-N5ULcU-TU$U4bEM*zXS;0zHv6?lc z@)ck64QpA)deYdyMmDjTZ~2bzNoNaN`GIY0X9qjk#cuYnmwoK#06%h&LmcJ^M>)oE zPVf^aImKzt@H4;gD`&~z9KUg%-?_j=GWml)xx{6zaFuIZ=Pzz>lUv;84q4pg9@+fO SKiua5|MGBidTdbCfd2sHPC!fm diff --git a/src/model/cloud-runner/remote-client/index.ts b/src/model/cloud-runner/remote-client/index.ts index d24066fc..38db71c3 100644 --- a/src/model/cloud-runner/remote-client/index.ts +++ b/src/model/cloud-runner/remote-client/index.ts @@ -224,6 +224,23 @@ export class RemoteClient { if (!CloudRunner.buildParameters.skipLfs) { try { RemoteClientLogger.log(`Attempting to pull LFS files with GIT_PRIVATE_TOKEN...`); + + // Configure git to use GIT_PRIVATE_TOKEN + const gitPrivateToken = process.env.GIT_PRIVATE_TOKEN; + if (!gitPrivateToken) { + throw new Error('GIT_PRIVATE_TOKEN is not available'); + } + + await CloudRunnerSystem.Run( + `git config --global --replace-all url."https://token:${gitPrivateToken}@github.com/".insteadOf ssh://git@github.com/`, + ); + await CloudRunnerSystem.Run( + `git config --global --add url."https://token:${gitPrivateToken}@github.com/".insteadOf git@github.com`, + ); + await CloudRunnerSystem.Run( + `git config --global --add url."https://token:${gitPrivateToken}@github.com/".insteadOf "https://github.com/"`, + ); + await CloudRunnerSystem.Run(`git lfs pull`); RemoteClientLogger.log(`Successfully pulled LFS files with GIT_PRIVATE_TOKEN`); assert(fs.existsSync(CloudRunnerFolders.lfsFolderAbsolute));