Remote CLI logging improvements

pull/310/head
Frostebite 2021-12-24 03:18:44 +00:00
parent 2ba26e5364
commit bc13256996
6 changed files with 20 additions and 13 deletions

13
dist/index.js vendored
View File

@ -679,7 +679,7 @@ class AWSBuildRunner {
const json = JSON.parse(zlib.gunzipSync(Buffer.from(records.Records[index].Data, 'base64')).toString('utf8'));
if (json.messageType === 'DATA_MESSAGE') {
for (let logEventsIndex = 0; logEventsIndex < json.logEvents.length; logEventsIndex++) {
const message = json.logEvents[logEventsIndex].message;
let message = json.logEvents[logEventsIndex].message;
if (json.logEvents[logEventsIndex].message.includes(taskDef.logid)) {
cloud_runner_logger_1.default.log('End of cloud runner job logs');
readingLogs = false;
@ -687,6 +687,7 @@ class AWSBuildRunner {
else if (message.includes('Rebuilding Library because the asset database could not be found!')) {
core.warning('LIBRARY NOT FOUND!');
}
message = `[Cloud-Runner-Agent] ${message}`;
if (cloud_runner_state_1.CloudRunnerState.buildParams.logToFile) {
fs_1.default.appendFileSync(`${cloud_runner_state_1.CloudRunnerState.buildGuid}-outputfile.txt`, `${message}\r\n`);
}
@ -1620,10 +1621,12 @@ class KubernetesLogging {
let didStreamAnyLogs = false;
stream._write = (chunk, encoding, next) => {
didStreamAnyLogs = true;
let message = chunk.toString();
message = `[Cloud-Runner-Agent] ${message}`;
if (cloud_runner_state_1.CloudRunnerState.buildParams.logToFile) {
fs_1.default.appendFileSync(`${cloud_runner_state_1.CloudRunnerState.buildGuid}-outputfile.txt`, `${chunk.toString()}\r\n`);
fs_1.default.appendFileSync(`${cloud_runner_state_1.CloudRunnerState.buildGuid}-outputfile.txt`, `${message}\r\n`);
}
logCallback(chunk.toString());
logCallback(message);
next();
};
const logOptions = {
@ -2183,13 +2186,13 @@ class RunCli {
// eslint-disable-next-line no-console
console.log(`[Remote-CLI][ERROR] ${error.message}`);
promise(error.message);
return;
throw error;
}
if (stderr) {
// eslint-disable-next-line no-console
console.log(`[Remote-CLI][STD-ERROR] ${stderr}`);
promise(stderr);
return;
throw stderr;
}
// eslint-disable-next-line no-console
console.log(`[Remote-CLI] ${stdout}`);

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -171,13 +171,14 @@ class AWSBuildRunner {
);
if (json.messageType === 'DATA_MESSAGE') {
for (let logEventsIndex = 0; logEventsIndex < json.logEvents.length; logEventsIndex++) {
const message = json.logEvents[logEventsIndex].message;
let message = json.logEvents[logEventsIndex].message;
if (json.logEvents[logEventsIndex].message.includes(taskDef.logid)) {
CloudRunnerLogger.log('End of cloud runner job logs');
readingLogs = false;
} else if (message.includes('Rebuilding Library because the asset database could not be found!')) {
core.warning('LIBRARY NOT FOUND!');
}
message = `[Cloud-Runner-Agent] ${message}`;
if (CloudRunnerState.buildParams.logToFile) {
fs.appendFileSync(`${CloudRunnerState.buildGuid}-outputfile.txt`, `${message}\r\n`);
}

View File

@ -32,7 +32,9 @@ describe('Cloud Runner', () => {
const inputKeys = Object.getOwnPropertyNames(Input);
for (const element of inputKeys) {
if (Input[element] !== undefined && typeof Input[element] != 'function') {
expect(file.replace(/\s+/g, '')).toContain(`${element}=${Input[element].toString().replace(/\s+/g, '')}`);
expect(file.replace(/\s+/g, '').replace(`[Cloud-Runner-Agent]`, ``)).toContain(
`${element}=${Input[element].toString().replace(/\s+/g, '')}`,
);
}
}
}

View File

@ -18,11 +18,12 @@ class KubernetesLogging {
let didStreamAnyLogs: boolean = false;
stream._write = (chunk, encoding, next) => {
didStreamAnyLogs = true;
let message = chunk.toString();
message = `[Cloud-Runner-Agent] ${message}`;
if (CloudRunnerState.buildParams.logToFile) {
fs.appendFileSync(`${CloudRunnerState.buildGuid}-outputfile.txt`, `${chunk.toString()}\r\n`);
fs.appendFileSync(`${CloudRunnerState.buildGuid}-outputfile.txt`, `${message}\r\n`);
}
logCallback(chunk.toString());
logCallback(message);
next();
};
const logOptions = {

View File

@ -8,13 +8,13 @@ export class RunCli {
// eslint-disable-next-line no-console
console.log(`[Remote-CLI][ERROR] ${error.message}`);
promise(error.message);
return;
throw error;
}
if (stderr) {
// eslint-disable-next-line no-console
console.log(`[Remote-CLI][STD-ERROR] ${stderr}`);
promise(stderr);
return;
throw stderr;
}
// eslint-disable-next-line no-console
console.log(`[Remote-CLI] ${stdout}`);