pull/289/head
Frostebite 2021-08-17 22:13:46 +00:00 committed by GitHub
parent af72cd4a7a
commit 150c69904b
14 changed files with 94 additions and 94 deletions

View File

@ -51,7 +51,7 @@ jobs:
id: k8s-unity-build
env:
DEBUG: true
remoteBuilderBranch: remote-builder/unified-providers
cloudRunerBranch: remote-builder/unified-providers
with:
cloudRunnerCluster: k8s
targetPlatform: ${{ matrix.targetPlatform }}

60
dist/index.js vendored
View File

@ -47,10 +47,10 @@ function run() {
const buildParameters = yield model_1.BuildParameters.create();
const baseImage = new model_1.ImageTag(buildParameters);
let builtImage;
switch (buildParameters.remoteBuildCluster) {
switch (buildParameters.cloudRunnerCluster) {
case 'aws':
case 'k8s':
yield model_1.RemoteBuilder.build(buildParameters, baseImage);
yield model_1.CloudRunner.build(buildParameters, baseImage);
break;
// default and local case
default:
@ -229,12 +229,12 @@ class BuildParameters {
customParameters: input_1.default.customParameters,
sshAgent: input_1.default.sshAgent,
chownFilesTo: input_1.default.chownFilesTo,
remoteBuildCluster: input_1.default.remoteBuildCluster,
cloudRunnerCluster: input_1.default.cloudRunnerCluster,
awsBaseStackName: input_1.default.awsBaseStackName,
kubeConfig: input_1.default.kubeConfig,
githubToken: input_1.default.githubToken,
remoteBuildMemory: input_1.default.remoteBuildMemory,
remoteBuildCpu: input_1.default.remoteBuildCpu,
cloudRunnerMemory: input_1.default.cloudRunnerMemory,
cloudRunnerCpu: input_1.default.cloudRunnerCpu,
kubeVolumeSize: input_1.default.kubeVolumeSize,
kubeVolume: input_1.default.kubeVolume,
postBuildSteps: input_1.default.postBuildSteps,
@ -917,7 +917,7 @@ class CloudRunner {
CloudRunner.setupDefaultSecrets();
try {
CloudRunner.setupBuildPlatform();
yield this.RemoteBuilderProviderPlatform.setupSharedBuildResources(this.buildGuid, this.buildParams, this.branchName, this.defaultSecrets);
yield this.CloudRunnerProviderPlatform.setupSharedBuildResources(this.buildGuid, this.buildParams, this.branchName, this.defaultSecrets);
yield CloudRunner.SetupStep();
const t2 = Date.now();
core.info(`Setup time: ${Math.floor((t2 - t) / 1000)}s`);
@ -937,14 +937,14 @@ class CloudRunner {
};
return secret;
});
yield this.RemoteBuilderProviderPlatform.runBuildTask(this.buildGuid, step['image'], step['commands'], `/${buildVolumeFolder}`, `/${buildVolumeFolder}`, [
yield this.CloudRunnerProviderPlatform.runBuildTask(this.buildGuid, step['image'], step['commands'], `/${buildVolumeFolder}`, `/${buildVolumeFolder}`, [
{
name: 'GITHUB_SHA',
value: process.env.GITHUB_SHA || '',
},
], [...this.defaultSecrets, ...stepSecrets]);
}
yield this.RemoteBuilderProviderPlatform.cleanupSharedBuildResources(this.buildGuid, this.buildParams, this.branchName, this.defaultSecrets);
yield this.CloudRunnerProviderPlatform.cleanupSharedBuildResources(this.buildGuid, this.buildParams, this.branchName, this.defaultSecrets);
}
catch (error) {
yield CloudRunner.handleException(error);
@ -971,16 +971,16 @@ class CloudRunner {
const purgeRemoteCache = process.env.PURGE_REMOTE_BUILDER_CACHE !== undefined;
const initializeSourceRepoForCaching = `${this.builderPathFull}/dist/remote-builder/cloneNoLFS.sh "${this.repoPathFull}" "${targetBuildRepoUrl}" "${testLFSFile}"`;
const handleCaching = `${this.builderPathFull}/dist/remote-builder/handleCaching.sh "${this.cacheFolderFull}" "${this.libraryFolderFull}" "${lfsDirectory}" "${purgeRemoteCache}"`;
const remoteBuilderBranch = process.env.remoteBuilderBranch ? `--branch "${process.env.remoteBuilderBranch}"` : '';
const cloneRemoteBuilder = `git clone -q ${remoteBuilderBranch} ${unityBuilderRepoUrl} ${this.builderPathFull}`;
yield this.RemoteBuilderProviderPlatform.runBuildTask(this.buildGuid, 'alpine/git', [
const CloudRunnerBranch = process.env.CloudRunnerBranch ? `--branch "${process.env.CloudRunnerBranch}"` : '';
const cloneCloudRunner = `git clone -q ${CloudRunnerBranch} ${unityBuilderRepoUrl} ${this.builderPathFull}`;
yield this.CloudRunnerProviderPlatform.runBuildTask(this.buildGuid, 'alpine/git', [
` printenv
apk update -q
apk add unzip zip git-lfs jq tree -q
mkdir -p ${this.buildPathFull}
mkdir -p ${this.builderPathFull}
mkdir -p ${this.repoPathFull}
${cloneRemoteBuilder}
${cloneCloudRunner}
echo ' '
echo 'Initializing source repository for cloning with caching of LFS files'
${initializeSourceRepoForCaching}
@ -1008,7 +1008,7 @@ class CloudRunner {
static BuildStep(baseImage) {
return __awaiter(this, void 0, void 0, function* () {
core.info('Starting part 2/4 (build unity project)');
yield this.RemoteBuilderProviderPlatform.runBuildTask(this.buildGuid, baseImage.toString(), [
yield this.CloudRunnerProviderPlatform.runBuildTask(this.buildGuid, baseImage.toString(), [
`
printenv
export GITHUB_WORKSPACE="${this.repoPathFull}"
@ -1028,7 +1028,7 @@ class CloudRunner {
return __awaiter(this, void 0, void 0, function* () {
core.info('Starting step 3/4 build compression');
// Cleanup
yield this.RemoteBuilderProviderPlatform.runBuildTask(this.buildGuid, 'alpine', [
yield this.CloudRunnerProviderPlatform.runBuildTask(this.buildGuid, 'alpine', [
`
printenv
apk update -q
@ -1055,15 +1055,15 @@ class CloudRunner {
});
}
static setupBuildPlatform() {
switch (this.buildParams.remoteBuildCluster) {
switch (this.buildParams.cloudRunnerCluster) {
case 'aws':
core.info('Building with AWS');
this.RemoteBuilderProviderPlatform = new aws_build_platform_1.default(this.buildParams);
this.CloudRunnerProviderPlatform = new aws_build_platform_1.default(this.buildParams);
break;
default:
case 'k8s':
core.info('Building with Kubernetes');
this.RemoteBuilderProviderPlatform = new kubernetes_build_platform_1.default(this.buildParams);
this.CloudRunnerProviderPlatform = new kubernetes_build_platform_1.default(this.buildParams);
break;
}
}
@ -1138,11 +1138,11 @@ class CloudRunner {
return [
{
name: 'ContainerMemory',
value: this.buildParams.remoteBuildMemory,
value: this.buildParams.cloudRunnerMemory,
},
{
name: 'ContainerCpu',
value: this.buildParams.remoteBuildCpu,
value: this.buildParams.cloudRunnerCpu,
},
{
name: 'GITHUB_WORKSPACE',
@ -1206,7 +1206,7 @@ class CloudRunner {
return __awaiter(this, void 0, void 0, function* () {
core.error(JSON.stringify(error, undefined, 4));
core.setFailed('Remote Builder failed');
yield this.RemoteBuilderProviderPlatform.cleanupSharedBuildResources(this.buildGuid, this.buildParams, this.branchName, this.defaultSecrets);
yield this.CloudRunnerProviderPlatform.cleanupSharedBuildResources(this.buildGuid, this.buildParams, this.branchName, this.defaultSecrets);
});
}
}
@ -1581,8 +1581,8 @@ class KubernetesJobSpecFactory {
workingDir: `/${workingDirectory}`,
resources: {
requests: {
memory: buildParameters.remoteBuildMemory,
cpu: buildParameters.remoteBuildCpu,
memory: buildParameters.cloudRunnerMemory,
cpu: buildParameters.cloudRunnerCpu,
},
},
env: environment,
@ -2286,7 +2286,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", ({ value: true }));
exports.RemoteBuilder = exports.Versioning = exports.Unity = exports.Project = exports.Platform = exports.Output = exports.ImageTag = exports.Input = exports.Docker = exports.Cache = exports.BuildParameters = exports.Action = void 0;
exports.CloudRunner = exports.Versioning = exports.Unity = exports.Project = exports.Platform = exports.Output = exports.ImageTag = exports.Input = exports.Docker = exports.Cache = exports.BuildParameters = exports.Action = void 0;
const action_1 = __importDefault(__webpack_require__(89088));
exports.Action = action_1.default;
const build_parameters_1 = __importDefault(__webpack_require__(80787));
@ -2310,7 +2310,7 @@ exports.Unity = unity_1.default;
const versioning_1 = __importDefault(__webpack_require__(88729));
exports.Versioning = versioning_1.default;
const cloud_runner_1 = __importDefault(__webpack_require__(79144));
exports.RemoteBuilder = cloud_runner_1.default;
exports.CloudRunner = cloud_runner_1.default;
/***/ }),
@ -2398,8 +2398,8 @@ class Input {
static get postBuildSteps() {
return core.getInput('postBuildSteps');
}
static get remoteBuildCluster() {
return core.getInput('remoteBuildCluster') || '';
static get cloudRunnerCluster() {
return core.getInput('cloudRunnerCluster') || '';
}
static get awsBaseStackName() {
return core.getInput('awsBaseStackName') || '';
@ -2410,11 +2410,11 @@ class Input {
static get githubToken() {
return core.getInput('githubToken') || '';
}
static get remoteBuildMemory() {
return core.getInput('remoteBuildMemory') || '750M';
static get cloudRunnerMemory() {
return core.getInput('cloudRunnerMemory') || '750M';
}
static get remoteBuildCpu() {
return core.getInput('remoteBuildCpu') || '1.0';
static get cloudRunnerCpu() {
return core.getInput('cloudRunnerCpu') || '1.0';
}
static get kubeVolumeSize() {
return core.getInput('kubeVolumeSize') || '5Gi';

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -3,7 +3,7 @@
cacheFolderFull=$1
libraryFolderFull=$2
gitLFSDestinationFolder=$3
purgeRemoteBuilderCache=$4
purgeCloudRunnerCache=$4
cacheFolderWithBranch="$cacheFolderFull"
lfsCacheFolder="$cacheFolderFull/lfs"
@ -78,7 +78,7 @@ echo "copied $LFS_ASSETS_HASH to $lfsCacheFolder"
echo ' '
# purge cache
if [ "$purgeRemoteBuilderCache" == "true" ]; then
if [ "$purgeCloudRunnerCache" == "true" ]; then
echo "purging the entire cache"
rm -r "$cacheFolderFull"
echo ' '

View File

@ -1,5 +1,5 @@
import * as core from '@actions/core';
import { Action, BuildParameters, Cache, Docker, ImageTag, Output, RemoteBuilder } from './model';
import { Action, BuildParameters, Cache, Docker, ImageTag, Output, CloudRunner } from './model';
async function run() {
try {
@ -12,10 +12,10 @@ async function run() {
const baseImage = new ImageTag(buildParameters);
let builtImage;
switch (buildParameters.remoteBuildCluster) {
switch (buildParameters.cloudRunnerCluster) {
case 'aws':
case 'k8s':
await RemoteBuilder.build(buildParameters, baseImage);
await CloudRunner.build(buildParameters, baseImage);
break;
// default and local case

View File

@ -23,12 +23,12 @@ class BuildParameters {
public androidKeyaliasPass!: string;
public customParameters!: string;
public sshAgent!: string;
public remoteBuildCluster!: string;
public cloudRunnerCluster!: string;
public awsBaseStackName!: string;
public kubeConfig!: string;
public githubToken!: string;
public remoteBuildMemory!: string;
public remoteBuildCpu!: string;
public cloudRunnerMemory!: string;
public cloudRunnerCpu!: string;
public kubeVolumeSize!: string;
public kubeVolume!: string;
public chownFilesTo!: string;
@ -65,12 +65,12 @@ class BuildParameters {
customParameters: Input.customParameters,
sshAgent: Input.sshAgent,
chownFilesTo: Input.chownFilesTo,
remoteBuildCluster: Input.remoteBuildCluster,
cloudRunnerCluster: Input.cloudRunnerCluster,
awsBaseStackName: Input.awsBaseStackName,
kubeConfig: Input.kubeConfig,
githubToken: Input.githubToken,
remoteBuildMemory: Input.remoteBuildMemory,
remoteBuildCpu: Input.remoteBuildCpu,
cloudRunnerMemory: Input.cloudRunnerMemory,
cloudRunnerCpu: Input.cloudRunnerCpu,
kubeVolumeSize: Input.kubeVolumeSize,
kubeVolume: Input.kubeVolume,
postBuildSteps: Input.postBuildSteps,

View File

@ -1,11 +1,11 @@
import * as SDK from 'aws-sdk';
import { customAlphabet } from 'nanoid';
import RemoteBuilderSecret from './cloud-runner-secret';
import RemoteBuilderEnvironmentVariable from './cloud-runner-environment-variable';
import CloudRunnerSecret from './cloud-runner-secret';
import CloudRunnerEnvironmentVariable from './cloud-runner-environment-variable';
import * as fs from 'fs';
import * as core from '@actions/core';
import CloudRunnerTaskDef from './cloud-runner-task-def';
import RemoteBuilderConstants from './cloud-runner-constants';
import CloudRunnerConstants from './cloud-runner-constants';
import AWSBuildRunner from './aws-build-runner';
import { CloudRunnerProviderInterface } from './cloud-runner-provider-interface';
import BuildParameters from '../build-parameters';
@ -44,8 +44,8 @@ class AWSBuildEnvironment implements CloudRunnerProviderInterface {
commands: string[],
mountdir: string,
workingdir: string,
environment: RemoteBuilderEnvironmentVariable[],
secrets: RemoteBuilderSecret[],
environment: CloudRunnerEnvironmentVariable[],
secrets: CloudRunnerSecret[],
): Promise<void> {
const ECS = new SDK.ECS();
const CF = new SDK.CloudFormation();
@ -115,9 +115,9 @@ class AWSBuildEnvironment implements CloudRunnerProviderInterface {
commands: string[],
mountdir: string,
workingdir: string,
secrets: RemoteBuilderSecret[],
secrets: CloudRunnerSecret[],
): Promise<CloudRunnerTaskDef> {
const logGuid = customAlphabet(RemoteBuilderConstants.alphabet, 9)();
const logGuid = customAlphabet(CloudRunnerConstants.alphabet, 9)();
commands[1] += `
echo "${logGuid}"
`;
@ -323,7 +323,7 @@ class AWSBuildEnvironment implements CloudRunnerProviderInterface {
CF: SDK.CloudFormation,
taskDefStackName: string,
taskDefCloudFormation: string,
secrets: RemoteBuilderSecret[],
secrets: CloudRunnerSecret[],
) {
core.info(JSON.stringify(secrets, undefined, 4));
core.info(taskDefCloudFormation);

View File

@ -1,5 +1,5 @@
import * as AWS from 'aws-sdk';
import RemoteBuilderEnvironmentVariable from './cloud-runner-environment-variable';
import CloudRunnerEnvironmentVariable from './cloud-runner-environment-variable';
import * as core from '@actions/core';
import CloudRunnerTaskDef from './cloud-runner-task-def';
import * as zlib from 'zlib';
@ -9,7 +9,7 @@ class AWSBuildRunner {
taskDef: CloudRunnerTaskDef,
ECS: AWS.ECS,
CF: AWS.CloudFormation,
environment: RemoteBuilderEnvironmentVariable[],
environment: CloudRunnerEnvironmentVariable[],
buildGuid: string,
commands: string[],
) {

View File

@ -1,11 +1,11 @@
import AWSBuildPlatform from './aws-build-platform';
import * as core from '@actions/core';
import { BuildParameters } from '..';
import RemoteBuilderNamespace from './cloud-runner-namespace';
import RemoteBuilderSecret from './cloud-runner-secret';
import CloudRunnerNamespace from './cloud-runner-namespace';
import CloudRunnerSecret from './cloud-runner-secret';
import { CloudRunnerProviderInterface } from './cloud-runner-provider-interface';
import Kubernetes from './kubernetes-build-platform';
import RemoteBuilderEnvironmentVariable from './cloud-runner-environment-variable';
import CloudRunnerEnvironmentVariable from './cloud-runner-environment-variable';
import ImageEnvironmentFactory from '../image-environment-factory';
import YAML from 'yaml';
const repositoryFolder = 'repo';
@ -13,9 +13,9 @@ const buildVolumeFolder = 'data';
const cacheFolder = 'cache';
class CloudRunner {
static RemoteBuilderProviderPlatform: CloudRunnerProviderInterface;
static CloudRunnerProviderPlatform: CloudRunnerProviderInterface;
private static buildParams: BuildParameters;
private static defaultSecrets: RemoteBuilderSecret[];
private static defaultSecrets: CloudRunnerSecret[];
private static buildGuid: string;
private static branchName: string;
private static buildPathFull: string;
@ -35,7 +35,7 @@ class CloudRunner {
static async build(buildParameters: BuildParameters, baseImage) {
const t = Date.now();
CloudRunner.buildGuid = RemoteBuilderNamespace.generateBuildName(
CloudRunner.buildGuid = CloudRunnerNamespace.generateBuildName(
CloudRunner.readRunNumber(),
buildParameters.platform,
);
@ -45,7 +45,7 @@ class CloudRunner {
CloudRunner.setupDefaultSecrets();
try {
CloudRunner.setupBuildPlatform();
await this.RemoteBuilderProviderPlatform.setupSharedBuildResources(
await this.CloudRunnerProviderPlatform.setupSharedBuildResources(
this.buildGuid,
this.buildParams,
this.branchName,
@ -62,15 +62,15 @@ class CloudRunner {
this.buildParams.postBuildSteps = YAML.parse(this.buildParams.postBuildSteps);
core.info(`Post build steps ${JSON.stringify(this.buildParams.postBuildSteps, undefined, 4)}`);
for (const step of this.buildParams.postBuildSteps) {
const stepSecrets: RemoteBuilderSecret[] = step.secrets.map((x) => {
const secret: RemoteBuilderSecret = {
const stepSecrets: CloudRunnerSecret[] = step.secrets.map((x) => {
const secret: CloudRunnerSecret = {
ParameterKey: x.name,
EnvironmentVariable: x.name,
ParameterValue: x.value,
};
return secret;
});
await this.RemoteBuilderProviderPlatform.runBuildTask(
await this.CloudRunnerProviderPlatform.runBuildTask(
this.buildGuid,
step['image'],
step['commands'],
@ -85,7 +85,7 @@ class CloudRunner {
[...this.defaultSecrets, ...stepSecrets],
);
}
await this.RemoteBuilderProviderPlatform.cleanupSharedBuildResources(
await this.CloudRunnerProviderPlatform.cleanupSharedBuildResources(
this.buildGuid,
this.buildParams,
this.branchName,
@ -119,9 +119,9 @@ class CloudRunner {
const purgeRemoteCache = process.env.PURGE_REMOTE_BUILDER_CACHE !== undefined;
const initializeSourceRepoForCaching = `${this.builderPathFull}/dist/remote-builder/cloneNoLFS.sh "${this.repoPathFull}" "${targetBuildRepoUrl}" "${testLFSFile}"`;
const handleCaching = `${this.builderPathFull}/dist/remote-builder/handleCaching.sh "${this.cacheFolderFull}" "${this.libraryFolderFull}" "${lfsDirectory}" "${purgeRemoteCache}"`;
const remoteBuilderBranch = process.env.remoteBuilderBranch ? `--branch "${process.env.remoteBuilderBranch}"` : '';
const cloneRemoteBuilder = `git clone -q ${remoteBuilderBranch} ${unityBuilderRepoUrl} ${this.builderPathFull}`;
await this.RemoteBuilderProviderPlatform.runBuildTask(
const CloudRunnerBranch = process.env.CloudRunnerBranch ? `--branch "${process.env.CloudRunnerBranch}"` : '';
const cloneCloudRunner = `git clone -q ${CloudRunnerBranch} ${unityBuilderRepoUrl} ${this.builderPathFull}`;
await this.CloudRunnerProviderPlatform.runBuildTask(
this.buildGuid,
'alpine/git',
[
@ -131,7 +131,7 @@ class CloudRunner {
mkdir -p ${this.buildPathFull}
mkdir -p ${this.builderPathFull}
mkdir -p ${this.repoPathFull}
${cloneRemoteBuilder}
${cloneCloudRunner}
echo ' '
echo 'Initializing source repository for cloning with caching of LFS files'
${initializeSourceRepoForCaching}
@ -163,7 +163,7 @@ class CloudRunner {
private static async BuildStep(baseImage: any) {
core.info('Starting part 2/4 (build unity project)');
await this.RemoteBuilderProviderPlatform.runBuildTask(
await this.CloudRunnerProviderPlatform.runBuildTask(
this.buildGuid,
baseImage.toString(),
[
@ -190,7 +190,7 @@ class CloudRunner {
private static async CompressionStep() {
core.info('Starting step 3/4 build compression');
// Cleanup
await this.RemoteBuilderProviderPlatform.runBuildTask(
await this.CloudRunnerProviderPlatform.runBuildTask(
this.buildGuid,
'alpine',
[
@ -225,15 +225,15 @@ class CloudRunner {
}
private static setupBuildPlatform() {
switch (this.buildParams.remoteBuildCluster) {
switch (this.buildParams.cloudRunnerCluster) {
case 'aws':
core.info('Building with AWS');
this.RemoteBuilderProviderPlatform = new AWSBuildPlatform(this.buildParams);
this.CloudRunnerProviderPlatform = new AWSBuildPlatform(this.buildParams);
break;
default:
case 'k8s':
core.info('Building with Kubernetes');
this.RemoteBuilderProviderPlatform = new Kubernetes(this.buildParams);
this.CloudRunnerProviderPlatform = new Kubernetes(this.buildParams);
break;
}
}
@ -312,15 +312,15 @@ class CloudRunner {
);
}
private static readBuildEnvironmentVariables(): RemoteBuilderEnvironmentVariable[] {
private static readBuildEnvironmentVariables(): CloudRunnerEnvironmentVariable[] {
return [
{
name: 'ContainerMemory',
value: this.buildParams.remoteBuildMemory,
value: this.buildParams.cloudRunnerMemory,
},
{
name: 'ContainerCpu',
value: this.buildParams.remoteBuildCpu,
value: this.buildParams.cloudRunnerCpu,
},
{
name: 'GITHUB_WORKSPACE',
@ -385,7 +385,7 @@ class CloudRunner {
private static async handleException(error: unknown) {
core.error(JSON.stringify(error, undefined, 4));
core.setFailed('Remote Builder failed');
await this.RemoteBuilderProviderPlatform.cleanupSharedBuildResources(
await this.CloudRunnerProviderPlatform.cleanupSharedBuildResources(
this.buildGuid,
this.buildParams,
this.branchName,

View File

@ -2,9 +2,9 @@ import * as k8s from '@kubernetes/client-node';
import { BuildParameters } from '..';
import * as core from '@actions/core';
import { CloudRunnerProviderInterface } from './cloud-runner-provider-interface';
import RemoteBuilderSecret from './cloud-runner-secret';
import CloudRunnerSecret from './cloud-runner-secret';
import KubernetesStorage from './kubernetes-storage';
import RemoteBuilderEnvironmentVariable from './cloud-runner-environment-variable';
import CloudRunnerEnvironmentVariable from './cloud-runner-environment-variable';
import KubernetesLogging from './kubernetes-logging';
import KubernetesSecret from './kubernetes-secret';
import KubernetesUtilities from './kubernetes-utils';
@ -77,8 +77,8 @@ class Kubernetes implements CloudRunnerProviderInterface {
commands: string[],
mountdir: string,
workingdir: string,
environment: RemoteBuilderEnvironmentVariable[],
secrets: RemoteBuilderSecret[],
environment: CloudRunnerEnvironmentVariable[],
secrets: CloudRunnerSecret[],
): Promise<void> {
try {
// setup

View File

@ -1,5 +1,5 @@
import BuildParameters from '../build-parameters';
import RemoteBuilderEnvironmentVariable from './cloud-runner-environment-variable';
import CloudRunnerEnvironmentVariable from './cloud-runner-environment-variable';
class KubernetesJobSpecFactory {
static getJobSpec(
@ -7,7 +7,7 @@ class KubernetesJobSpecFactory {
image: string,
mountdir: string,
workingDirectory: string,
environment: RemoteBuilderEnvironmentVariable[],
environment: CloudRunnerEnvironmentVariable[],
buildGuid: string,
buildParameters: BuildParameters,
secretName,
@ -109,8 +109,8 @@ class KubernetesJobSpecFactory {
workingDir: `/${workingDirectory}`,
resources: {
requests: {
memory: buildParameters.remoteBuildMemory,
cpu: buildParameters.remoteBuildCpu,
memory: buildParameters.cloudRunnerMemory,
cpu: buildParameters.cloudRunnerCpu,
},
},
env: environment,

View File

@ -1,11 +1,11 @@
import { CoreV1Api } from '@kubernetes/client-node';
import RemoteBuilderSecret from './cloud-runner-secret';
import CloudRunnerSecret from './cloud-runner-secret';
import * as k8s from '@kubernetes/client-node';
const base64 = require('base-64');
class KubernetesSecret {
static async createSecret(
secrets: RemoteBuilderSecret[],
secrets: CloudRunnerSecret[],
secretName: string,
namespace: string,
kubeClient: CoreV1Api,

View File

@ -23,5 +23,5 @@ export {
Project,
Unity,
Versioning,
CloudRunner as RemoteBuilder,
CloudRunner as CloudRunner,
};

View File

@ -97,8 +97,8 @@ class Input {
return core.getInput('postBuildSteps');
}
static get remoteBuildCluster() {
return core.getInput('remoteBuildCluster') || '';
static get cloudRunnerCluster() {
return core.getInput('cloudRunnerCluster') || '';
}
static get awsBaseStackName() {
@ -113,12 +113,12 @@ class Input {
return core.getInput('githubToken') || '';
}
static get remoteBuildMemory() {
return core.getInput('remoteBuildMemory') || '750M';
static get cloudRunnerMemory() {
return core.getInput('cloudRunnerMemory') || '750M';
}
static get remoteBuildCpu() {
return core.getInput('remoteBuildCpu') || '1.0';
static get cloudRunnerCpu() {
return core.getInput('cloudRunnerCpu') || '1.0';
}
static get kubeVolumeSize() {