Kubernetes use env var based secrets
parent
b847c60ab0
commit
4c923c5609
|
|
@ -2506,6 +2506,168 @@ class CloudRunnerNamespace {
|
||||||
exports.default = CloudRunnerNamespace;
|
exports.default = CloudRunnerNamespace;
|
||||||
|
|
||||||
|
|
||||||
|
/***/ }),
|
||||||
|
|
||||||
|
/***/ 35346:
|
||||||
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
||||||
|
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||||
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||||
|
};
|
||||||
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||||
|
exports.TaskParameterSerializer = void 0;
|
||||||
|
const __1 = __webpack_require__(41359);
|
||||||
|
const image_environment_factory_1 = __importDefault(__webpack_require__(25145));
|
||||||
|
const cloud_runner_state_1 = __webpack_require__(70912);
|
||||||
|
const cloud_runner_logger_1 = __importDefault(__webpack_require__(22855));
|
||||||
|
class TaskParameterSerializer {
|
||||||
|
static readBuildEnvironmentVariables() {
|
||||||
|
return [
|
||||||
|
{
|
||||||
|
name: 'ContainerMemory',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.cloudRunnerMemory,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'ContainerCpu',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.cloudRunnerCpu,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'GITHUB_WORKSPACE',
|
||||||
|
value: `/${cloud_runner_state_1.CloudRunnerState.buildVolumeFolder}/${cloud_runner_state_1.CloudRunnerState.buildGuid}/${cloud_runner_state_1.CloudRunnerState.repositoryFolder}/`,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'PROJECT_PATH',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.projectPath,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'BUILD_PATH',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.buildPath,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'BUILD_FILE',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.buildFile,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'BUILD_NAME',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.buildName,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'BUILD_METHOD',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.buildMethod,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'CUSTOM_PARAMETERS',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.customParameters,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'BUILD_TARGET',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.platform,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'ANDROID_VERSION_CODE',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.androidVersionCode.toString(),
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'ANDROID_KEYSTORE_NAME',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.androidKeystoreName,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'ANDROID_KEYALIAS_NAME',
|
||||||
|
value: cloud_runner_state_1.CloudRunnerState.buildParams.androidKeyaliasName,
|
||||||
|
},
|
||||||
|
...TaskParameterSerializer.serializeBuildParamsAndInput,
|
||||||
|
];
|
||||||
|
}
|
||||||
|
static get serializeBuildParamsAndInput() {
|
||||||
|
let array = new Array();
|
||||||
|
array = TaskParameterSerializer.readBuildParameters(array);
|
||||||
|
array = TaskParameterSerializer.readInput(array);
|
||||||
|
return array;
|
||||||
|
}
|
||||||
|
static readBuildParameters(array) {
|
||||||
|
const keys = Object.keys(cloud_runner_state_1.CloudRunnerState.buildParams);
|
||||||
|
for (const element of keys) {
|
||||||
|
array.push({
|
||||||
|
name: element,
|
||||||
|
value: `${cloud_runner_state_1.CloudRunnerState.buildParams[element]}`,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
array.push({ name: 'buildParameters', value: JSON.stringify(cloud_runner_state_1.CloudRunnerState.buildParams) });
|
||||||
|
return array;
|
||||||
|
}
|
||||||
|
static readInput(array) {
|
||||||
|
const input = Object.getOwnPropertyNames(__1.Input);
|
||||||
|
for (const element of input) {
|
||||||
|
cloud_runner_logger_1.default.log(JSON.stringify({
|
||||||
|
type: `${typeof __1.Input[element]}`,
|
||||||
|
name: __1.Input[element],
|
||||||
|
}, undefined, 4));
|
||||||
|
if (typeof __1.Input[element] !== 'function') {
|
||||||
|
array.push({
|
||||||
|
name: element,
|
||||||
|
value: `${__1.Input[element]}`,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return array;
|
||||||
|
}
|
||||||
|
static setupDefaultSecrets() {
|
||||||
|
cloud_runner_state_1.CloudRunnerState.defaultSecrets = [
|
||||||
|
{
|
||||||
|
ParameterKey: 'GithubToken',
|
||||||
|
EnvironmentVariable: 'GITHUB_TOKEN',
|
||||||
|
ParameterValue: cloud_runner_state_1.CloudRunnerState.buildParams.githubToken,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ParameterKey: 'branch',
|
||||||
|
EnvironmentVariable: 'branch',
|
||||||
|
ParameterValue: cloud_runner_state_1.CloudRunnerState.branchName,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ParameterKey: 'buildPathFull',
|
||||||
|
EnvironmentVariable: 'buildPathFull',
|
||||||
|
ParameterValue: cloud_runner_state_1.CloudRunnerState.buildPathFull,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ParameterKey: 'projectPathFull',
|
||||||
|
EnvironmentVariable: 'projectPathFull',
|
||||||
|
ParameterValue: cloud_runner_state_1.CloudRunnerState.projectPathFull,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ParameterKey: 'libraryFolderFull',
|
||||||
|
EnvironmentVariable: 'libraryFolderFull',
|
||||||
|
ParameterValue: cloud_runner_state_1.CloudRunnerState.libraryFolderFull,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ParameterKey: 'builderPathFull',
|
||||||
|
EnvironmentVariable: 'builderPathFull',
|
||||||
|
ParameterValue: cloud_runner_state_1.CloudRunnerState.builderPathFull,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ParameterKey: 'repoPathFull',
|
||||||
|
EnvironmentVariable: 'repoPathFull',
|
||||||
|
ParameterValue: cloud_runner_state_1.CloudRunnerState.repoPathFull,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ParameterKey: 'steamPathFull',
|
||||||
|
EnvironmentVariable: 'steamPathFull',
|
||||||
|
ParameterValue: cloud_runner_state_1.CloudRunnerState.steamPathFull,
|
||||||
|
},
|
||||||
|
];
|
||||||
|
cloud_runner_state_1.CloudRunnerState.defaultSecrets.push(...image_environment_factory_1.default.getEnvironmentVariables(cloud_runner_state_1.CloudRunnerState.buildParams).map((x) => {
|
||||||
|
return {
|
||||||
|
ParameterKey: x.name,
|
||||||
|
EnvironmentVariable: x.name,
|
||||||
|
ParameterValue: x.value,
|
||||||
|
};
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
exports.TaskParameterSerializer = TaskParameterSerializer;
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 70912:
|
/***/ 70912:
|
||||||
|
|
@ -2520,7 +2682,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||||
exports.CloudRunnerState = void 0;
|
exports.CloudRunnerState = void 0;
|
||||||
const path_1 = __importDefault(__webpack_require__(85622));
|
const path_1 = __importDefault(__webpack_require__(85622));
|
||||||
const cloud_runner_namespace_1 = __importDefault(__webpack_require__(63287));
|
const cloud_runner_namespace_1 = __importDefault(__webpack_require__(63287));
|
||||||
const task_parameter_serializer_1 = __webpack_require__(43247);
|
const task_parameter_serializer_1 = __webpack_require__(35346);
|
||||||
class CloudRunnerState {
|
class CloudRunnerState {
|
||||||
static setup(buildParameters) {
|
static setup(buildParameters) {
|
||||||
CloudRunnerState.buildParams = buildParameters;
|
CloudRunnerState.buildParams = buildParameters;
|
||||||
|
|
@ -2614,163 +2776,6 @@ class CloudRunnerStepState {
|
||||||
exports.CloudRunnerStepState = CloudRunnerStepState;
|
exports.CloudRunnerStepState = CloudRunnerStepState;
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
|
||||||
|
|
||||||
/***/ 43247:
|
|
||||||
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
||||||
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
||||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
||||||
exports.TaskParameterSerializer = void 0;
|
|
||||||
const __1 = __webpack_require__(41359);
|
|
||||||
const image_environment_factory_1 = __importDefault(__webpack_require__(25145));
|
|
||||||
const cloud_runner_state_1 = __webpack_require__(70912);
|
|
||||||
class TaskParameterSerializer {
|
|
||||||
static readBuildEnvironmentVariables() {
|
|
||||||
return [
|
|
||||||
{
|
|
||||||
name: 'ContainerMemory',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.cloudRunnerMemory,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'ContainerCpu',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.cloudRunnerCpu,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'GITHUB_WORKSPACE',
|
|
||||||
value: `/${cloud_runner_state_1.CloudRunnerState.buildVolumeFolder}/${cloud_runner_state_1.CloudRunnerState.buildGuid}/${cloud_runner_state_1.CloudRunnerState.repositoryFolder}/`,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'PROJECT_PATH',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.projectPath,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'BUILD_PATH',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.buildPath,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'BUILD_FILE',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.buildFile,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'BUILD_NAME',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.buildName,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'BUILD_METHOD',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.buildMethod,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'CUSTOM_PARAMETERS',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.customParameters,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'BUILD_TARGET',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.platform,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'ANDROID_VERSION_CODE',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.androidVersionCode.toString(),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'ANDROID_KEYSTORE_NAME',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.androidKeystoreName,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: 'ANDROID_KEYALIAS_NAME',
|
|
||||||
value: cloud_runner_state_1.CloudRunnerState.buildParams.androidKeyaliasName,
|
|
||||||
},
|
|
||||||
...TaskParameterSerializer.serializeBuildParamsAndInput,
|
|
||||||
];
|
|
||||||
}
|
|
||||||
static get serializeBuildParamsAndInput() {
|
|
||||||
let array = new Array();
|
|
||||||
array = TaskParameterSerializer.readBuildParameters(array);
|
|
||||||
TaskParameterSerializer.readInput(array);
|
|
||||||
return array;
|
|
||||||
}
|
|
||||||
static readBuildParameters(array) {
|
|
||||||
const keys = Object.keys(cloud_runner_state_1.CloudRunnerState.buildParams);
|
|
||||||
for (const element of keys) {
|
|
||||||
array.push({
|
|
||||||
name: element,
|
|
||||||
value: `${cloud_runner_state_1.CloudRunnerState.buildParams[element]}`,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
array.push({ name: 'buildParameters', value: JSON.stringify(cloud_runner_state_1.CloudRunnerState.buildParams) });
|
|
||||||
return array;
|
|
||||||
}
|
|
||||||
static readInput(array) {
|
|
||||||
const input = Object.getOwnPropertyNames(__1.Input);
|
|
||||||
for (const element of input) {
|
|
||||||
if (typeof __1.Input[element] !== 'function') {
|
|
||||||
array.push({
|
|
||||||
name: element,
|
|
||||||
value: `${__1.Input[element]}`,
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return array;
|
|
||||||
}
|
|
||||||
static setupDefaultSecrets() {
|
|
||||||
cloud_runner_state_1.CloudRunnerState.defaultSecrets = [
|
|
||||||
{
|
|
||||||
ParameterKey: 'GithubToken',
|
|
||||||
EnvironmentVariable: 'GITHUB_TOKEN',
|
|
||||||
ParameterValue: cloud_runner_state_1.CloudRunnerState.buildParams.githubToken,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
ParameterKey: 'branch',
|
|
||||||
EnvironmentVariable: 'branch',
|
|
||||||
ParameterValue: cloud_runner_state_1.CloudRunnerState.branchName,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
ParameterKey: 'buildPathFull',
|
|
||||||
EnvironmentVariable: 'buildPathFull',
|
|
||||||
ParameterValue: cloud_runner_state_1.CloudRunnerState.buildPathFull,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
ParameterKey: 'projectPathFull',
|
|
||||||
EnvironmentVariable: 'projectPathFull',
|
|
||||||
ParameterValue: cloud_runner_state_1.CloudRunnerState.projectPathFull,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
ParameterKey: 'libraryFolderFull',
|
|
||||||
EnvironmentVariable: 'libraryFolderFull',
|
|
||||||
ParameterValue: cloud_runner_state_1.CloudRunnerState.libraryFolderFull,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
ParameterKey: 'builderPathFull',
|
|
||||||
EnvironmentVariable: 'builderPathFull',
|
|
||||||
ParameterValue: cloud_runner_state_1.CloudRunnerState.builderPathFull,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
ParameterKey: 'repoPathFull',
|
|
||||||
EnvironmentVariable: 'repoPathFull',
|
|
||||||
ParameterValue: cloud_runner_state_1.CloudRunnerState.repoPathFull,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
ParameterKey: 'steamPathFull',
|
|
||||||
EnvironmentVariable: 'steamPathFull',
|
|
||||||
ParameterValue: cloud_runner_state_1.CloudRunnerState.steamPathFull,
|
|
||||||
},
|
|
||||||
];
|
|
||||||
cloud_runner_state_1.CloudRunnerState.defaultSecrets.push(...image_environment_factory_1.default.getEnvironmentVariables(cloud_runner_state_1.CloudRunnerState.buildParams).map((x) => {
|
|
||||||
return {
|
|
||||||
ParameterKey: x.name,
|
|
||||||
EnvironmentVariable: x.name,
|
|
||||||
ParameterValue: x.value,
|
|
||||||
};
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
exports.TaskParameterSerializer = TaskParameterSerializer;
|
|
||||||
|
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 91491:
|
/***/ 91491:
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -1,5 +1,5 @@
|
||||||
import * as SDK from 'aws-sdk';
|
import * as SDK from 'aws-sdk';
|
||||||
import CloudRunnerTaskDef from '../services/cloud-runner-task-def';
|
import CloudRunnerAWSTaskDef from './cloud-runner-aws-task-def';
|
||||||
import CloudRunnerSecret from '../services/cloud-runner-secret';
|
import CloudRunnerSecret from '../services/cloud-runner-secret';
|
||||||
import { AWSTemplates } from './aws-templates';
|
import { AWSTemplates } from './aws-templates';
|
||||||
import CloudRunnerLogger from '../services/cloud-runner-logger';
|
import CloudRunnerLogger from '../services/cloud-runner-logger';
|
||||||
|
|
@ -21,7 +21,7 @@ export class AWSJobStack {
|
||||||
mountdir: string,
|
mountdir: string,
|
||||||
workingdir: string,
|
workingdir: string,
|
||||||
secrets: CloudRunnerSecret[],
|
secrets: CloudRunnerSecret[],
|
||||||
): Promise<CloudRunnerTaskDef> {
|
): Promise<CloudRunnerAWSTaskDef> {
|
||||||
const taskDefStackName = `${this.baseStackName}-${buildGuid}`;
|
const taskDefStackName = `${this.baseStackName}-${buildGuid}`;
|
||||||
let taskDefCloudFormation = AWSTemplates.readTaskCloudFormationTemplate();
|
let taskDefCloudFormation = AWSTemplates.readTaskCloudFormationTemplate();
|
||||||
const cleanupTaskDefStackName = `${taskDefStackName}-cleanup`;
|
const cleanupTaskDefStackName = `${taskDefStackName}-cleanup`;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import * as AWS from 'aws-sdk';
|
import * as AWS from 'aws-sdk';
|
||||||
import CloudRunnerEnvironmentVariable from '../services/cloud-runner-environment-variable';
|
import CloudRunnerEnvironmentVariable from '../services/cloud-runner-environment-variable';
|
||||||
import * as core from '@actions/core';
|
import * as core from '@actions/core';
|
||||||
import CloudRunnerTaskDef from '../services/cloud-runner-task-def';
|
import CloudRunnerAWSTaskDef from './cloud-runner-aws-task-def';
|
||||||
import * as zlib from 'zlib';
|
import * as zlib from 'zlib';
|
||||||
import CloudRunnerLogger from '../services/cloud-runner-logger';
|
import CloudRunnerLogger from '../services/cloud-runner-logger';
|
||||||
import { Input } from '../..';
|
import { Input } from '../..';
|
||||||
|
|
@ -12,7 +12,7 @@ import { CloudRunnerBuildCommandProcessor } from '../services/cloud-runner-build
|
||||||
|
|
||||||
class AWSTaskRunner {
|
class AWSTaskRunner {
|
||||||
static async runTask(
|
static async runTask(
|
||||||
taskDef: CloudRunnerTaskDef,
|
taskDef: CloudRunnerAWSTaskDef,
|
||||||
ECS: AWS.ECS,
|
ECS: AWS.ECS,
|
||||||
CF: AWS.CloudFormation,
|
CF: AWS.CloudFormation,
|
||||||
environment: CloudRunnerEnvironmentVariable[],
|
environment: CloudRunnerEnvironmentVariable[],
|
||||||
|
|
@ -104,7 +104,7 @@ class AWSTaskRunner {
|
||||||
static async streamLogsUntilTaskStops(
|
static async streamLogsUntilTaskStops(
|
||||||
ECS: AWS.ECS,
|
ECS: AWS.ECS,
|
||||||
CF: AWS.CloudFormation,
|
CF: AWS.CloudFormation,
|
||||||
taskDef: CloudRunnerTaskDef,
|
taskDef: CloudRunnerAWSTaskDef,
|
||||||
clusterName: string,
|
clusterName: string,
|
||||||
taskArn: string,
|
taskArn: string,
|
||||||
kinesisStreamName: string,
|
kinesisStreamName: string,
|
||||||
|
|
@ -138,7 +138,7 @@ class AWSTaskRunner {
|
||||||
kinesis: AWS.Kinesis,
|
kinesis: AWS.Kinesis,
|
||||||
iterator: string,
|
iterator: string,
|
||||||
shouldReadLogs: boolean,
|
shouldReadLogs: boolean,
|
||||||
taskDef: CloudRunnerTaskDef,
|
taskDef: CloudRunnerAWSTaskDef,
|
||||||
) {
|
) {
|
||||||
const records = await kinesis
|
const records = await kinesis
|
||||||
.getRecords({
|
.getRecords({
|
||||||
|
|
@ -165,7 +165,7 @@ class AWSTaskRunner {
|
||||||
return { timestamp, shouldReadLogs };
|
return { timestamp, shouldReadLogs };
|
||||||
}
|
}
|
||||||
|
|
||||||
private static logRecords(records, iterator: string, taskDef: CloudRunnerTaskDef, shouldReadLogs: boolean) {
|
private static logRecords(records, iterator: string, taskDef: CloudRunnerAWSTaskDef, shouldReadLogs: boolean) {
|
||||||
if (records.Records.length > 0 && iterator) {
|
if (records.Records.length > 0 && iterator) {
|
||||||
for (let index = 0; index < records.Records.length; index++) {
|
for (let index = 0; index < records.Records.length; index++) {
|
||||||
const json = JSON.parse(
|
const json = JSON.parse(
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import * as AWS from 'aws-sdk';
|
import * as AWS from 'aws-sdk';
|
||||||
|
|
||||||
class CloudRunnerTaskDef {
|
class CloudRunnerAWSTaskDef {
|
||||||
public taskDefStackName!: string;
|
public taskDefStackName!: string;
|
||||||
public taskDefCloudFormation!: string;
|
public taskDefCloudFormation!: string;
|
||||||
public taskDefStackNameTTL!: string;
|
public taskDefStackNameTTL!: string;
|
||||||
|
|
@ -8,4 +8,4 @@ class CloudRunnerTaskDef {
|
||||||
public taskDefResources: AWS.CloudFormation.StackResources | undefined;
|
public taskDefResources: AWS.CloudFormation.StackResources | undefined;
|
||||||
public baseResources: AWS.CloudFormation.StackResources | undefined;
|
public baseResources: AWS.CloudFormation.StackResources | undefined;
|
||||||
}
|
}
|
||||||
export default CloudRunnerTaskDef;
|
export default CloudRunnerAWSTaskDef;
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import * as SDK from 'aws-sdk';
|
import * as SDK from 'aws-sdk';
|
||||||
import CloudRunnerSecret from '../services/cloud-runner-secret';
|
import CloudRunnerSecret from '../services/cloud-runner-secret';
|
||||||
import CloudRunnerEnvironmentVariable from '../services/cloud-runner-environment-variable';
|
import CloudRunnerEnvironmentVariable from '../services/cloud-runner-environment-variable';
|
||||||
import CloudRunnerTaskDef from '../services/cloud-runner-task-def';
|
import CloudRunnerAWSTaskDef from './cloud-runner-aws-task-def';
|
||||||
import AWSTaskRunner from './aws-task-runner';
|
import AWSTaskRunner from './aws-task-runner';
|
||||||
import { CloudRunnerProviderInterface } from '../services/cloud-runner-provider-interface';
|
import { CloudRunnerProviderInterface } from '../services/cloud-runner-provider-interface';
|
||||||
import BuildParameters from '../../build-parameters';
|
import BuildParameters from '../../build-parameters';
|
||||||
|
|
@ -80,7 +80,7 @@ class AWSBuildEnvironment implements CloudRunnerProviderInterface {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async cleanupResources(CF: SDK.CloudFormation, taskDef: CloudRunnerTaskDef) {
|
async cleanupResources(CF: SDK.CloudFormation, taskDef: CloudRunnerAWSTaskDef) {
|
||||||
CloudRunnerLogger.log('Cleanup starting');
|
CloudRunnerLogger.log('Cleanup starting');
|
||||||
await CF.deleteStack({
|
await CF.deleteStack({
|
||||||
StackName: taskDef.taskDefStackName,
|
StackName: taskDef.taskDefStackName,
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import { Input } from '../..';
|
import { Input } from '../..';
|
||||||
import ImageEnvironmentFactory from '../../image-environment-factory';
|
import ImageEnvironmentFactory from '../../image-environment-factory';
|
||||||
import CloudRunnerEnvironmentVariable from '../services/cloud-runner-environment-variable';
|
import CloudRunnerEnvironmentVariable from './cloud-runner-environment-variable';
|
||||||
import { CloudRunnerState } from './cloud-runner-state';
|
import { CloudRunnerState } from '../state/cloud-runner-state';
|
||||||
|
import CloudRunnerLogger from './cloud-runner-logger';
|
||||||
|
|
||||||
export class TaskParameterSerializer {
|
export class TaskParameterSerializer {
|
||||||
public static readBuildEnvironmentVariables(): CloudRunnerEnvironmentVariable[] {
|
public static readBuildEnvironmentVariables(): CloudRunnerEnvironmentVariable[] {
|
||||||
|
|
@ -64,7 +65,7 @@ export class TaskParameterSerializer {
|
||||||
private static get serializeBuildParamsAndInput() {
|
private static get serializeBuildParamsAndInput() {
|
||||||
let array = new Array();
|
let array = new Array();
|
||||||
array = TaskParameterSerializer.readBuildParameters(array);
|
array = TaskParameterSerializer.readBuildParameters(array);
|
||||||
TaskParameterSerializer.readInput(array);
|
array = TaskParameterSerializer.readInput(array);
|
||||||
return array;
|
return array;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -83,6 +84,16 @@ export class TaskParameterSerializer {
|
||||||
private static readInput(array: any[]) {
|
private static readInput(array: any[]) {
|
||||||
const input = Object.getOwnPropertyNames(Input);
|
const input = Object.getOwnPropertyNames(Input);
|
||||||
for (const element of input) {
|
for (const element of input) {
|
||||||
|
CloudRunnerLogger.log(
|
||||||
|
JSON.stringify(
|
||||||
|
{
|
||||||
|
type: `${typeof Input[element]}`,
|
||||||
|
name: Input[element],
|
||||||
|
},
|
||||||
|
undefined,
|
||||||
|
4,
|
||||||
|
),
|
||||||
|
);
|
||||||
if (typeof Input[element] !== 'function') {
|
if (typeof Input[element] !== 'function') {
|
||||||
array.push({
|
array.push({
|
||||||
name: element,
|
name: element,
|
||||||
|
|
@ -4,7 +4,7 @@ import CloudRunnerEnvironmentVariable from '../services/cloud-runner-environment
|
||||||
import CloudRunnerNamespace from '../services/cloud-runner-namespace';
|
import CloudRunnerNamespace from '../services/cloud-runner-namespace';
|
||||||
import { CloudRunnerProviderInterface } from '../services/cloud-runner-provider-interface';
|
import { CloudRunnerProviderInterface } from '../services/cloud-runner-provider-interface';
|
||||||
import CloudRunnerSecret from '../services/cloud-runner-secret';
|
import CloudRunnerSecret from '../services/cloud-runner-secret';
|
||||||
import { TaskParameterSerializer } from './task-parameter-serializer';
|
import { TaskParameterSerializer } from '../services/task-parameter-serializer';
|
||||||
|
|
||||||
export class CloudRunnerState {
|
export class CloudRunnerState {
|
||||||
public static CloudRunnerProviderPlatform: CloudRunnerProviderInterface;
|
public static CloudRunnerProviderPlatform: CloudRunnerProviderInterface;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue