pr feedback
parent
939aa6b7d5
commit
7c890904ed
|
|
@ -5535,21 +5535,27 @@ class RemoteClient {
|
||||||
lines[0] = lingeringLine + lines[0];
|
lines[0] = lingeringLine + lines[0];
|
||||||
lingeringLine = lines.pop() || '';
|
lingeringLine = lines.pop() || '';
|
||||||
for (const element of lines) {
|
for (const element of lines) {
|
||||||
if (cloud_runner_options_1.default.providerStrategy !== 'k8s') {
|
// For K8s, write to both log file and stdout so kubectl logs can capture it
|
||||||
|
if (cloud_runner_options_1.default.providerStrategy === 'k8s') {
|
||||||
|
node_fs_1.default.appendFileSync(logFile, element);
|
||||||
|
// Write to stdout so kubectl logs can capture it
|
||||||
|
process.stdout.write(`${element}\n`);
|
||||||
cloud_runner_logger_1.default.log(element);
|
cloud_runner_logger_1.default.log(element);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
node_fs_1.default.appendFileSync(logFile, element);
|
|
||||||
cloud_runner_logger_1.default.log(element);
|
cloud_runner_logger_1.default.log(element);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
process.stdin.on('end', () => {
|
process.stdin.on('end', () => {
|
||||||
if (cloud_runner_options_1.default.providerStrategy !== 'k8s') {
|
if (cloud_runner_options_1.default.providerStrategy === 'k8s') {
|
||||||
|
if (lingeringLine) {
|
||||||
|
node_fs_1.default.appendFileSync(logFile, lingeringLine);
|
||||||
|
process.stdout.write(`${lingeringLine}\n`);
|
||||||
|
}
|
||||||
cloud_runner_logger_1.default.log(lingeringLine);
|
cloud_runner_logger_1.default.log(lingeringLine);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
node_fs_1.default.appendFileSync(logFile, lingeringLine);
|
|
||||||
cloud_runner_logger_1.default.log(lingeringLine);
|
cloud_runner_logger_1.default.log(lingeringLine);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -5610,12 +5616,12 @@ class RemoteClient {
|
||||||
// WIP - need to give the pod permissions to create config map
|
// WIP - need to give the pod permissions to create config map
|
||||||
await remote_client_logger_1.RemoteClientLogger.handleLogManagementPostJob();
|
await remote_client_logger_1.RemoteClientLogger.handleLogManagementPostJob();
|
||||||
// Ensure success marker is present in logs for tests
|
// Ensure success marker is present in logs for tests
|
||||||
// Log to both CloudRunnerLogger and stdout to ensure it's captured
|
// For K8s, kubectl logs reads from stdout/stderr, so we must write to stdout
|
||||||
const successMessage = `Activation successful`;
|
const successMessage = `Activation successful`;
|
||||||
cloud_runner_logger_1.default.log(successMessage);
|
// Write to stdout first so kubectl logs can capture it
|
||||||
// Also output directly to stdout to ensure it's captured by log streaming
|
|
||||||
process.stdout.write(`${successMessage}\n`);
|
process.stdout.write(`${successMessage}\n`);
|
||||||
console.log(successMessage);
|
// Also log via CloudRunnerLogger for GitHub Actions
|
||||||
|
cloud_runner_logger_1.default.log(successMessage);
|
||||||
return new Promise((result) => result(``));
|
return new Promise((result) => result(``));
|
||||||
}
|
}
|
||||||
static async runCustomHookFiles(hookLifecycle) {
|
static async runCustomHookFiles(hookLifecycle) {
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -41,20 +41,26 @@ export class RemoteClient {
|
||||||
lingeringLine = lines.pop() || '';
|
lingeringLine = lines.pop() || '';
|
||||||
|
|
||||||
for (const element of lines) {
|
for (const element of lines) {
|
||||||
if (CloudRunnerOptions.providerStrategy !== 'k8s') {
|
// For K8s, write to both log file and stdout so kubectl logs can capture it
|
||||||
|
if (CloudRunnerOptions.providerStrategy === 'k8s') {
|
||||||
|
fs.appendFileSync(logFile, element);
|
||||||
|
// Write to stdout so kubectl logs can capture it
|
||||||
|
process.stdout.write(`${element}\n`);
|
||||||
CloudRunnerLogger.log(element);
|
CloudRunnerLogger.log(element);
|
||||||
} else {
|
} else {
|
||||||
fs.appendFileSync(logFile, element);
|
|
||||||
CloudRunnerLogger.log(element);
|
CloudRunnerLogger.log(element);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
process.stdin.on('end', () => {
|
process.stdin.on('end', () => {
|
||||||
if (CloudRunnerOptions.providerStrategy !== 'k8s') {
|
if (CloudRunnerOptions.providerStrategy === 'k8s') {
|
||||||
|
if (lingeringLine) {
|
||||||
|
fs.appendFileSync(logFile, lingeringLine);
|
||||||
|
process.stdout.write(`${lingeringLine}\n`);
|
||||||
|
}
|
||||||
CloudRunnerLogger.log(lingeringLine);
|
CloudRunnerLogger.log(lingeringLine);
|
||||||
} else {
|
} else {
|
||||||
fs.appendFileSync(logFile, lingeringLine);
|
|
||||||
CloudRunnerLogger.log(lingeringLine);
|
CloudRunnerLogger.log(lingeringLine);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -126,12 +132,12 @@ export class RemoteClient {
|
||||||
await RemoteClientLogger.handleLogManagementPostJob();
|
await RemoteClientLogger.handleLogManagementPostJob();
|
||||||
|
|
||||||
// Ensure success marker is present in logs for tests
|
// Ensure success marker is present in logs for tests
|
||||||
// Log to both CloudRunnerLogger and stdout to ensure it's captured
|
// For K8s, kubectl logs reads from stdout/stderr, so we must write to stdout
|
||||||
const successMessage = `Activation successful`;
|
const successMessage = `Activation successful`;
|
||||||
CloudRunnerLogger.log(successMessage);
|
// Write to stdout first so kubectl logs can capture it
|
||||||
// Also output directly to stdout to ensure it's captured by log streaming
|
|
||||||
process.stdout.write(`${successMessage}\n`);
|
process.stdout.write(`${successMessage}\n`);
|
||||||
console.log(successMessage);
|
// Also log via CloudRunnerLogger for GitHub Actions
|
||||||
|
CloudRunnerLogger.log(successMessage);
|
||||||
|
|
||||||
return new Promise((result) => result(``));
|
return new Promise((result) => result(``));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue