From 4dd5a3fb85021a48b2ce3314cfa481ff7d4cacd3 Mon Sep 17 00:00:00 2001 From: Toby Harris Date: Thu, 21 Sep 2023 14:17:50 +0100 Subject: [PATCH] GAME_CI_BUILD_SUCCESS and GAME_CI_STEP_SUMMARY --- dist/index.js | Bin 22170535 -> 22171220 bytes dist/index.js.map | Bin 14627283 -> 14628030 bytes src/model/exec-with-error-check.ts | 32 ++++++++++++++++++++++------- 3 files changed, 25 insertions(+), 7 deletions(-) diff --git a/dist/index.js b/dist/index.js index 416f12b4bcf89f72dbfba874bfcf285551e89d29..f746e365e74aa327a5ef07c3724a3454113668f5 100644 GIT binary patch delta 2138 zcmb8vcX$(J9Ki9X^g0N8ls(>tluH;XWkU<43n(~w8RLQ+N8j4iP(ro0K#$5Q!RJDp)81ycO8Ur*=jiM8K}y#> z_L_p#Y0Kw?=Y(~S%FR`JPH99P@ABrCVX5j!JRBUaH$92m$-mfd#&|pbe`yxU0(rcN z$6XVLow{sId%J4qdd<#pY5l7T&7cZLVyfB<2bC2M1X!Mbr)7p!ZKTFhZo`Z%FrupQ zd($m7zwx_hda0I*ME`lZV;0Bbt@5mFaA`?!83}@g>oQ36BfwOTA z&P5&0!}(Z=3veMW!YW*hORyUCxD;z}8P?)*tiu(saV4(8)mV=WxCYl^Bd){sxB)lf zCftl$(12TU8*axPxD$8bZfwFmxEJ@~er(1Aco19g5FW-OcodJ}acspC*oG&u9Z%tD zJcDQP9G=Gxynvl}5ij9oyn4DrqTkNLoo+OWH`=Ovw;QmSm`8m}IzQgk+>-lw`DI zjAX1NTaqIgCmAovl}wQ2N%AEHl0r$5WTIq}WU{1KGDR{~QX=t5N+r`IWs>O$oA^UX G(EkDg$Tmj+ delta 1530 zcmW;MWq6JO6o>KaDR}1yKlvQ3OR%48>6b!3aS~grXF}P#R@W7UfVL6;KhC5RM2$ zA_|pJ1yxZE)lmaAQ46(E2X#>o_0a$g(Fl#v1WnNl&Cvoa(F(2625r#}?a=`p(FvUq zjV_2mS9C)xx}yi;&=c|Kh2H3czUYVk7=VEoguxhsp%{kYNWch;L?T9EG{#^o#$h}r zU?L`AGNxcEreQi}z{E_-Dea1e)Z7)Njv$8a1eIDwNmh0{2Lvp9$IxPXhe zgv+>stGI^ixPhCvh14vM4Vq&O>9C4=IkxGHW+MkSMy zS#ejgC|MN`C7a@@WLI)1UP?|Smts@A6}#f2_$q#izw-Zt+?oQFJW5_ApAw|xR|+Tv zl|o8krHE2gDW()xN+`ifh*DAsRZ1ygN@=BxQdTLalvgS!6_rX#xDug6Dp5*hrHWEj Usiss{YA7|8T9$o06w6)ze>bczUjP6A diff --git a/dist/index.js.map b/dist/index.js.map index 5ae2fa44a584427c19f336c326342f3e9e7da505..3604f1a6d3415e546c67832daadad7d4f712a522 100644 GIT binary patch delta 1643 zcmb8tX>e0j6u|Lmp+Q>3?gb;wZ7se8A#Ghi>}Hn$Rnn#@MJa_eO)4N)Uf+le8UB|lA$_B%2L zrWczQh9jz{(r&~;A#WsZ_xk;dRj*&ugI1*>ruF&7$$Z6@+-r-4qpI~xofQ=;ZT7Vh zEh_OkMjVXI2zXaQkOevgdPeJ)#*JQWR6lUD6U z)E|yTQ}M|<$;Tc_hFi;5ovP5j)ZwCl(^>CcZl7IN9t@p4RVrSHIyn|7E;K6>B`9-* zqS$24!P3I{U0ph_ViR?BLaA;Ei-{6W^=^njIHvn+l`1*5N6D}Hzmp&DbfSqD$$vH; z&yl~kS!~@+nqTPQs0e7fUl=i;kGY>YfToMSaL^D|Rg3nj5z&$SffPgZjNf)@goX%5 zPWSPjyRg~2ZT+2Y3j|6~iVIMNS-21itVqVr#zmNexv--g6{y6;xCEEtGR(t#T#f~} z0#&F+4Qf$`D^ZUIG@=O(EW{!#Ml-I$)mQ>2TF?p?+TcbzmZAg8a1E}-a&%$^y08+f z;6XRM=z$M@s0bj4UTC-u*P{<1=m=vq)*u1{QN(Zq*5XFQaT9LFEw~lya2wX+cHDst z*oZrE7y5BGHeoZi;2zwI`*1(DVjH$&2Ohvq3_#*RJcNfah)1vskK!>rjwkRWp2E|3 z2G8O-JdfRY0WV??UcwMw#xVBc6^!6jyoT42z#DiIZ{cn1!#miIcQJ}FyodMk0Y1b> v_!ytyQ+$R4_#9v0OB}>k_!{5f5Dw!Aj^bM!!*P6v@9_hEOmw<`ivRpC_T+Cp delta 1031 zcmWmA>0irn0KoCrR9m%VL>bnva+FZ+Xe2UswN*ppN@1vGLPs>fk^bn01U(+48{-)MHGf%IHIA&2#iDwMj;lXF$QrM3mwK`JSJcwCSfwB zARY-wgdPSYAsHz!Vk)L#I#MwMGm(Z_n2kA@i+M=Ld}QGN%>pdMBABokORyAK$VLv# zSOyE0BNr>M604Ahe5^(R)}Rn;u?|I8j}0isMr^`nSg{3Lu?^d?13R$`C9q*PO0frf zu@7Ys*pCA^h(kDxavVVgj-nD(IELdmfs;6e(>Q~(sKz;*#|6~Dj*GYi2QK3ZuEL3H zxQ-jRiCWx39qMr#cW@W?a32rw5RdQ}Pw*7a(17Q7fkrgpC0?N!uki+N@ec3t0WJ6l N7d|<4#?Sd*{sHOutHJ;P diff --git a/src/model/exec-with-error-check.ts b/src/model/exec-with-error-check.ts index 3240a07d..4d0c3290 100644 --- a/src/model/exec-with-error-check.ts +++ b/src/model/exec-with-error-check.ts @@ -1,4 +1,5 @@ import { getExecOutput, ExecOptions } from '@actions/exec'; +import { summary } from '@actions/core'; export async function execWithErrorCheck( commandLine: string, @@ -12,18 +13,35 @@ export async function execWithErrorCheck( return result.exitCode; } - // Check for errors in the Build Results section - const match = result.stdout.match(/^#\s*Build results\s*#(.*)^Size:/ms); + // Check for errors in the Unity Build Results section + const unityMatch = result.stdout.match(/^#\s*Build results\s*#(.*)^Size:/ms); - if (match) { - const buildResults = match[1]; + if (unityMatch) { + const buildResults = unityMatch[1]; const errorMatch = buildResults.match(/^Errors:\s*(\d+)$/m); if (errorMatch && Number.parseInt(errorMatch[1], 10) !== 0) { throw new Error(`There was an error building the project. Please read the logs for details.`); } - } else { - throw new Error(`There was an error building the project. Please read the logs for details.`); + await summary.addHeading('Build Results').addQuote(unityMatch[0]).write(); + + return result.exitCode; } - return result.exitCode; + // Check for presence of game-ci message(s) + const gameciMatch = result.stdout.match(/^GAME_CI_BUILD_SUCCESS$/ms); + + if (gameciMatch) { + const quote = + result.stdout + .match(/^GAME_CI_STEP_SUMMARY.*$/gm) + ?.map((x) => x.replace('GAME_CI_STEP_SUMMARY', '')) + .join('\n\n') ?? ''; + await summary.addHeading('Build Results').addQuote(quote).write(); + + return result.exitCode; + } + + throw new Error( + `There was an error building the project. Did not find success messages in logs (either Unity's build results or GAME_CI_BUILD_SUCCESS).`, + ); }