run steam deployment
parent
ec48ac196a
commit
98acf5c011
|
|
@ -1165,7 +1165,7 @@ exports.default = Project;
|
|||
|
||||
/***/ }),
|
||||
|
||||
/***/ 50148:
|
||||
/***/ 70187:
|
||||
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
|
|
@ -1209,7 +1209,7 @@ const core = __importStar(__webpack_require__(42186));
|
|||
const remote_builder_alphabet_1 = __importDefault(__webpack_require__(41322));
|
||||
const aws_build_runner_1 = __importDefault(__webpack_require__(11201));
|
||||
class AWSBuildEnvironment {
|
||||
static run(buildId, stackName, image, commands, mountdir, workingdir, environment, secrets) {
|
||||
static runBuild(buildId, stackName, image, commands, mountdir, workingdir, environment, secrets) {
|
||||
return __awaiter(this, void 0, void 0, function* () {
|
||||
const ECS = new SDK.ECS();
|
||||
const CF = new SDK.CloudFormation();
|
||||
|
|
@ -1620,7 +1620,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|||
};
|
||||
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||
const nanoid_1 = __webpack_require__(39140);
|
||||
const aws_build_environment_1 = __importDefault(__webpack_require__(50148));
|
||||
const aws_build_platform_1 = __importDefault(__webpack_require__(70187));
|
||||
const core = __importStar(__webpack_require__(42186));
|
||||
const remote_builder_alphabet_1 = __importDefault(__webpack_require__(41322));
|
||||
const repositoryDirectoryName = 'repo';
|
||||
|
|
@ -1645,7 +1645,7 @@ class RemoteBuilder {
|
|||
},
|
||||
];
|
||||
core.info('Starting part 1/4 (clone from github and restore cache)');
|
||||
yield aws_build_environment_1.default.run(buildUid, buildParameters.awsStackName, 'alpine/git', [
|
||||
yield aws_build_platform_1.default.runBuild(buildUid, buildParameters.awsStackName, 'alpine/git', [
|
||||
'-c',
|
||||
`apk update;
|
||||
apk add unzip;
|
||||
|
|
@ -1654,6 +1654,7 @@ 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 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}/
|
||||
git checkout $GITHUB_SHA
|
||||
cd /${efsDirectoryName}/
|
||||
|
|
@ -1749,7 +1750,7 @@ class RemoteBuilder {
|
|||
EnvironmentVariable: 'AWS_ACCESS_KEY_ALIAS_PASS',
|
||||
ParameterValue: buildParameters.androidKeyaliasPass,
|
||||
});
|
||||
yield aws_build_environment_1.default.run(buildUid, buildParameters.awsStackName, baseImage.toString(), [
|
||||
yield aws_build_platform_1.default.runBuild(buildUid, buildParameters.awsStackName, baseImage.toString(), [
|
||||
'-c',
|
||||
`
|
||||
cp -r /${efsDirectoryName}/${buildUid}/builder/dist/default-build-script/ /UnityBuilderAction;
|
||||
|
|
@ -1815,7 +1816,7 @@ class RemoteBuilder {
|
|||
], buildSecrets);
|
||||
core.info('Starting part 3/4 (zip unity build and Library for caching)');
|
||||
// Cleanup
|
||||
yield aws_build_environment_1.default.run(buildUid, buildParameters.awsStackName, 'alpine', [
|
||||
yield aws_build_platform_1.default.runBuild(buildUid, buildParameters.awsStackName, 'alpine', [
|
||||
'-c',
|
||||
`
|
||||
apk update
|
||||
|
|
@ -1834,7 +1835,7 @@ class RemoteBuilder {
|
|||
},
|
||||
], defaultSecretsArray);
|
||||
core.info('Starting part 4/4 (upload build to s3)');
|
||||
yield aws_build_environment_1.default.run(buildUid, buildParameters.awsStackName, 'amazon/aws-cli', [
|
||||
yield aws_build_platform_1.default.runBuild(buildUid, buildParameters.awsStackName, 'amazon/aws-cli', [
|
||||
'-c',
|
||||
`
|
||||
aws s3 cp ${buildUid}/build-${buildUid}.zip s3://game-ci-storage/
|
||||
|
|
@ -1864,6 +1865,16 @@ class RemoteBuilder {
|
|||
},
|
||||
...defaultSecretsArray,
|
||||
]);
|
||||
core.info('Starting steam deployment');
|
||||
yield aws_build_platform_1.default.runBuild(buildUid, buildParameters.awsStackName, 'cm2network/steamcmd:root', [
|
||||
'-c',
|
||||
`
|
||||
ls
|
||||
chmod -R +x /entrypoint.sh;
|
||||
chmod -R +x /steps;
|
||||
/entrypoint.sh;
|
||||
`,
|
||||
], `/${efsDirectoryName}`, `/${efsDirectoryName}/${buildUid}/steam/action/`, [], []);
|
||||
}
|
||||
catch (error) {
|
||||
core.setFailed(error);
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -9,7 +9,7 @@ import RemoteBuilderAlphabet from './remote-builder-alphabet';
|
|||
import AWSBuildRunner from './aws-build-runner';
|
||||
|
||||
class AWSBuildEnvironment {
|
||||
static async run(
|
||||
static async runBuild(
|
||||
buildId: string,
|
||||
stackName: string,
|
||||
image: string,
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
import { customAlphabet } from 'nanoid';
|
||||
import AWSBuildEnvironment from './aws-build-environment';
|
||||
import AWSBuildPlatform from './aws-build-platform';
|
||||
import * as core from '@actions/core';
|
||||
import RemoteBuilderAlphabet from './remote-builder-alphabet';
|
||||
import { BuildParameters } from '..';
|
||||
|
|
@ -25,7 +25,7 @@ class RemoteBuilder {
|
|||
];
|
||||
|
||||
core.info('Starting part 1/4 (clone from github and restore cache)');
|
||||
await AWSBuildEnvironment.run(
|
||||
await AWSBuildPlatform.runBuild(
|
||||
buildUid,
|
||||
buildParameters.awsStackName,
|
||||
'alpine/git',
|
||||
|
|
@ -38,6 +38,7 @@ 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 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}/
|
||||
git checkout $GITHUB_SHA
|
||||
cd /${efsDirectoryName}/
|
||||
|
|
@ -149,7 +150,7 @@ class RemoteBuilder {
|
|||
ParameterValue: buildParameters.androidKeyaliasPass,
|
||||
});
|
||||
|
||||
await AWSBuildEnvironment.run(
|
||||
await AWSBuildPlatform.runBuild(
|
||||
buildUid,
|
||||
buildParameters.awsStackName,
|
||||
baseImage.toString(),
|
||||
|
|
@ -224,7 +225,7 @@ class RemoteBuilder {
|
|||
);
|
||||
core.info('Starting part 3/4 (zip unity build and Library for caching)');
|
||||
// Cleanup
|
||||
await AWSBuildEnvironment.run(
|
||||
await AWSBuildPlatform.runBuild(
|
||||
buildUid,
|
||||
buildParameters.awsStackName,
|
||||
'alpine',
|
||||
|
|
@ -253,7 +254,7 @@ class RemoteBuilder {
|
|||
);
|
||||
|
||||
core.info('Starting part 4/4 (upload build to s3)');
|
||||
await AWSBuildEnvironment.run(
|
||||
await AWSBuildPlatform.runBuild(
|
||||
buildUid,
|
||||
buildParameters.awsStackName,
|
||||
'amazon/aws-cli',
|
||||
|
|
@ -292,6 +293,26 @@ class RemoteBuilder {
|
|||
...defaultSecretsArray,
|
||||
],
|
||||
);
|
||||
|
||||
core.info('Starting steam deployment');
|
||||
await AWSBuildPlatform.runBuild(
|
||||
buildUid,
|
||||
buildParameters.awsStackName,
|
||||
'cm2network/steamcmd:root',
|
||||
[
|
||||
'-c',
|
||||
`
|
||||
ls
|
||||
chmod -R +x /entrypoint.sh;
|
||||
chmod -R +x /steps;
|
||||
/entrypoint.sh;
|
||||
`,
|
||||
],
|
||||
`/${efsDirectoryName}`,
|
||||
`/${efsDirectoryName}/${buildUid}/steam/action/`,
|
||||
[],
|
||||
[],
|
||||
);
|
||||
} catch (error) {
|
||||
core.setFailed(error);
|
||||
core.error(error);
|
||||
|
|
|
|||
Loading…
Reference in New Issue