From 2c5de37f22a35bd688d61e8be9ed1879b7f9fdeb Mon Sep 17 00:00:00 2001 From: Gleb Bahmutov Date: Tue, 16 Feb 2021 16:06:19 -0500 Subject: [PATCH 1/6] feat: send CI variables for CloudFresh --- packages/server/lib/util/ci_provider.js | 21 +++++++ packages/server/test/unit/ci_provider_spec.js | 57 +++++++++++++++++++ 2 files changed, 78 insertions(+) diff --git a/packages/server/lib/util/ci_provider.js b/packages/server/lib/util/ci_provider.js index 275b34cc5099..86bf22074fc8 100644 --- a/packages/server/lib/util/ci_provider.js +++ b/packages/server/lib/util/ci_provider.js @@ -96,6 +96,7 @@ const CI_PROVIDERS = { 'codeshipBasic': isCodeshipBasic, 'codeshipPro': isCodeshipPro, 'concourse': isConcourse, + cloudFresh: 'CF_BUILD_ID', 'drone': 'DRONE', githubActions: 'GITHUB_ACTIONS', 'gitlab': isGitlab, @@ -218,6 +219,20 @@ const _providerCiParams = () => { 'BUILD_TEAM_NAME', 'ATC_EXTERNAL_URL', ]), + // https://codefresh.io/docs/docs/codefresh-yaml/variables/ + cloudFresh: extract([ + 'CF_BUILD_ID', + 'CF_BUILD_URL', + 'CF_CURRENT_ATTEMPT', + 'CF_STEP_NAME', + 'CF_PIPELINE_NAME', + 'CF_PIPELINE_TRIGGER_ID', + // variables added for pull requests + 'CF_PULL_REQUEST_ID', + 'CF_PULL_REQUEST_IS_FORK', + 'CF_PULL_REQUEST_NUMBER', + 'CF_PULL_REQUEST_TARGET', + ]), drone: extract([ 'DRONE_JOB_NUMBER', 'DRONE_BUILD_LINK', @@ -465,6 +480,12 @@ const _providerCommitParams = () => { // remoteOrigin: ??? // defaultBranch: ??? }, + cloudFresh: { + sha: env.CF_REVISION, + branch: env.CF_BRANCH, + message: env.CF_COMMIT_MESSAGE, + authorName: env.CF_COMMIT_AUTHOR, + }, drone: { sha: env.DRONE_COMMIT_SHA, branch: env.DRONE_COMMIT_BRANCH, diff --git a/packages/server/test/unit/ci_provider_spec.js b/packages/server/test/unit/ci_provider_spec.js index 343b86a09d93..02152a60f4ae 100644 --- a/packages/server/test/unit/ci_provider_spec.js +++ b/packages/server/test/unit/ci_provider_spec.js @@ -458,6 +458,63 @@ describe('lib/util/ci_provider', () => { return expectsCommitParams(null) }) + it('codeFresh', () => { + resetEnv = mockedEnv({ + // build information + 'CF_BUILD_ID': 'cfBuildId', + 'CF_BUILD_URL': 'cfBuildUrl', + 'CF_CURRENT_ATTEMPT': 'cfCurrentAttempt', + 'CF_STEP_NAME': 'cfStepName', + 'CF_PIPELINE_NAME': 'cfPipelineName', + 'CF_PIPELINE_TRIGGER_ID': 'cfPipelineTriggerId', + + // variables added for pull requests + 'CF_PULL_REQUEST_ID': 'cfPullRequestId', + 'CF_PULL_REQUEST_IS_FORK': 'cfPullRequestIsFork', + 'CF_PULL_REQUEST_NUMBER': 'cfPullRequestNumber', + 'CF_PULL_REQUEST_TARGET': 'cfPullRequestTarget', + + // git information + CF_REVISION: 'cfRevision', + CF_BRANCH: 'cfBranch', + CF_COMMIT_MESSAGE: 'cfCommitMessage', + CF_COMMIT_AUTHOR: 'cfCommitAuthor', + }, { clear: true }) + + expectsName('cloudFlare') + expectsCiParams({ + cfBuildId: 'cfBuildId', + cfBuildUrl: 'cfBuildUrl', + cfCurrentAttempt: 'cfCurrentAttempt', + cfStepName: 'cfStepName', + cfPipelineName: 'cfPipelineName', + cfPipelineTriggerId: 'cfPipelineTriggerId', + }) + + expectsCommitParams({ + sha: 'cfRevision', + branch: 'cfBranch', + message: 'cfCommitMessage', + authorName: 'cfCommitAuthor', + }) + + expectsCommitDefaults({ + sha: null, + branch: 'gitFoundBranch', + }, { + sha: 'bitbucketCommit', + branch: 'gitFoundBranch', + }) + + return expectsCommitDefaults({ + sha: undefined, + branch: '', + }, { + sha: 'bitbucketCommit', + branch: 'bitbucketBranch', + }) + }) + it('drone', () => { resetEnv = mockedEnv({ DRONE: 'true', From 04564ef6ec59daaaba7da5e791da75a238144738 Mon Sep 17 00:00:00 2001 From: Gleb Bahmutov Date: Tue, 16 Feb 2021 16:13:35 -0500 Subject: [PATCH 2/6] remove extra lines --- packages/server/test/unit/ci_provider_spec.js | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/packages/server/test/unit/ci_provider_spec.js b/packages/server/test/unit/ci_provider_spec.js index 02152a60f4ae..de927b49f614 100644 --- a/packages/server/test/unit/ci_provider_spec.js +++ b/packages/server/test/unit/ci_provider_spec.js @@ -497,22 +497,6 @@ describe('lib/util/ci_provider', () => { message: 'cfCommitMessage', authorName: 'cfCommitAuthor', }) - - expectsCommitDefaults({ - sha: null, - branch: 'gitFoundBranch', - }, { - sha: 'bitbucketCommit', - branch: 'gitFoundBranch', - }) - - return expectsCommitDefaults({ - sha: undefined, - branch: '', - }, { - sha: 'bitbucketCommit', - branch: 'bitbucketBranch', - }) }) it('drone', () => { From 7a79a00f658946710bd226e4971b505c00e430c3 Mon Sep 17 00:00:00 2001 From: Gleb Bahmutov Date: Tue, 16 Feb 2021 16:26:02 -0500 Subject: [PATCH 3/6] fix ci name --- packages/server/lib/util/ci_provider.js | 4 ++-- packages/server/test/unit/ci_provider_spec.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/server/lib/util/ci_provider.js b/packages/server/lib/util/ci_provider.js index 86bf22074fc8..f7d58715593a 100644 --- a/packages/server/lib/util/ci_provider.js +++ b/packages/server/lib/util/ci_provider.js @@ -220,7 +220,7 @@ const _providerCiParams = () => { 'ATC_EXTERNAL_URL', ]), // https://codefresh.io/docs/docs/codefresh-yaml/variables/ - cloudFresh: extract([ + codeFresh: extract([ 'CF_BUILD_ID', 'CF_BUILD_URL', 'CF_CURRENT_ATTEMPT', @@ -480,7 +480,7 @@ const _providerCommitParams = () => { // remoteOrigin: ??? // defaultBranch: ??? }, - cloudFresh: { + codeFresh: { sha: env.CF_REVISION, branch: env.CF_BRANCH, message: env.CF_COMMIT_MESSAGE, diff --git a/packages/server/test/unit/ci_provider_spec.js b/packages/server/test/unit/ci_provider_spec.js index de927b49f614..544f5131898a 100644 --- a/packages/server/test/unit/ci_provider_spec.js +++ b/packages/server/test/unit/ci_provider_spec.js @@ -481,7 +481,7 @@ describe('lib/util/ci_provider', () => { CF_COMMIT_AUTHOR: 'cfCommitAuthor', }, { clear: true }) - expectsName('cloudFlare') + expectsName('codeFresh') expectsCiParams({ cfBuildId: 'cfBuildId', cfBuildUrl: 'cfBuildUrl', From 548d512c2226405088522fa3d7916e4eea7feb5b Mon Sep 17 00:00:00 2001 From: Gleb Bahmutov Date: Tue, 16 Feb 2021 19:34:20 -0500 Subject: [PATCH 4/6] fix ci name again --- packages/server/lib/util/ci_provider.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/server/lib/util/ci_provider.js b/packages/server/lib/util/ci_provider.js index f7d58715593a..7c57b713244a 100644 --- a/packages/server/lib/util/ci_provider.js +++ b/packages/server/lib/util/ci_provider.js @@ -96,7 +96,7 @@ const CI_PROVIDERS = { 'codeshipBasic': isCodeshipBasic, 'codeshipPro': isCodeshipPro, 'concourse': isConcourse, - cloudFresh: 'CF_BUILD_ID', + codeFresh: 'CF_BUILD_ID', 'drone': 'DRONE', githubActions: 'GITHUB_ACTIONS', 'gitlab': isGitlab, From 25287b71d995f507dbba4f60b9dc34a75675033f Mon Sep 17 00:00:00 2001 From: Gleb Bahmutov Date: Wed, 17 Feb 2021 10:25:16 -0500 Subject: [PATCH 5/6] add missing properties --- packages/server/test/unit/ci_provider_spec.js | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/server/test/unit/ci_provider_spec.js b/packages/server/test/unit/ci_provider_spec.js index 544f5131898a..c350739ca12a 100644 --- a/packages/server/test/unit/ci_provider_spec.js +++ b/packages/server/test/unit/ci_provider_spec.js @@ -489,6 +489,11 @@ describe('lib/util/ci_provider', () => { cfStepName: 'cfStepName', cfPipelineName: 'cfPipelineName', cfPipelineTriggerId: 'cfPipelineTriggerId', + // pull request variables + cfPullRequestId: 'cfPullRequestId', + cfPullRequestIsFork: 'cfPullRequestIsFork', + cfPullRequestNumber: 'cfPullRequestNumber', + cfPullRequestTarget: 'cfPullRequestTarget', }) expectsCommitParams({ From 9afabd599909c14dc469f2f829761bb1ca396d29 Mon Sep 17 00:00:00 2001 From: Gleb Bahmutov Date: Wed, 17 Feb 2021 10:55:52 -0500 Subject: [PATCH 6/6] udpate snapshot --- packages/server/__snapshots__/cypress_spec.js | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/server/__snapshots__/cypress_spec.js b/packages/server/__snapshots__/cypress_spec.js index f25827837ee3..fc962c31457e 100644 --- a/packages/server/__snapshots__/cypress_spec.js +++ b/packages/server/__snapshots__/cypress_spec.js @@ -68,6 +68,7 @@ The ciBuildId is automatically detected if you are running Cypress in any of the - codeshipBasic - codeshipPro - concourse +- codeFresh - drone - githubActions - gitlab @@ -104,6 +105,7 @@ The ciBuildId is automatically detected if you are running Cypress in any of the - codeshipBasic - codeshipPro - concourse +- codeFresh - drone - githubActions - gitlab @@ -141,6 +143,7 @@ The ciBuildId is automatically detected if you are running Cypress in any of the - codeshipBasic - codeshipPro - concourse +- codeFresh - drone - githubActions - gitlab