Copy build artifact correctly to s3

pull/310/head
Frostebite 2022-01-01 08:07:08 +00:00
parent 583a6f0cef
commit 1f02fff472
4 changed files with 29 additions and 10 deletions

View File

@ -69,6 +69,25 @@ jobs:
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_DEFAULT_REGION: eu-west-2
DEBUG: true
EXPERIMENTAL_HOOK: |
- name: FUSE filesystem to s3 for global scale caching
image: amazon/aws-cli
commands: |
sudo amazon-linux-extras install epel
sudo yum install s3fs-fuse
aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID --profile default
aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY --profile default
aws configure set region $AWS_DEFAULT_REGION --profile default
echo ACCESS_KEY_ID:SECRET_ACCESS_KEY > ${HOME}/.passwd-s3fs
chmod 600 ${HOME}/.passwd-s3fs
s3fs game-ci-test-storage /data/cache -o passwd_file=${HOME}/.passwd-s3fs
secrets:
- name: awsAccessKeyId
value: ${{ secrets.AWS_ACCESS_KEY_ID }}
- name: awsSecretAccessKey
value: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- name: awsDefaultRegion
value: eu-west-2
with:
cloudRunnerCluster: aws
versioning: None

8
dist/index.js vendored
View File

@ -2956,18 +2956,18 @@ class BuildAutomationWorkflow {
try {
cloud_runner_logger_1.default.log(`Cloud Runner is running standard build automation`);
let output = '';
output += yield new setup_step_1.SetupStep().run(new cloud_runner_step_state_1.CloudRunnerStepState('alpine/git', task_parameter_serializer_1.TaskParameterSerializer.readBuildEnvironmentVariables(), cloud_runner_state_1.CloudRunnerState.defaultSecrets));
cloud_runner_logger_1.default.logWithTime('Download repository step time');
if (cloud_runner_state_1.CloudRunnerState.buildParams.preBuildSteps !== '') {
output += yield custom_workflow_1.CustomWorkflow.runCustomJob(cloud_runner_state_1.CloudRunnerState.buildParams.preBuildSteps);
}
cloud_runner_logger_1.default.logWithTime('Pre build step(s) time');
cloud_runner_logger_1.default.logWithTime('Configurable pre build step(s) time');
output += yield new setup_step_1.SetupStep().run(new cloud_runner_step_state_1.CloudRunnerStepState('alpine/git', task_parameter_serializer_1.TaskParameterSerializer.readBuildEnvironmentVariables(), cloud_runner_state_1.CloudRunnerState.defaultSecrets));
cloud_runner_logger_1.default.logWithTime('Download repository step time');
output += yield new build_step_1.BuildStep().run(new cloud_runner_step_state_1.CloudRunnerStepState(baseImage, task_parameter_serializer_1.TaskParameterSerializer.readBuildEnvironmentVariables(), cloud_runner_state_1.CloudRunnerState.defaultSecrets));
cloud_runner_logger_1.default.logWithTime('Build time');
if (cloud_runner_state_1.CloudRunnerState.buildParams.postBuildSteps !== '') {
output += yield custom_workflow_1.CustomWorkflow.runCustomJob(cloud_runner_state_1.CloudRunnerState.buildParams.postBuildSteps);
}
cloud_runner_logger_1.default.logWithTime('Post build step(s) time');
cloud_runner_logger_1.default.logWithTime('Configurable post build step(s) time');
cloud_runner_logger_1.default.log(`Cloud Runner finished running standard build automation`);
return output;
}

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -20,6 +20,10 @@ export class BuildAutomationWorkflow implements WorkflowInterface {
try {
CloudRunnerLogger.log(`Cloud Runner is running standard build automation`);
let output = '';
if (CloudRunnerState.buildParams.preBuildSteps !== '') {
output += await CustomWorkflow.runCustomJob(CloudRunnerState.buildParams.preBuildSteps);
}
CloudRunnerLogger.logWithTime('Configurable pre build step(s) time');
output += await new SetupStep().run(
new CloudRunnerStepState(
'alpine/git',
@ -28,10 +32,6 @@ export class BuildAutomationWorkflow implements WorkflowInterface {
),
);
CloudRunnerLogger.logWithTime('Download repository step time');
if (CloudRunnerState.buildParams.preBuildSteps !== '') {
output += await CustomWorkflow.runCustomJob(CloudRunnerState.buildParams.preBuildSteps);
}
CloudRunnerLogger.logWithTime('Pre build step(s) time');
output += await new BuildStep().run(
new CloudRunnerStepState(
@ -45,7 +45,7 @@ export class BuildAutomationWorkflow implements WorkflowInterface {
if (CloudRunnerState.buildParams.postBuildSteps !== '') {
output += await CustomWorkflow.runCustomJob(CloudRunnerState.buildParams.postBuildSteps);
}
CloudRunnerLogger.logWithTime('Post build step(s) time');
CloudRunnerLogger.logWithTime('Configurable post build step(s) time');
CloudRunnerLogger.log(`Cloud Runner finished running standard build automation`);