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:`);
|
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.smudge "git-lfs smudge --skip -- %f"`);
|
||||||
yield cloud_runner_system_1.CloudRunnerSystem.Run(`git config --global filter.lfs.process "git-lfs filter-process --skip"`);
|
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 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`);
|
yield cloud_runner_system_1.CloudRunnerSystem.Run(`git lfs install`);
|
||||||
console_1.assert(fs_1.default.existsSync(`.git`), 'git folder exists');
|
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 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`));
|
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
|
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
|
apt-get install -y tar tree npm git-lfs jq git > /dev/null
|
||||||
npm install -g n > /dev/null
|
npm install -g n > /dev/null
|
||||||
n stable > /dev/null
|
n stable > /dev/null
|
||||||
|
|
@ -5321,19 +5327,27 @@ class BuildAutomationWorkflow {
|
||||||
${buildHooks.filter((x) => x.hook.includes(`after`)).map((x) => x.commands) || ' '}`;
|
${buildHooks.filter((x) => x.hook.includes(`after`)).map((x) => x.commands) || ' '}`;
|
||||||
}
|
}
|
||||||
static setupCommands(builderPath) {
|
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 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`;
|
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
|
return `export GIT_DISCOVERY_ACROSS_FILESYSTEM=1
|
||||||
echo "game ci cloud runner clone"
|
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}
|
${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}
|
${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"
|
echo "game ci cloud runner bootstrap"
|
||||||
node ${builderPath} -m remote-cli-pre-build
|
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
|
// ToDo: Replace with a very simple "node ${builderPath} -m build-cli" to run the scripts below without enlarging the request size
|
||||||
static BuildCommands(builderPath) {
|
static BuildCommands(builderPath) {
|
||||||
|
|
@ -5351,9 +5365,13 @@ class BuildAutomationWorkflow {
|
||||||
/entrypoint.sh
|
/entrypoint.sh
|
||||||
echo "game ci cloud runner push library to cache"
|
echo "game ci cloud runner push library to cache"
|
||||||
chmod +x ${builderPath}
|
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
|
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;
|
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) {
|
private static setupCommands(builderPath) {
|
||||||
const commands = `mkdir -p ${CloudRunnerFolders.ToLinuxFolder(
|
const commands = `mkdir -p ${CloudRunnerFolders.ToLinuxFolder(
|
||||||
CloudRunnerFolders.builderPathAbsolute,
|
CloudRunnerFolders.builderPathAbsolute,
|
||||||
)} && git clone -q -b ${
|
)} && git clone -q -b ${CloudRunner.buildParameters.cloudRunnerBranch} ${
|
||||||
CloudRunner.buildParameters.cloudRunnerBranch
|
CloudRunnerFolders.unityBuilderRepoUrl
|
||||||
} ${CloudRunnerFolders.unityBuilderRepoUrl} "${CloudRunnerFolders.ToLinuxFolder(
|
} "${CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.builderPathAbsolute)}" && chmod +x ${builderPath}`;
|
||||||
CloudRunnerFolders.builderPathAbsolute,
|
|
||||||
)}" && chmod +x ${builderPath}`;
|
|
||||||
|
|
||||||
const retainedWorkspaceCommands = `if [ -e "${CloudRunnerFolders.ToLinuxFolder(
|
const retainedWorkspaceCommands = `if [ -e "${CloudRunnerFolders.ToLinuxFolder(
|
||||||
CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute,
|
CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue