diff --git a/dist/index.js b/dist/index.js index d546e509..7a54aa5a 100644 Binary files a/dist/index.js and b/dist/index.js differ diff --git a/dist/index.js.map b/dist/index.js.map index 7185c6f7..a384995f 100644 Binary files a/dist/index.js.map and b/dist/index.js.map differ diff --git a/src/model/cloud-runner/cloud-runner.ts b/src/model/cloud-runner/cloud-runner.ts index 98c55a58..8c811e0b 100644 --- a/src/model/cloud-runner/cloud-runner.ts +++ b/src/model/cloud-runner/cloud-runner.ts @@ -125,7 +125,6 @@ class CloudRunner { ), ); await CloudRunner.Provider.cleanupWorkflow( - CloudRunner.buildParameters.buildGuid, CloudRunner.buildParameters, CloudRunner.buildParameters.branch, CloudRunner.defaultSecrets, diff --git a/src/model/cloud-runner/error/cloud-runner-error.ts b/src/model/cloud-runner/error/cloud-runner-error.ts index d5b7b458..42eb1d9d 100644 --- a/src/model/cloud-runner/error/cloud-runner-error.ts +++ b/src/model/cloud-runner/error/cloud-runner-error.ts @@ -9,12 +9,7 @@ export class CloudRunnerError { CloudRunnerLogger.error(JSON.stringify(error, undefined, 4)); core.setFailed('Cloud Runner failed'); if (CloudRunner.Provider !== undefined) { - await CloudRunner.Provider.cleanupWorkflow( - buildParameters.buildGuid, - buildParameters, - buildParameters.branch, - secrets, - ); + await CloudRunner.Provider.cleanupWorkflow(buildParameters, buildParameters.branch, secrets); } } } diff --git a/src/model/cloud-runner/providers/aws/index.ts b/src/model/cloud-runner/providers/aws/index.ts index ab36fb37..2acd48c9 100644 --- a/src/model/cloud-runner/providers/aws/index.ts +++ b/src/model/cloud-runner/providers/aws/index.ts @@ -57,8 +57,6 @@ class AWSBuildEnvironment implements ProviderInterface { } async cleanupWorkflow( - // eslint-disable-next-line no-unused-vars - buildGuid: string, // eslint-disable-next-line no-unused-vars buildParameters: BuildParameters, // eslint-disable-next-line no-unused-vars diff --git a/src/model/cloud-runner/providers/docker/index.ts b/src/model/cloud-runner/providers/docker/index.ts index 42044182..b082dbbd 100644 --- a/src/model/cloud-runner/providers/docker/index.ts +++ b/src/model/cloud-runner/providers/docker/index.ts @@ -41,7 +41,6 @@ class LocalDockerCloudRunner implements ProviderInterface { return new Promise((result) => result(``)); } async cleanupWorkflow( - buildGuid: string, buildParameters: BuildParameters, // eslint-disable-next-line no-unused-vars branchName: string, diff --git a/src/model/cloud-runner/providers/k8s/index.ts b/src/model/cloud-runner/providers/k8s/index.ts index 12c734da..d7f01ddd 100644 --- a/src/model/cloud-runner/providers/k8s/index.ts +++ b/src/model/cloud-runner/providers/k8s/index.ts @@ -306,7 +306,6 @@ class Kubernetes implements ProviderInterface { } async cleanupWorkflow( - buildGuid: string, buildParameters: BuildParameters, // eslint-disable-next-line no-unused-vars branchName: string, diff --git a/src/model/cloud-runner/providers/local/index.ts b/src/model/cloud-runner/providers/local/index.ts index feaa3fdc..5c4ec8ba 100644 --- a/src/model/cloud-runner/providers/local/index.ts +++ b/src/model/cloud-runner/providers/local/index.ts @@ -32,8 +32,6 @@ class LocalCloudRunner implements ProviderInterface { throw new Error('Method not implemented.'); } cleanupWorkflow( - // eslint-disable-next-line no-unused-vars - buildGuid: string, // eslint-disable-next-line no-unused-vars buildParameters: BuildParameters, // eslint-disable-next-line no-unused-vars diff --git a/src/model/cloud-runner/providers/provider-interface.ts b/src/model/cloud-runner/providers/provider-interface.ts index 7de6aa0c..01dda311 100644 --- a/src/model/cloud-runner/providers/provider-interface.ts +++ b/src/model/cloud-runner/providers/provider-interface.ts @@ -6,8 +6,6 @@ import { ProviderWorkflow } from './provider-workflow'; export interface ProviderInterface { cleanupWorkflow( - // eslint-disable-next-line no-unused-vars - buildGuid: string, // eslint-disable-next-line no-unused-vars buildParameters: BuildParameters, // eslint-disable-next-line no-unused-vars diff --git a/src/model/cloud-runner/providers/test/index.ts b/src/model/cloud-runner/providers/test/index.ts index 853a00d5..e1aa0bc3 100644 --- a/src/model/cloud-runner/providers/test/index.ts +++ b/src/model/cloud-runner/providers/test/index.ts @@ -25,8 +25,6 @@ class TestCloudRunner implements ProviderInterface { throw new Error('Method not implemented.'); } cleanupWorkflow( - // eslint-disable-next-line no-unused-vars - buildGuid: string, // eslint-disable-next-line no-unused-vars buildParameters: BuildParameters, // eslint-disable-next-line no-unused-vars diff --git a/src/model/cloud-runner/tests/e2e/cloud-runner-end2end-caching.test.ts b/src/model/cloud-runner/tests/e2e/cloud-runner-end2end-caching.test.ts index 854d2cef..f7c0536a 100644 --- a/src/model/cloud-runner/tests/e2e/cloud-runner-end2end-caching.test.ts +++ b/src/model/cloud-runner/tests/e2e/cloud-runner-end2end-caching.test.ts @@ -30,6 +30,7 @@ describe('Cloud Runner Caching', () => { targetPlatform: 'StandaloneLinux64', cacheKey: `test-case-${uuidv4()}`, containerHookFiles: `debug-cache`, + cloudRunnerBranch: `cloud-runner-develop`, }; if (CloudRunnerOptions.providerStrategy === `k8s`) { overrides.containerHookFiles += `,aws-s3-pull-cache,aws-s3-upload-cache`; diff --git a/src/model/github.ts b/src/model/github.ts index 0dd18637..de5a81eb 100644 --- a/src/model/github.ts +++ b/src/model/github.ts @@ -175,36 +175,40 @@ class GitHub { static async triggerWorkflowOnComplete(triggerWorkflowOnComplete: string[]) { const isLocalAsync = CloudRunner.buildParameters.asyncWorkflow && !CloudRunner.isCloudRunnerAsyncEnvironment; - if (isLocalAsync) { + if (isLocalAsync || triggerWorkflowOnComplete === undefined || triggerWorkflowOnComplete.length === 0) { return; } - const workflowsResult = await GitHub.octokitPAT.request(`GET /repos/{owner}/{repo}/actions/workflows`, { - owner: GitHub.owner, - repo: GitHub.repo, - }); - const workflows = workflowsResult.data.workflows; - CloudRunnerLogger.log(`Got ${workflows.length} workflows`); - for (const element of triggerWorkflowOnComplete) { - let selectedId = ``; - for (let index = 0; index < workflowsResult.data.total_count; index++) { - if (workflows[index].name === element) { - selectedId = workflows[index].id.toString(); - } - } - if (selectedId === ``) { - core.info(JSON.stringify(workflows)); - throw new Error(`no workflow with name "${GitHub.asyncChecksApiWorkflowName}"`); - } - await GitHub.octokitPAT.request(`POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches`, { + try { + const workflowsResult = await GitHub.octokitPAT.request(`GET /repos/{owner}/{repo}/actions/workflows`, { owner: GitHub.owner, repo: GitHub.repo, - // eslint-disable-next-line camelcase - workflow_id: selectedId, - ref: CloudRunnerOptions.branch, - inputs: { - buildGuid: CloudRunner.buildParameters.buildGuid, - }, }); + const workflows = workflowsResult.data.workflows; + CloudRunnerLogger.log(`Got ${workflows.length} workflows`); + for (const element of triggerWorkflowOnComplete) { + let selectedId = ``; + for (let index = 0; index < workflowsResult.data.total_count; index++) { + if (workflows[index].name === element) { + selectedId = workflows[index].id.toString(); + } + } + if (selectedId === ``) { + core.info(JSON.stringify(workflows)); + throw new Error(`no workflow with name "${GitHub.asyncChecksApiWorkflowName}"`); + } + await GitHub.octokitPAT.request(`POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches`, { + owner: GitHub.owner, + repo: GitHub.repo, + // eslint-disable-next-line camelcase + workflow_id: selectedId, + ref: CloudRunnerOptions.branch, + inputs: { + buildGuid: CloudRunner.buildParameters.buildGuid, + }, + }); + } + } catch { + core.info(`github workflow complete hook not found`); } } }