serialize build params via prefixed env var

pull/461/head
Frostebite 2022-09-19 00:48:05 +01:00
parent 857c9c1ca6
commit fd513da260
4 changed files with 25 additions and 7 deletions

15
dist/index.js vendored
View File

@ -485,6 +485,7 @@ const lfs_hashing_1 = __nccwpck_require__(8915);
const remote_client_1 = __nccwpck_require__(48135); const remote_client_1 = __nccwpck_require__(48135);
const cloud_runner_options_reader_1 = __importDefault(__nccwpck_require__(3343)); const cloud_runner_options_reader_1 = __importDefault(__nccwpck_require__(3343));
const github_1 = __importDefault(__nccwpck_require__(83654)); const github_1 = __importDefault(__nccwpck_require__(83654));
const task_parameter_serializer_1 = __nccwpck_require__(35346);
class Cli { class Cli {
static get isCliMode() { static get isCliMode() {
return Cli.options !== undefined && Cli.options.mode !== undefined && Cli.options.mode !== ''; return Cli.options !== undefined && Cli.options.mode !== undefined && Cli.options.mode !== '';
@ -534,7 +535,7 @@ class Cli {
const results = cli_functions_repository_1.CliFunctionsRepository.GetCliFunctions(Cli.options.mode); const results = cli_functions_repository_1.CliFunctionsRepository.GetCliFunctions(Cli.options.mode);
cloud_runner_logger_1.default.log(`Entrypoint: ${results.key}`); cloud_runner_logger_1.default.log(`Entrypoint: ${results.key}`);
Cli.options.versioning = 'None'; Cli.options.versioning = 'None';
const buildParameter = JSON.parse(process.env.BUILD_PARAMETERS || '{}'); const buildParameter = task_parameter_serializer_1.TaskParameterSerializer.readBuildParameterFromEnvironment();
cloud_runner_logger_1.default.log(`Build Params: cloud_runner_logger_1.default.log(`Build Params:
${JSON.stringify(buildParameter, undefined, 4)} ${JSON.stringify(buildParameter, undefined, 4)}
`); `);
@ -4654,6 +4655,7 @@ const __1 = __nccwpck_require__(41359);
const cloud_runner_custom_hooks_1 = __nccwpck_require__(58873); const cloud_runner_custom_hooks_1 = __nccwpck_require__(58873);
const cloud_runner_query_override_1 = __importDefault(__nccwpck_require__(31011)); const cloud_runner_query_override_1 = __importDefault(__nccwpck_require__(31011));
const cloud_runner_options_reader_1 = __importDefault(__nccwpck_require__(3343)); const cloud_runner_options_reader_1 = __importDefault(__nccwpck_require__(3343));
const build_parameters_1 = __importDefault(__nccwpck_require__(80787));
// import CloudRunner from '../cloud-runner'; // import CloudRunner from '../cloud-runner';
// import ImageEnvironmentFactory from '../../image-environment-factory'; // import ImageEnvironmentFactory from '../../image-environment-factory';
class TaskParameterSerializer { class TaskParameterSerializer {
@ -4693,15 +4695,22 @@ class TaskParameterSerializer {
}); });
return array; return array;
} }
static readBuildParameterFromEnvironment() {
const buildParameters = new build_parameters_1.default();
const keys = Object.keys(build_parameters_1.default);
for (const element of keys) {
buildParameters[element] = process.env[`param-${element}`];
}
return buildParameters;
}
static readBuildParameters(array, buildParameters) { static readBuildParameters(array, buildParameters) {
const keys = Object.keys(buildParameters); const keys = Object.keys(buildParameters);
for (const element of keys) { for (const element of keys) {
array.push({ array.push({
name: element, name: `param-${element}`,
value: buildParameters[element], value: buildParameters[element],
}); });
} }
array.push({ name: 'buildParameters', value: JSON.stringify(buildParameters) });
return array; return array;
} }
static readInput(array) { static readInput(array) {

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -11,6 +11,7 @@ import { LfsHashing } from '../cloud-runner/services/lfs-hashing';
import { RemoteClient } from '../cloud-runner/remote-client'; import { RemoteClient } from '../cloud-runner/remote-client';
import CloudRunnerOptionsReader from '../cloud-runner/services/cloud-runner-options-reader'; import CloudRunnerOptionsReader from '../cloud-runner/services/cloud-runner-options-reader';
import GitHub from '../github'; import GitHub from '../github';
import { TaskParameterSerializer } from '../cloud-runner/services/task-parameter-serializer';
export class Cli { export class Cli {
public static options; public static options;
@ -70,7 +71,7 @@ export class Cli {
CloudRunnerLogger.log(`Entrypoint: ${results.key}`); CloudRunnerLogger.log(`Entrypoint: ${results.key}`);
Cli.options.versioning = 'None'; Cli.options.versioning = 'None';
const buildParameter = JSON.parse(process.env.BUILD_PARAMETERS || '{}'); const buildParameter = TaskParameterSerializer.readBuildParameterFromEnvironment();
CloudRunnerLogger.log(`Build Params: CloudRunnerLogger.log(`Build Params:
${JSON.stringify(buildParameter, undefined, 4)} ${JSON.stringify(buildParameter, undefined, 4)}
`); `);

View File

@ -51,15 +51,23 @@ export class TaskParameterSerializer {
return array; return array;
} }
static readBuildParameterFromEnvironment(): BuildParameters {
const buildParameters = new BuildParameters();
const keys = Object.keys(BuildParameters);
for (const element of keys) {
buildParameters[element] = process.env[`param-${element}`];
}
return buildParameters;
}
private static readBuildParameters(array: any[], buildParameters: BuildParameters) { private static readBuildParameters(array: any[], buildParameters: BuildParameters) {
const keys = Object.keys(buildParameters); const keys = Object.keys(buildParameters);
for (const element of keys) { for (const element of keys) {
array.push({ array.push({
name: element, name: `param-${element}`,
value: buildParameters[element], value: buildParameters[element],
}); });
} }
array.push({ name: 'buildParameters', value: JSON.stringify(buildParameters) });
return array; return array;
} }