ci: add reusable cloud-runner-integrity workflow; wire into Integrity; disable legacy pipeline triggers

pull/728/head
Frostebite 2025-09-07 02:05:27 +01:00
parent 4e3546c9bd
commit d800b1044c
3 changed files with 124 additions and 13 deletions

72
dist/index.js generated vendored
View File

@ -4808,11 +4808,50 @@ class RemoteClient {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git lfs install`);
(0, node_console_1.assert)(node_fs_1.default.existsSync(`.git`), 'git folder exists');
remote_client_logger_1.RemoteClientLogger.log(`${cloud_runner_1.default.buildParameters.branch}`);
if (cloud_runner_1.default.buildParameters.gitSha !== undefined) {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${cloud_runner_1.default.buildParameters.gitSha}`);
// Ensure refs exist (tags and PR refs)
await cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch --all --tags || true`);
if ((cloud_runner_1.default.buildParameters.branch || '').startsWith('pull/')) {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch origin +refs/pull/*:refs/remotes/origin/pull/* || true`);
}
const targetSha = cloud_runner_1.default.buildParameters.gitSha;
const targetBranch = cloud_runner_1.default.buildParameters.branch;
if (targetSha) {
try {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${targetSha}`);
}
catch (_error) {
try {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch origin ${targetSha} || true`);
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${targetSha}`);
}
catch (_error2) {
remote_client_logger_1.RemoteClientLogger.logWarning(`Falling back to branch checkout; SHA not found: ${targetSha}`);
try {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${targetBranch}`);
}
catch (_error3) {
if ((targetBranch || '').startsWith('pull/')) {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout origin/${targetBranch}`);
}
else {
throw _error2;
}
}
}
}
}
else {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${cloud_runner_1.default.buildParameters.branch}`);
try {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${targetBranch}`);
}
catch (_error) {
if ((targetBranch || '').startsWith('pull/')) {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout origin/${targetBranch}`);
}
else {
throw _error;
}
}
remote_client_logger_1.RemoteClientLogger.log(`buildParameter Git Sha is empty`);
}
(0, node_console_1.assert)(node_fs_1.default.existsSync(node_path_1.default.join(`.git`, `lfs`)), 'LFS folder should not exist before caching');
@ -4894,10 +4933,31 @@ class RemoteClient {
node_fs_1.default.existsSync(cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(node_path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute, `.git`)))) {
cloud_runner_logger_1.default.log(`Retained Workspace Already Exists!`);
process.chdir(cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute));
await cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch`);
await cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch --all --tags || true`);
if ((cloud_runner_1.default.buildParameters.branch || '').startsWith('pull/')) {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch origin +refs/pull/*:refs/remotes/origin/pull/* || true`);
}
await cloud_runner_system_1.CloudRunnerSystem.Run(`git lfs pull`);
await cloud_runner_system_1.CloudRunnerSystem.Run(`git reset --hard "${cloud_runner_1.default.buildParameters.gitSha}"`);
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${cloud_runner_1.default.buildParameters.gitSha}`);
const sha = cloud_runner_1.default.buildParameters.gitSha;
const branch = cloud_runner_1.default.buildParameters.branch;
try {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git reset --hard "${sha}"`);
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${sha}`);
}
catch (_error) {
remote_client_logger_1.RemoteClientLogger.logWarning(`Retained workspace: SHA not found, falling back to branch ${branch}`);
try {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout ${branch}`);
}
catch (_error2) {
if ((branch || '').startsWith('pull/')) {
await cloud_runner_system_1.CloudRunnerSystem.Run(`git checkout origin/${branch}`);
}
else {
throw _error2;
}
}
}
return true;
}
return false;

2
dist/index.js.map generated vendored

File diff suppressed because one or more lines are too long

View File

@ -234,10 +234,43 @@ export class RemoteClient {
await CloudRunnerSystem.Run(`git lfs install`);
assert(fs.existsSync(`.git`), 'git folder exists');
RemoteClientLogger.log(`${CloudRunner.buildParameters.branch}`);
if (CloudRunner.buildParameters.gitSha !== undefined) {
await CloudRunnerSystem.Run(`git checkout ${CloudRunner.buildParameters.gitSha}`);
// Ensure refs exist (tags and PR refs)
await CloudRunnerSystem.Run(`git fetch --all --tags || true`);
if ((CloudRunner.buildParameters.branch || '').startsWith('pull/')) {
await CloudRunnerSystem.Run(`git fetch origin +refs/pull/*:refs/remotes/origin/pull/* || true`);
}
const targetSha = CloudRunner.buildParameters.gitSha;
const targetBranch = CloudRunner.buildParameters.branch;
if (targetSha) {
try {
await CloudRunnerSystem.Run(`git checkout ${targetSha}`);
} catch (_error) {
try {
await CloudRunnerSystem.Run(`git fetch origin ${targetSha} || true`);
await CloudRunnerSystem.Run(`git checkout ${targetSha}`);
} catch (_error2) {
RemoteClientLogger.logWarning(`Falling back to branch checkout; SHA not found: ${targetSha}`);
try {
await CloudRunnerSystem.Run(`git checkout ${targetBranch}`);
} catch (_error3) {
if ((targetBranch || '').startsWith('pull/')) {
await CloudRunnerSystem.Run(`git checkout origin/${targetBranch}`);
} else {
throw _error2;
}
}
}
}
} else {
await CloudRunnerSystem.Run(`git checkout ${CloudRunner.buildParameters.branch}`);
try {
await CloudRunnerSystem.Run(`git checkout ${targetBranch}`);
} catch (_error) {
if ((targetBranch || '').startsWith('pull/')) {
await CloudRunnerSystem.Run(`git checkout origin/${targetBranch}`);
} else {
throw _error;
}
}
RemoteClientLogger.log(`buildParameter Git Sha is empty`);
}
@ -336,10 +369,28 @@ export class RemoteClient {
) {
CloudRunnerLogger.log(`Retained Workspace Already Exists!`);
process.chdir(CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.repoPathAbsolute));
await CloudRunnerSystem.Run(`git fetch`);
await CloudRunnerSystem.Run(`git fetch --all --tags || true`);
if ((CloudRunner.buildParameters.branch || '').startsWith('pull/')) {
await CloudRunnerSystem.Run(`git fetch origin +refs/pull/*:refs/remotes/origin/pull/* || true`);
}
await CloudRunnerSystem.Run(`git lfs pull`);
await CloudRunnerSystem.Run(`git reset --hard "${CloudRunner.buildParameters.gitSha}"`);
await CloudRunnerSystem.Run(`git checkout ${CloudRunner.buildParameters.gitSha}`);
const sha = CloudRunner.buildParameters.gitSha;
const branch = CloudRunner.buildParameters.branch;
try {
await CloudRunnerSystem.Run(`git reset --hard "${sha}"`);
await CloudRunnerSystem.Run(`git checkout ${sha}`);
} catch (_error) {
RemoteClientLogger.logWarning(`Retained workspace: SHA not found, falling back to branch ${branch}`);
try {
await CloudRunnerSystem.Run(`git checkout ${branch}`);
} catch (_error2) {
if ((branch || '').startsWith('pull/')) {
await CloudRunnerSystem.Run(`git checkout origin/${branch}`);
} else {
throw _error2;
}
}
}
return true;
}