@@ -62083,13 +62083,15 @@ function buildUserDataScript(githubRegistrationToken, label) {
62083
62083
// to be pre-installed in the AMI, so we simply cd into that directory and then start the runner
62084
62084
userData = [
62085
62085
'#!/bin/bash',
62086
+ 'exec > >(tee /var/log/user-data.log|logger -t user-data -s 2>/dev/console) 2>&1',
62086
62087
`cd "${config.input.runnerHomeDir}"`,
62087
62088
'export RUNNER_ALLOW_RUNASROOT=1',
62088
62089
`./config.sh --url https://github.com/${config.githubContext.owner}/${config.githubContext.repo} --token ${githubRegistrationToken} --labels ${label}`,
62089
62090
];
62090
62091
} else {
62091
62092
userData = [
62092
62093
'#!/bin/bash',
62094
+ 'exec > >(tee /var/log/user-data.log|logger -t user-data -s 2>/dev/console) 2>&1',
62093
62095
'mkdir actions-runner && cd actions-runner',
62094
62096
'case $(uname -m) in aarch64) ARCH="arm64" ;; amd64|x86_64) ARCH="x64" ;; esac && export RUNNER_ARCH=${ARCH}',
62095
62097
'curl -O -L https://github.com/actions/runner/releases/download/v2.299.1/actions-runner-linux-${RUNNER_ARCH}-2.299.1.tar.gz',
@@ -62098,11 +62100,14 @@ function buildUserDataScript(githubRegistrationToken, label) {
62098
62100
`./config.sh --url https://github.com/${config.githubContext.owner}/${config.githubContext.repo} --token ${githubRegistrationToken} --labels ${label}`,
62099
62101
];
62100
62102
}
62103
+ if (config.input.runAsUser) {
62104
+ userData.push(`chown -R ${config.input.runAsUser} .`);
62105
+ }
62101
62106
if (config.input.runAsService) {
62102
- userData.push(' ./svc.sh install' );
62107
+ userData.push(` ./svc.sh install ${config.input.runAsUser || ''}` );
62103
62108
userData.push('./svc.sh start');
62104
62109
} else {
62105
- userData.push(' ./run.sh');
62110
+ userData.push(`${config.input.runAsUser ? `su ${config.input.runAsUser} -c` : ''} ./run.sh`);
62106
62111
}
62107
62112
return userData;
62108
62113
}
@@ -62197,6 +62202,8 @@ class Config {
62197
62202
ec2InstanceId: core.getInput('ec2-instance-id'),
62198
62203
iamRoleName: core.getInput('iam-role-name'),
62199
62204
runnerHomeDir: core.getInput('runner-home-dir'),
62205
+ runAsService: core.getInput('run-runner-as-service') === 'true',
62206
+ runAsUser: core.getInput('run-runner-as-user')
62200
62207
};
62201
62208
62202
62209
const tags = JSON.parse(core.getInput('aws-resource-tags'));
0 commit comments