Refactoring, remote builder k8s and aws nearly aligned

pull/273/head
Frostebite 2021-06-19 05:27:24 +01:00
parent 6dbb6e8ccb
commit 31c6bed1b4
4 changed files with 174 additions and 135 deletions

142
dist/index.js vendored
View File

@ -1284,44 +1284,56 @@ class Kubernetes {
}
runBuild(buildId, stackName, image, commands, mountdir, workingdir, environment, secrets) {
return __awaiter(this, void 0, void 0, function* () {
const defaultSecretsArray = [
{
ParameterKey: 'GithubToken',
EnvironmentVariable: 'GITHUB_TOKEN',
ParameterValue: this.buildParameters.githubToken,
},
{
ParameterKey: 'UNITY_LICENSE',
EnvironmentVariable: 'UNITY_LICENSE',
ParameterValue: process.env.UNITY_LICENSE || '',
},
{
ParameterKey: 'ANDROID_KEYSTORE_BASE64',
EnvironmentVariable: 'ANDROID_KEYSTORE_BASE64',
ParameterValue: this.buildParameters.androidKeystoreBase64,
},
{
ParameterKey: 'ANDROID_KEYSTORE_PASS',
EnvironmentVariable: 'ANDROID_KEYSTORE_PASS',
ParameterValue: this.buildParameters.androidKeystorePass,
},
{
ParameterKey: 'ANDROID_KEYALIAS_PASS',
EnvironmentVariable: 'ANDROID_KEYALIAS_PASS',
ParameterValue: this.buildParameters.androidKeyaliasPass,
},
];
defaultSecretsArray.push(...secrets);
try {
this.setUniqueBuildId();
const defaultSecretsArray = [
{
ParameterKey: 'GithubToken',
EnvironmentVariable: 'GITHUB_TOKEN',
ParameterValue: this.buildParameters.githubToken,
},
{
ParameterKey: 'UNITY_LICENSE',
EnvironmentVariable: 'UNITY_LICENSE',
ParameterValue: process.env.UNITY_LICENSE || '',
},
{
ParameterKey: 'ANDROID_KEYSTORE_BASE64',
EnvironmentVariable: 'ANDROID_KEYSTORE_BASE64',
ParameterValue: this.buildParameters.androidKeystoreBase64,
},
{
ParameterKey: 'ANDROID_KEYSTORE_PASS',
EnvironmentVariable: 'ANDROID_KEYSTORE_PASS',
ParameterValue: this.buildParameters.androidKeystorePass,
},
{
ParameterKey: 'ANDROID_KEYALIAS_PASS',
EnvironmentVariable: 'ANDROID_KEYALIAS_PASS',
ParameterValue: this.buildParameters.androidKeyaliasPass,
},
];
defaultSecretsArray.push(...secrets);
// setup
yield this.createSecret(defaultSecretsArray);
yield kubernetes_storage_1.default.createPersistentVolumeClaim(this.buildParameters, this.pvcName, this.kubeClient, this.namespace);
// run
yield this.runJobInKubernetesPod(commands, image);
//run
const jobSpec = this.getJobSpec(commands, image);
core.info('Creating build job');
yield this.kubeClientBatch.createNamespacedJob(this.namespace, jobSpec);
core.info('Job created');
yield kubernetes_storage_1.default.watchUntilPVCNotPending(this.kubeClient, this.pvcName, this.namespace);
core.info('PVC Bound');
this.setPodNameAndContainerName(yield this.findPod());
core.info('Watching pod until running');
yield this.watchUntilPodRunning();
core.info('Pod running, streaming logs');
yield this.streamLogs();
yield this.cleanup();
}
catch (error) {
core.error(JSON.stringify(error.response, undefined, 4));
core.info('Running job failed');
yield this.cleanup();
throw error;
}
});
@ -1564,11 +1576,13 @@ class Kubernetes {
}
runCloneJob() {
return __awaiter(this, void 0, void 0, function* () {
yield this.runJobInKubernetesPod([
yield this.runBuild(this.buildCorrelationId, '', 'alpine/git', [
'/bin/ash',
'-c',
`apk update;
apk add unzip;
apk add git-lfs;
apk add jq;
ls /credentials/
export GITHUB_TOKEN=$(cat /credentials/GITHUB_TOKEN);
cd /data;
@ -1578,12 +1592,12 @@ class Kubernetes {
git checkout $GITHUB_SHA;
ls
echo "end"`,
], 'alpine/git');
], '', '', [], []);
});
}
runBuildJob() {
return __awaiter(this, void 0, void 0, function* () {
yield this.runJobInKubernetesPod([
yield this.runBuild(this.buildCorrelationId, '', this.baseImage.toString(), [
'bin/bash',
'-c',
`ls
@ -1598,7 +1612,7 @@ class Kubernetes {
chmod -R +x /steps
/entrypoint.sh
`,
], this.baseImage.toString());
], '', '', [], []);
});
}
getPodStatusPhase() {
@ -1845,9 +1859,9 @@ const aws_build_platform_1 = __importDefault(__webpack_require__(70187));
const core = __importStar(__webpack_require__(42186));
const remote_builder_namespace_1 = __importDefault(__webpack_require__(96003));
const kubernetes_build_platform_1 = __importDefault(__webpack_require__(81730));
const repositoryDirectoryName = 'repo';
const efsDirectoryName = 'data';
const cacheDirectoryName = 'cache';
const repositoryFolder = 'repo';
const buildVolumeFolder = 'data';
const cacheFolder = 'cache';
class RemoteBuilder {
static build(buildParameters, baseImage) {
var _a;
@ -1901,17 +1915,17 @@ class RemoteBuilder {
apk add git-lfs;
apk add jq;
# Get source repo for project to be built and game-ci repo for utilties
git clone https://${buildParameters.githubToken}@github.com/${process.env.GITHUB_REPOSITORY}.git ${buildUid}/${repositoryDirectoryName} -q
git clone https://${buildParameters.githubToken}@github.com/${process.env.GITHUB_REPOSITORY}.git ${buildUid}/${repositoryFolder} -q
git clone https://${buildParameters.githubToken}@github.com/game-ci/unity-builder.git ${buildUid}/builder -q
git clone https://${buildParameters.githubToken}@github.com/game-ci/steam-deploy.git ${buildUid}/steam -q
cd /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/
cd /${buildVolumeFolder}/${buildUid}/${repositoryFolder}/
git checkout $GITHUB_SHA
cd /${efsDirectoryName}/
cd /${buildVolumeFolder}/
# Look for usable cache
if [ ! -d ${cacheDirectoryName} ]; then
mkdir ${cacheDirectoryName}
if [ ! -d ${cacheFolder} ]; then
mkdir ${cacheFolder}
fi
cd ${cacheDirectoryName}
cd ${cacheFolder}
if [ ! -d "${branchName}" ]; then
mkdir "${branchName}"
fi
@ -1920,8 +1934,8 @@ class RemoteBuilder {
echo "Cached Libraries for ${branchName} from previous builds:"
ls
echo ''
ls "/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}"
libDir="/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}/Library"
ls "/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}"
libDir="/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}/Library"
if [ -d "$libDir" ]; then
rm -r "$libDir"
echo "Setup .gitignore to ignore Library folder and remove it from builds"
@ -1942,16 +1956,16 @@ class RemoteBuilder {
# Print out important directories
echo ''
echo 'Repo:'
ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/
ls /${buildVolumeFolder}/${buildUid}/${repositoryFolder}/
echo ''
echo 'Project:'
ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}
ls /${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}
echo ''
echo 'Library:'
ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}/Library/
ls /${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}/Library/
echo ''
`,
], `/${efsDirectoryName}`, `/${efsDirectoryName}/`, [
], `/${buildVolumeFolder}`, `/${buildVolumeFolder}/`, [
{
name: 'GITHUB_SHA',
value: process.env.GITHUB_SHA || '',
@ -2009,14 +2023,14 @@ class RemoteBuilder {
yield this.RemoteBuilderProviderPlatform.runBuild(buildUid, buildParameters.awsStackName, baseImage.toString(), [
'-c',
`
cp -r /${efsDirectoryName}/${buildUid}/builder/dist/default-build-script/ /UnityBuilderAction;
cp -r /${efsDirectoryName}/${buildUid}/builder/dist/entrypoint.sh /entrypoint.sh;
cp -r /${efsDirectoryName}/${buildUid}/builder/dist/steps/ /steps;
cp -r /${buildVolumeFolder}/${buildUid}/builder/dist/default-build-script/ /UnityBuilderAction;
cp -r /${buildVolumeFolder}/${buildUid}/builder/dist/entrypoint.sh /entrypoint.sh;
cp -r /${buildVolumeFolder}/${buildUid}/builder/dist/steps/ /steps;
chmod -R +x /entrypoint.sh;
chmod -R +x /steps;
/entrypoint.sh;
`,
], `/${efsDirectoryName}`, `/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/`, [
], `/${buildVolumeFolder}`, `/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/`, [
{
name: 'ContainerMemory',
value: buildParameters.remoteBuildMemory,
@ -2027,7 +2041,7 @@ class RemoteBuilder {
},
{
name: 'GITHUB_WORKSPACE',
value: `/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/`,
value: `/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/`,
},
{
name: 'PROJECT_PATH',
@ -2083,15 +2097,15 @@ class RemoteBuilder {
apk add zip
cd Library
zip -r lib-${buildUid}.zip .*
mv lib-${buildUid}.zip /${efsDirectoryName}/${cacheDirectoryName}/${branchName}/lib-${buildUid}.zip
mv lib-${buildUid}.zip /${buildVolumeFolder}/${cacheFolder}/${branchName}/lib-${buildUid}.zip
cd ../../
ls
echo ' '
ls ${buildParameters.buildPath}
zip -r build-${buildUid}.zip ${buildParameters.buildPath}/*
mv build-${buildUid}.zip /${efsDirectoryName}/${buildUid}/build-${buildUid}.zip
mv build-${buildUid}.zip /${buildVolumeFolder}/${buildUid}/build-${buildUid}.zip
`,
], `/${efsDirectoryName}`, `/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}`, [
], `/${buildVolumeFolder}`, `/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}`, [
{
name: 'GITHUB_SHA',
value: process.env.GITHUB_SHA || '',
@ -2108,10 +2122,10 @@ class RemoteBuilder {
`
aws s3 cp ${buildUid}/build-${buildUid}.zip s3://game-ci-storage/
# no need to upload Library cache for now
# aws s3 cp /${efsDirectoryName}/${cacheDirectoryName}/${branchName}/lib-${buildUid}.zip s3://game-ci-storage/
# aws s3 cp /${buildVolumeFolder}/${cacheFolder}/${branchName}/lib-${buildUid}.zip s3://game-ci-storage/
${this.SteamDeploy ? '#' : ''} rm -r ${buildUid}
`,
], `/${efsDirectoryName}`, `/${efsDirectoryName}/`, [
], `/${buildVolumeFolder}`, `/${buildVolumeFolder}/`, [
{
name: 'GITHUB_SHA',
value: process.env.GITHUB_SHA || '',
@ -2143,14 +2157,14 @@ class RemoteBuilder {
`
ls
ls /
cp -r /${efsDirectoryName}/${buildUid}/steam/action/entrypoint.sh /entrypoint.sh;
cp -r /${efsDirectoryName}/${buildUid}/steam/action/steps/ /steps;
cp -r /${buildVolumeFolder}/${buildUid}/steam/action/entrypoint.sh /entrypoint.sh;
cp -r /${buildVolumeFolder}/${buildUid}/steam/action/steps/ /steps;
chmod -R +x /entrypoint.sh;
chmod -R +x /steps;
/entrypoint.sh;
rm -r /${efsDirectoryName}/${buildUid}
rm -r /${buildVolumeFolder}/${buildUid}
`,
], `/${efsDirectoryName}`, `/${efsDirectoryName}/${buildUid}/steam/action/`, [
], `/${buildVolumeFolder}`, `/${buildVolumeFolder}/${buildUid}/steam/action/`, [
{
name: 'GITHUB_SHA',
value: process.env.GITHUB_SHA || '',

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -53,35 +53,36 @@ class Kubernetes implements RemoteBuilderProviderInterface {
environment: RemoteBuilderEnvironmentVariable[],
secrets: RemoteBuilderSecret[],
): Promise<void> {
const defaultSecretsArray: RemoteBuilderSecret[] = [
{
ParameterKey: 'GithubToken',
EnvironmentVariable: 'GITHUB_TOKEN',
ParameterValue: this.buildParameters.githubToken,
},
{
ParameterKey: 'UNITY_LICENSE',
EnvironmentVariable: 'UNITY_LICENSE',
ParameterValue: process.env.UNITY_LICENSE || '',
},
{
ParameterKey: 'ANDROID_KEYSTORE_BASE64',
EnvironmentVariable: 'ANDROID_KEYSTORE_BASE64',
ParameterValue: this.buildParameters.androidKeystoreBase64,
},
{
ParameterKey: 'ANDROID_KEYSTORE_PASS',
EnvironmentVariable: 'ANDROID_KEYSTORE_PASS',
ParameterValue: this.buildParameters.androidKeystorePass,
},
{
ParameterKey: 'ANDROID_KEYALIAS_PASS',
EnvironmentVariable: 'ANDROID_KEYALIAS_PASS',
ParameterValue: this.buildParameters.androidKeyaliasPass,
},
];
defaultSecretsArray.push(...secrets);
try {
this.setUniqueBuildId();
const defaultSecretsArray: RemoteBuilderSecret[] = [
{
ParameterKey: 'GithubToken',
EnvironmentVariable: 'GITHUB_TOKEN',
ParameterValue: this.buildParameters.githubToken,
},
{
ParameterKey: 'UNITY_LICENSE',
EnvironmentVariable: 'UNITY_LICENSE',
ParameterValue: process.env.UNITY_LICENSE || '',
},
{
ParameterKey: 'ANDROID_KEYSTORE_BASE64',
EnvironmentVariable: 'ANDROID_KEYSTORE_BASE64',
ParameterValue: this.buildParameters.androidKeystoreBase64,
},
{
ParameterKey: 'ANDROID_KEYSTORE_PASS',
EnvironmentVariable: 'ANDROID_KEYSTORE_PASS',
ParameterValue: this.buildParameters.androidKeystorePass,
},
{
ParameterKey: 'ANDROID_KEYALIAS_PASS',
EnvironmentVariable: 'ANDROID_KEYALIAS_PASS',
ParameterValue: this.buildParameters.androidKeyaliasPass,
},
];
defaultSecretsArray.push(...secrets);
// setup
await this.createSecret(defaultSecretsArray);
await KubernetesStorage.createPersistentVolumeClaim(
@ -91,12 +92,22 @@ class Kubernetes implements RemoteBuilderProviderInterface {
this.namespace,
);
// run
await this.runJobInKubernetesPod(commands, image);
//run
const jobSpec = this.getJobSpec(commands, image);
core.info('Creating build job');
await this.kubeClientBatch.createNamespacedJob(this.namespace, jobSpec);
core.info('Job created');
await KubernetesStorage.watchUntilPVCNotPending(this.kubeClient, this.pvcName, this.namespace);
core.info('PVC Bound');
this.setPodNameAndContainerName(await this.findPod());
core.info('Watching pod until running');
await this.watchUntilPodRunning();
core.info('Pod running, streaming logs');
await this.streamLogs();
await this.cleanup();
} catch (error) {
core.error(JSON.stringify(error.response, undefined, 4));
core.info('Running job failed');
await this.cleanup();
throw error;
}
}
@ -344,12 +355,17 @@ class Kubernetes implements RemoteBuilderProviderInterface {
}
async runCloneJob() {
await this.runJobInKubernetesPod(
await this.runBuild(
this.buildCorrelationId,
'',
'alpine/git',
[
'/bin/ash',
'-c',
`apk update;
apk add unzip;
apk add git-lfs;
apk add jq;
ls /credentials/
export GITHUB_TOKEN=$(cat /credentials/GITHUB_TOKEN);
cd /data;
@ -360,12 +376,18 @@ class Kubernetes implements RemoteBuilderProviderInterface {
ls
echo "end"`,
],
'alpine/git',
'',
'',
[],
[],
);
}
async runBuildJob() {
await this.runJobInKubernetesPod(
await this.runBuild(
this.buildCorrelationId,
'',
this.baseImage.toString(),
[
'bin/bash',
'-c',
@ -382,7 +404,10 @@ class Kubernetes implements RemoteBuilderProviderInterface {
/entrypoint.sh
`,
],
this.baseImage.toString(),
'',
'',
[],
[],
);
}

View File

@ -5,9 +5,9 @@ import RemoteBuilderNamespace from './remote-builder-namespace';
import RemoteBuilderSecret from './remote-builder-secret';
import { RemoteBuilderProviderInterface } from './remote-builder-provider-interface';
import Kubernetes from './kubernetes-build-platform';
const repositoryDirectoryName = 'repo';
const efsDirectoryName = 'data';
const cacheDirectoryName = 'cache';
const repositoryFolder = 'repo';
const buildVolumeFolder = 'data';
const cacheFolder = 'cache';
class RemoteBuilder {
static SteamDeploy: boolean = false;
@ -78,17 +78,17 @@ class RemoteBuilder {
# Get source repo for project to be built and game-ci repo for utilties
git clone https://${buildParameters.githubToken}@github.com/${
process.env.GITHUB_REPOSITORY
}.git ${buildUid}/${repositoryDirectoryName} -q
}.git ${buildUid}/${repositoryFolder} -q
git clone https://${buildParameters.githubToken}@github.com/game-ci/unity-builder.git ${buildUid}/builder -q
git clone https://${buildParameters.githubToken}@github.com/game-ci/steam-deploy.git ${buildUid}/steam -q
cd /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/
cd /${buildVolumeFolder}/${buildUid}/${repositoryFolder}/
git checkout $GITHUB_SHA
cd /${efsDirectoryName}/
cd /${buildVolumeFolder}/
# Look for usable cache
if [ ! -d ${cacheDirectoryName} ]; then
mkdir ${cacheDirectoryName}
if [ ! -d ${cacheFolder} ]; then
mkdir ${cacheFolder}
fi
cd ${cacheDirectoryName}
cd ${cacheFolder}
if [ ! -d "${branchName}" ]; then
mkdir "${branchName}"
fi
@ -97,8 +97,8 @@ class RemoteBuilder {
echo "Cached Libraries for ${branchName} from previous builds:"
ls
echo ''
ls "/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}"
libDir="/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}/Library"
ls "/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}"
libDir="/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}/Library"
if [ -d "$libDir" ]; then
rm -r "$libDir"
echo "Setup .gitignore to ignore Library folder and remove it from builds"
@ -119,18 +119,18 @@ class RemoteBuilder {
# Print out important directories
echo ''
echo 'Repo:'
ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/
ls /${buildVolumeFolder}/${buildUid}/${repositoryFolder}/
echo ''
echo 'Project:'
ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}
ls /${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}
echo ''
echo 'Library:'
ls /${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}/Library/
ls /${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}/Library/
echo ''
`,
],
`/${efsDirectoryName}`,
`/${efsDirectoryName}/`,
`/${buildVolumeFolder}`,
`/${buildVolumeFolder}/`,
[
{
name: 'GITHUB_SHA',
@ -207,16 +207,16 @@ class RemoteBuilder {
[
'-c',
`
cp -r /${efsDirectoryName}/${buildUid}/builder/dist/default-build-script/ /UnityBuilderAction;
cp -r /${efsDirectoryName}/${buildUid}/builder/dist/entrypoint.sh /entrypoint.sh;
cp -r /${efsDirectoryName}/${buildUid}/builder/dist/steps/ /steps;
cp -r /${buildVolumeFolder}/${buildUid}/builder/dist/default-build-script/ /UnityBuilderAction;
cp -r /${buildVolumeFolder}/${buildUid}/builder/dist/entrypoint.sh /entrypoint.sh;
cp -r /${buildVolumeFolder}/${buildUid}/builder/dist/steps/ /steps;
chmod -R +x /entrypoint.sh;
chmod -R +x /steps;
/entrypoint.sh;
`,
],
`/${efsDirectoryName}`,
`/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/`,
`/${buildVolumeFolder}`,
`/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/`,
[
{
name: 'ContainerMemory',
@ -228,7 +228,7 @@ class RemoteBuilder {
},
{
name: 'GITHUB_WORKSPACE',
value: `/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/`,
value: `/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/`,
},
{
name: 'PROJECT_PATH',
@ -294,17 +294,17 @@ class RemoteBuilder {
apk add zip
cd Library
zip -r lib-${buildUid}.zip .*
mv lib-${buildUid}.zip /${efsDirectoryName}/${cacheDirectoryName}/${branchName}/lib-${buildUid}.zip
mv lib-${buildUid}.zip /${buildVolumeFolder}/${cacheFolder}/${branchName}/lib-${buildUid}.zip
cd ../../
ls
echo ' '
ls ${buildParameters.buildPath}
zip -r build-${buildUid}.zip ${buildParameters.buildPath}/*
mv build-${buildUid}.zip /${efsDirectoryName}/${buildUid}/build-${buildUid}.zip
mv build-${buildUid}.zip /${buildVolumeFolder}/${buildUid}/build-${buildUid}.zip
`,
],
`/${efsDirectoryName}`,
`/${efsDirectoryName}/${buildUid}/${repositoryDirectoryName}/${buildParameters.projectPath}`,
`/${buildVolumeFolder}`,
`/${buildVolumeFolder}/${buildUid}/${repositoryFolder}/${buildParameters.projectPath}`,
[
{
name: 'GITHUB_SHA',
@ -332,12 +332,12 @@ class RemoteBuilder {
`
aws s3 cp ${buildUid}/build-${buildUid}.zip s3://game-ci-storage/
# no need to upload Library cache for now
# aws s3 cp /${efsDirectoryName}/${cacheDirectoryName}/${branchName}/lib-${buildUid}.zip s3://game-ci-storage/
# aws s3 cp /${buildVolumeFolder}/${cacheFolder}/${branchName}/lib-${buildUid}.zip s3://game-ci-storage/
${this.SteamDeploy ? '#' : ''} rm -r ${buildUid}
`,
],
`/${efsDirectoryName}`,
`/${efsDirectoryName}/`,
`/${buildVolumeFolder}`,
`/${buildVolumeFolder}/`,
[
{
name: 'GITHUB_SHA',
@ -379,16 +379,16 @@ class RemoteBuilder {
`
ls
ls /
cp -r /${efsDirectoryName}/${buildUid}/steam/action/entrypoint.sh /entrypoint.sh;
cp -r /${efsDirectoryName}/${buildUid}/steam/action/steps/ /steps;
cp -r /${buildVolumeFolder}/${buildUid}/steam/action/entrypoint.sh /entrypoint.sh;
cp -r /${buildVolumeFolder}/${buildUid}/steam/action/steps/ /steps;
chmod -R +x /entrypoint.sh;
chmod -R +x /steps;
/entrypoint.sh;
rm -r /${efsDirectoryName}/${buildUid}
rm -r /${buildVolumeFolder}/${buildUid}
`,
],
`/${efsDirectoryName}`,
`/${efsDirectoryName}/${buildUid}/steam/action/`,
`/${buildVolumeFolder}`,
`/${buildVolumeFolder}/${buildUid}/steam/action/`,
[
{
name: 'GITHUB_SHA',