Fix: retained workspaces must fetch before resetting to needed commit (#476)

pull/477/head
Frostebite 2022-11-18 20:43:52 +00:00 committed by GitHub
parent d6ac850da1
commit 2a32a9d870
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 14 additions and 5 deletions

9
dist/index.js generated vendored
View File

@ -4140,7 +4140,7 @@ class RemoteClient {
fs_1.default.existsSync(path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute, `.git`))) { fs_1.default.existsSync(path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute, `.git`))) {
process.chdir(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute); process.chdir(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute);
remote_client_logger_1.RemoteClientLogger.log(`${cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute} repo exists - skipping clone - retained workspace mode ${cloud_runner_1.default.buildParameters.retainWorkspace}`); remote_client_logger_1.RemoteClientLogger.log(`${cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute} repo exists - skipping clone - retained workspace mode ${cloud_runner_1.default.buildParameters.retainWorkspace}`);
yield cloud_runner_system_1.CloudRunnerSystem.Run(`git reset --hard ${cloud_runner_1.default.buildParameters.gitSha}`); yield cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch && git reset --hard ${cloud_runner_1.default.buildParameters.gitSha}`);
return; return;
} }
if (fs_1.default.existsSync(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute)) { if (fs_1.default.existsSync(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute)) {
@ -4173,7 +4173,7 @@ class RemoteClient {
if (cloud_runner_1.default.buildParameters.useSharedLargePackages) { if (cloud_runner_1.default.buildParameters.useSharedLargePackages) {
const filePath = path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.projectPathAbsolute, `Packages/manifest.json`); const filePath = path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.projectPathAbsolute, `Packages/manifest.json`);
let manifest = fs_1.default.readFileSync(filePath, 'utf8'); let manifest = fs_1.default.readFileSync(filePath, 'utf8');
manifest = manifest.replace(/LargeContent/g, '../../LargeContent'); manifest = manifest.replace(/LargeContent/g, '../../../LargeContent');
fs_1.default.writeFileSync(filePath, manifest); fs_1.default.writeFileSync(filePath, manifest);
if (cloud_runner_1.default.buildParameters.cloudRunnerDebug) { if (cloud_runner_1.default.buildParameters.cloudRunnerDebug) {
cloud_runner_logger_1.default.log(`Package Manifest`); cloud_runner_logger_1.default.log(`Package Manifest`);
@ -4459,6 +4459,7 @@ const path_1 = __importDefault(__nccwpck_require__(71017));
const fs = __importStar(__nccwpck_require__(57147)); const fs = __importStar(__nccwpck_require__(57147));
const input_1 = __importDefault(__nccwpck_require__(91933)); const input_1 = __importDefault(__nccwpck_require__(91933));
const cloud_runner_options_1 = __importDefault(__nccwpck_require__(96552)); const cloud_runner_options_1 = __importDefault(__nccwpck_require__(96552));
const cloud_runner_logger_1 = __importDefault(__nccwpck_require__(22855));
class CloudRunnerCustomSteps { class CloudRunnerCustomSteps {
static GetCustomStepsFromFiles(hookLifecycle) { static GetCustomStepsFromFiles(hookLifecycle) {
const results = []; const results = [];
@ -4573,6 +4574,7 @@ class CloudRunnerCustomSteps {
}); });
} }
static ParseSteps(steps) { static ParseSteps(steps) {
var _a;
if (steps === '') { if (steps === '') {
return []; return [];
} }
@ -4580,6 +4582,9 @@ class CloudRunnerCustomSteps {
// CloudRunnerLogger.log(`Parsing build steps: ${steps}`); // CloudRunnerLogger.log(`Parsing build steps: ${steps}`);
// } // }
const isArray = steps.replace(/\s/g, ``)[0] === `-`; const isArray = steps.replace(/\s/g, ``)[0] === `-`;
if ((_a = cloud_runner_1.default.buildParameters) === null || _a === void 0 ? void 0 : _a.cloudRunnerDebug) {
cloud_runner_logger_1.default.log(`Parsing: ${steps}`);
}
const object = isArray ? yaml_1.default.parse(steps) : [yaml_1.default.parse(steps)]; const object = isArray ? yaml_1.default.parse(steps) : [yaml_1.default.parse(steps)];
for (const step of object) { for (const step of object) {
CloudRunnerCustomSteps.ConvertYamlSecrets(step); CloudRunnerCustomSteps.ConvertYamlSecrets(step);

2
dist/index.js.map generated vendored

File diff suppressed because one or more lines are too long

View File

@ -71,7 +71,7 @@ export class RemoteClient {
RemoteClientLogger.log( RemoteClientLogger.log(
`${CloudRunnerFolders.repoPathAbsolute} repo exists - skipping clone - retained workspace mode ${CloudRunner.buildParameters.retainWorkspace}`, `${CloudRunnerFolders.repoPathAbsolute} repo exists - skipping clone - retained workspace mode ${CloudRunner.buildParameters.retainWorkspace}`,
); );
await CloudRunnerSystem.Run(`git reset --hard ${CloudRunner.buildParameters.gitSha}`); await CloudRunnerSystem.Run(`git fetch && git reset --hard ${CloudRunner.buildParameters.gitSha}`);
return; return;
} }
@ -108,7 +108,7 @@ export class RemoteClient {
if (CloudRunner.buildParameters.useSharedLargePackages) { if (CloudRunner.buildParameters.useSharedLargePackages) {
const filePath = path.join(CloudRunnerFolders.projectPathAbsolute, `Packages/manifest.json`); const filePath = path.join(CloudRunnerFolders.projectPathAbsolute, `Packages/manifest.json`);
let manifest = fs.readFileSync(filePath, 'utf8'); let manifest = fs.readFileSync(filePath, 'utf8');
manifest = manifest.replace(/LargeContent/g, '../../LargeContent'); manifest = manifest.replace(/LargeContent/g, '../../../LargeContent');
fs.writeFileSync(filePath, manifest); fs.writeFileSync(filePath, manifest);
if (CloudRunner.buildParameters.cloudRunnerDebug) { if (CloudRunner.buildParameters.cloudRunnerDebug) {
CloudRunnerLogger.log(`Package Manifest`); CloudRunnerLogger.log(`Package Manifest`);

View File

@ -8,6 +8,7 @@ import path from 'path';
import * as fs from 'fs'; import * as fs from 'fs';
import Input from '../../input'; import Input from '../../input';
import CloudRunnerOptions from '../cloud-runner-options'; import CloudRunnerOptions from '../cloud-runner-options';
import CloudRunnerLogger from './cloud-runner-logger';
export class CloudRunnerCustomSteps { export class CloudRunnerCustomSteps {
static GetCustomStepsFromFiles(hookLifecycle: string): CustomStep[] { static GetCustomStepsFromFiles(hookLifecycle: string): CustomStep[] {
@ -141,6 +142,9 @@ export class CloudRunnerCustomSteps {
// } // }
const isArray = steps.replace(/\s/g, ``)[0] === `-`; const isArray = steps.replace(/\s/g, ``)[0] === `-`;
if (CloudRunner.buildParameters?.cloudRunnerDebug) {
CloudRunnerLogger.log(`Parsing: ${steps}`);
}
const object: CustomStep[] = isArray ? YAML.parse(steps) : [YAML.parse(steps)]; const object: CustomStep[] = isArray ? YAML.parse(steps) : [YAML.parse(steps)];
for (const step of object) { for (const step of object) {
CloudRunnerCustomSteps.ConvertYamlSecrets(step); CloudRunnerCustomSteps.ConvertYamlSecrets(step);