Custom step file support
parent
3a2aedaf9e
commit
1e2679d2d6
|
|
@ -4215,6 +4215,9 @@ class RemoteClient {
|
|||
remote_client_logger_1.RemoteClientLogger.log(`Cloning the repository being built:`);
|
||||
yield cloud_runner_system_1.CloudRunnerSystem.Run(`git config --global filter.lfs.smudge "git-lfs smudge --skip -- %f"`);
|
||||
yield cloud_runner_system_1.CloudRunnerSystem.Run(`git config --global filter.lfs.process "git-lfs filter-process --skip"`);
|
||||
if (!cloud_runner_1.default.buildParameters.retainWorkspace) {
|
||||
yield cloud_runner_system_1.CloudRunnerSystem.Run(`rm -r ${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute)}`);
|
||||
}
|
||||
yield cloud_runner_system_1.CloudRunnerSystem.Run(`git clone -q ${cloud_runner_folders_1.CloudRunnerFolders.targetBuildRepoUrl} ${path_1.default.resolve(`..`, path_1.default.basename(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute))}`);
|
||||
yield cloud_runner_system_1.CloudRunnerSystem.Run(`git lfs install`);
|
||||
console_1.assert(fs_1.default.existsSync(`.git`), 'git folder exists');
|
||||
|
|
@ -5309,6 +5312,9 @@ class BuildAutomationWorkflow {
|
|||
const buildHooks = cloud_runner_custom_hooks_1.CloudRunnerCustomHooks.getHooks(cloud_runner_1.default.buildParameters.customJobHooks).filter((x) => x.step.includes(`build`));
|
||||
const builderPath = cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.builderPathAbsolute, 'dist', `index.js`));
|
||||
return `apt-get update > /dev/null
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests
|
||||
? `tree -L 2 ${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`
|
||||
: ``}
|
||||
apt-get install -y tar tree npm git-lfs jq git > /dev/null
|
||||
npm install -g n > /dev/null
|
||||
n stable > /dev/null
|
||||
|
|
@ -5321,19 +5327,27 @@ class BuildAutomationWorkflow {
|
|||
${buildHooks.filter((x) => x.hook.includes(`after`)).map((x) => x.commands) || ' '}`;
|
||||
}
|
||||
static setupCommands(builderPath) {
|
||||
const commands = `mkdir -p ${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.builderPathAbsolute)} && git clone -q -b ${cloud_runner_1.default.buildParameters.cloudRunnerBranch} ${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.unityBuilderRepoUrl)} "${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.builderPathAbsolute)}" && chmod +x ${builderPath}`;
|
||||
const commands = `mkdir -p ${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.builderPathAbsolute)} && git clone -q -b ${cloud_runner_1.default.buildParameters.cloudRunnerBranch} ${cloud_runner_folders_1.CloudRunnerFolders.unityBuilderRepoUrl} "${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.builderPathAbsolute)}" && chmod +x ${builderPath}`;
|
||||
const retainedWorkspaceCommands = `if [ -e "${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute)}" ] && [ -e "${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute, `.git`))}" ]; then echo "Retained Workspace Already Exists!"; fi`;
|
||||
const cloneBuilderCommands = `if [ -e "${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute)}" ] && [ -e "${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.builderPathAbsolute, `.git`))}" ]; then echo "Builder Already Exists!"; else ${commands}; fi`;
|
||||
return `export GIT_DISCOVERY_ACROSS_FILESYSTEM=1
|
||||
echo "game ci cloud runner clone"
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests ? `tree -L 2 ./data/` : ``}
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests
|
||||
? `tree -L 2 ${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`
|
||||
: ``}
|
||||
${retainedWorkspaceCommands}
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests ? `tree -L 2 ./data/` : ``}
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests
|
||||
? `tree -L 2 ${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`
|
||||
: ``}
|
||||
${cloneBuilderCommands}
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests ? `tree -L 2 ./data/` : ``}
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests
|
||||
? `tree -L 2 ${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`
|
||||
: ``}
|
||||
echo "game ci cloud runner bootstrap"
|
||||
node ${builderPath} -m remote-cli-pre-build
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests ? `tree -L 2 ./data/` : ``}`;
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests
|
||||
? `tree -L 2 ${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`
|
||||
: ``}`;
|
||||
}
|
||||
// ToDo: Replace with a very simple "node ${builderPath} -m build-cli" to run the scripts below without enlarging the request size
|
||||
static BuildCommands(builderPath) {
|
||||
|
|
@ -5351,9 +5365,13 @@ class BuildAutomationWorkflow {
|
|||
/entrypoint.sh
|
||||
echo "game ci cloud runner push library to cache"
|
||||
chmod +x ${builderPath}
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests ? `tree -L 2 ./data/` : ``}
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests
|
||||
? `tree -L 2 ${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`
|
||||
: ``}
|
||||
node ${builderPath} -m remote-cli-post-build
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests ? `tree -L 2 ./data/` : ``}`;
|
||||
${cloud_runner_1.default.buildParameters.cloudRunnerIntegrationTests
|
||||
? `tree -L 2 ${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`
|
||||
: ``}`;
|
||||
}
|
||||
}
|
||||
exports.BuildAutomationWorkflow = BuildAutomationWorkflow;
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -116,11 +116,9 @@ export class BuildAutomationWorkflow implements WorkflowInterface {
|
|||
private static setupCommands(builderPath) {
|
||||
const commands = `mkdir -p ${CloudRunnerFolders.ToLinuxFolder(
|
||||
CloudRunnerFolders.builderPathAbsolute,
|
||||
)} && git clone -q -b ${
|
||||
CloudRunner.buildParameters.cloudRunnerBranch
|
||||
} ${CloudRunnerFolders.unityBuilderRepoUrl} "${CloudRunnerFolders.ToLinuxFolder(
|
||||
CloudRunnerFolders.builderPathAbsolute,
|
||||
)}" && chmod +x ${builderPath}`;
|
||||
)} && git clone -q -b ${CloudRunner.buildParameters.cloudRunnerBranch} ${
|
||||
CloudRunnerFolders.unityBuilderRepoUrl
|
||||
} "${CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.builderPathAbsolute)}" && chmod +x ${builderPath}`;
|
||||
|
||||
const retainedWorkspaceCommands = `if [ -e "${CloudRunnerFolders.ToLinuxFolder(
|
||||
CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute,
|
||||
|
|
|
|||
Loading…
Reference in New Issue