From d21b193601e98607bbef53de5be7fff382d7a569 Mon Sep 17 00:00:00 2001 From: Frostebite Date: Sat, 13 May 2023 20:10:19 +0100 Subject: [PATCH] log file path --- dist/index.js | Bin 19458985 -> 19459783 bytes dist/index.js.map | Bin 13757634 -> 13758484 bytes src/model/cli/cli.ts | 29 ------------------ src/model/cloud-runner/remote-client/index.ts | 29 ++++++++++++++++++ .../remote-client/remote-client-logger.ts | 20 +++++++++++- 5 files changed, 48 insertions(+), 30 deletions(-) diff --git a/dist/index.js b/dist/index.js index 34f6a93be0221a20b22ff1dc0082e7efd38c20a9..fd871be2092a3e974f62c9fa368bca412af008b2 100644 GIT binary patch delta 1751 zcmZY9X;f5I0KoC{-WwPOaM-~SVMY`L4Fp;QNiiwf)KRpeTw;(BuxVz1A)IWnEUB!Z zUU}OTj25LL3W-*zh%DQzG%~bQGNmlEJ9YIP=2CsT$0Fi)so5RJJVlBav>LKH>Z)ca zB2Z{q`e1d0Xc|@>x=VzMJ$;5i(HN<}rNn-L|)hyN@G6kPok-z~gc`m-w7zGd<-sqUyL3CAI~Q2^TrZs#VyJ#u-KP z!8l{r;Q@7Nnx0ads~=mQBPIrDVS27Vv1@UFRC%eZ@EuD(h(!f zX3ZkJI~0RuX{FoYn&qsiag;l4Q*9*+3S5;=w{MY6vWgR_Y_vT zoT;ZQ5RO_kBk<&a$TVvSU7bd4x+3z;T1e=ri$sK3ixyjpw8*fN!*Zv2e)p18QPrzP zg~(GgGRNVo5R>e6vHGyv7;)P5iMBj7GpywQ8Jyzfb+=!cSGgjgj+=^AW4Yy-8>Tw6|#9df}yKxWh zMFSdfAMS^a2k;=)Lf|1hj7RV&9>Y4UM-!T{0gs~vPvA*Bg{QF*o6w49@GPD~8=gly zUcig!z-DyfC3N9syn z89v8$?7$c3$CucNuP}gJ*p0984fbF!_F)j;Vn4pa0UX2-zQ+$Zgdgz}hH)52@H2kF zulNnW;}86azi<@C@HdX*ADmcoB1ma~j4Gqa7-Rxu0%eRc|IIVWr(l^7nNXP#GG>`D znQ)m1nMj!^nP{09nOK=PnUOLUnNc$FGNWY@WD;epGB%kpGD$LHWyZ-Q%cRJRS9y!1V*mgE delta 1506 zcmW;MX;joz7=ZCJ_s$gm@%l3_SpVtq+=e+0K?c43z+vZ)@)8^e6ER(Jrn+RVv8=Y&hP!IVNvYfV zB+;>X;r6;Hne5oi#ntuA)%C7Ob-h_#5t+5e%nn8>9oyoP&QUg2rc5X5JU(^A`kf(iBTAhF*piiaWsy>u{aLLV;sh# z04JajMK}=?a1u^NF;2lmoQg>}4X5J_oQV=l##xwxQk;#cn1<iFz^zz`7Tktb+>S8rz$)Ac!D`%vyKxWh#eKLR4`2-* z#6xJq!*~Rb;xVknI;_VAJdP*Ojwi7ZPvL2F;2AuNO^Dz*JdYQ!886}`yo^q~f>-ex zwqPq>#~bLvn|KS`@HV#N9lVS8umd~sK0d&Q*oAKN;3M>6H}>FT?8PVe6n*#%`|vsT z;|qL=ukbYv;2V64gZK{L;|KhRpYSt&!LRrYzvB<|<4^pBzwrvJ>>uAxGb1~h=6ZciDp7rB1U0k5y;!hu5QZ;8>nfbl%$19 zSdXS92$hirMe*+)G>q&8ai*KPaJaH7$6|)K>7p-~4KrPQX3lfwoZoZKbLrP%|KnrB z{=L6h+Im+88-)`A=V!GR9H6lDIm3>vmBxYK{I;=;W>a44j{fO0JqxX~O=4diZ80uP zSmv9iHv2~M&P^|xoJGyfA`@m|Hq7vYKLQYlAOypL5Lgk4FoYulk%&Sx?m`UaAl7ge zX=nBtmw(X?#Y#rJ?k6qnD$6)AuBDlqOD8qxM(Jc+@IKjcQ&Y0LO{E(LZ)%%OvNTgq zlJI^#$OyQl<<6*uI$Xwn*UY8_891fN<@z7mUvjHSStY4nMT_4!NqgEGMc5#;@z%W4QIW&ks|RET9#aCS0NHQsiljpLxoGuq?Rb2 zvns@>=uk^clA5CD%hf$|bEN&G9wKW7^pITyAs=aJmO~oR2O?8@Yr>{&dW~nG?>{P)L->G87-lF?y zTV0-VcfO;puDse|Uu7>V&UU*T9$$%FN`_Qytk3DHODp$!9iFO9HB*g}Z(k7m5CgEs zs6_ue8{KN2akx_zoBsQBpk>BIiRj|Zab8=S;Or ze78!7{Qp#CEKpw-dS}k|sX>>?HItqpJq;>G+B0oI(`g|y(iTYT4NaF`ug%&#-lZ@X zHpIh@1SDb}?#6uFgCrzl0aCCKsaS+Gq$2~1u>?!849k&;6}T7o;eM<{7FJ<39>5wr zh_%Q@4jw`-*5P41g7wJ52IONS9z_8j!{aE#COm;6Jc-SC3QwaL&!7aQ*n%>YqXLzv zf&*Jo4JTaKhV5|US$I$bFLt07b@1Ui)T04Au?xHLJoaEOUcf#yVm}U`2`}O$97Ho- z#vvTWD|i(xID(@%hE}|WHXO(6cmskHIEgoL3a9ZF-o_cUqXTEri7vc@ckv$1;eB-D z1DwYNe25~o#lgLidqweL+*YcowOb&PS<5{$+) zEzD)N*;Belc;9ZSuV4D=7tPi2^jfs+YHi7&yQFV&(WF85H5Jv{o%MDN&ENu8G>02n zz#Sg&gb7~oMoYAU89wkuYgo_*ZP5;XM!ntYaLCcS%2x`ODi4WB)6FtFCa{AfI`p>U zIH-Hc=WWVe3bzNCMi8ALrs?A9QFSHsYUL6wOaQ2_}ir7lhr2SKK>Soo1l7%&8ecKVYP~pJ9%oj zIVUx9NnUF5yo~hJth}cCTDA(3;Cw!p{EG3A@qQs*Vk!v;l9XE2-1zX#y2w?Ie7DBR z&ts~;%aDw8i7i(lQruv5bJ~Ac;cwV~1pF>A-sGzyiFfPol { - core.info(`Running POST build tasks`); - - await Caching.PushToCache( - CloudRunnerFolders.ToLinuxFolder(`${CloudRunnerFolders.cacheFolderForCacheKeyFull}/Library`), - CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.libraryFolderAbsolute), - `lib-${CloudRunner.buildParameters.buildGuid}`, - ); - - await Caching.PushToCache( - CloudRunnerFolders.ToLinuxFolder(`${CloudRunnerFolders.cacheFolderForCacheKeyFull}/build`), - CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.projectBuildFolderAbsolute), - `build-${CloudRunner.buildParameters.buildGuid}`, - ); - - if (!BuildParameters.shouldUseRetainedWorkspaceMode(CloudRunner.buildParameters)) { - await CloudRunnerSystem.Run( - `rm -r ${CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute)}`, - ); - } - - await RemoteClient.runCustomHookFiles(`after-build`); - - return new Promise((result) => result(``)); - } } diff --git a/src/model/cloud-runner/remote-client/index.ts b/src/model/cloud-runner/remote-client/index.ts index 5791c35e..c949cb31 100644 --- a/src/model/cloud-runner/remote-client/index.ts +++ b/src/model/cloud-runner/remote-client/index.ts @@ -23,6 +23,35 @@ export class RemoteClient { await RemoteClient.replaceLargePackageReferencesWithSharedReferences(); await RemoteClient.runCustomHookFiles(`before-build`); } + + @CliFunction(`remote-cli-post-build`, `runs a cloud runner build`) + public static async PostCLIBuild(): Promise { + RemoteClientLogger.log(`Running POST build tasks`); + + await Caching.PushToCache( + CloudRunnerFolders.ToLinuxFolder(`${CloudRunnerFolders.cacheFolderForCacheKeyFull}/Library`), + CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.libraryFolderAbsolute), + `lib-${CloudRunner.buildParameters.buildGuid}`, + ); + + await Caching.PushToCache( + CloudRunnerFolders.ToLinuxFolder(`${CloudRunnerFolders.cacheFolderForCacheKeyFull}/build`), + CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.projectBuildFolderAbsolute), + `build-${CloudRunner.buildParameters.buildGuid}`, + ); + + if (!BuildParameters.shouldUseRetainedWorkspaceMode(CloudRunner.buildParameters)) { + await CloudRunnerSystem.Run( + `rm -r ${CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute)}`, + ); + } + + await RemoteClient.runCustomHookFiles(`after-build`); + + RemoteClientLogger.printCollectedLogs(); + + return new Promise((result) => result(``)); + } static async runCustomHookFiles(hookLifecycle: string) { RemoteClientLogger.log(`RunCustomHookFiles: ${hookLifecycle}`); const gameCiCustomHooksPath = path.join(CloudRunnerFolders.repoPathAbsolute, `game-ci`, `hooks`); diff --git a/src/model/cloud-runner/remote-client/remote-client-logger.ts b/src/model/cloud-runner/remote-client/remote-client-logger.ts index 2bac8ef3..8541e342 100644 --- a/src/model/cloud-runner/remote-client/remote-client-logger.ts +++ b/src/model/cloud-runner/remote-client/remote-client-logger.ts @@ -1,8 +1,17 @@ +import path from 'node:path'; +import { CloudRunnerFolders } from '../options/cloud-runner-folders'; import CloudRunnerLogger from '../services/core/cloud-runner-logger'; +import fs from 'node:fs'; export class RemoteClientLogger { + private static get LogFilePath() { + return path.join(CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute, `job-log.txt`); + } + public static log(message: string) { - CloudRunnerLogger.log(`[Client] ${message}`); + const finalMessage = `[Client] ${message}`; + this.appendToFile(finalMessage); + CloudRunnerLogger.log(finalMessage); } public static logCliError(message: string) { @@ -16,4 +25,13 @@ export class RemoteClientLogger { public static logWarning(message: string) { CloudRunnerLogger.logWarning(message); } + + public static appendToFile(message: string) { + fs.appendFileSync(RemoteClientLogger.LogFilePath, message); + } + + public static printCollectedLogs() { + CloudRunnerLogger.log(`Collected Logs`); + CloudRunnerLogger.log(fs.readFileSync(RemoteClientLogger.LogFilePath).toString()); + } }