mirror of
https://github.com/cypress-io/cypress.git
synced 2026-05-03 21:40:28 -05:00
1126 lines
32 KiB
JavaScript
1126 lines
32 KiB
JavaScript
const mockedEnv = require('mocked-env')
|
|
|
|
require('../spec_helper')
|
|
|
|
const ciProvider = require(`${root}lib/util/ci_provider`)
|
|
|
|
const expectsName = (name) => {
|
|
expect(ciProvider.provider(), 'CI providers detected name').to.eq(name)
|
|
}
|
|
|
|
const expectsCiParams = (params) => {
|
|
expect(ciProvider.ciParams(), 'CI providers detected CI params').to.deep.eq(params)
|
|
}
|
|
|
|
const expectsCommitParams = (params) => {
|
|
expect(ciProvider.commitParams(), 'CI providers detected commit params').to.deep.eq(params)
|
|
}
|
|
|
|
const expectsCommitDefaults = function (existing, expected) {
|
|
expect(expected).to.be.an('object')
|
|
|
|
expect(ciProvider.commitDefaults(existing), 'CI providers default git params').to.deep.eq(expected)
|
|
}
|
|
|
|
describe('lib/util/ci_provider', () => {
|
|
let resetEnv = null
|
|
|
|
afterEach(() => {
|
|
// we need to reset environment
|
|
// to avoid affecting tests in other suites
|
|
return typeof resetEnv === 'function' ? resetEnv() : undefined
|
|
})
|
|
|
|
it('null when unknown', () => {
|
|
resetEnv = mockedEnv({}, { clear: true })
|
|
|
|
expectsName(null)
|
|
expectsCiParams(null)
|
|
|
|
return expectsCommitParams(null)
|
|
})
|
|
|
|
it('does not extract from commit environment variables yet', () => {
|
|
// see fallback environment variables
|
|
// https://github.com/cypress-io/commit-info#fallback-environment-variables
|
|
// BUT those defaults are NOT used by "ci_provider"
|
|
// instead they are used in the "record" module
|
|
// this test just confirms that these defaults are not considered
|
|
const env = {
|
|
COMMIT_INFO_BRANCH: 'my-branch-221',
|
|
COMMIT_INFO_MESSAGE: 'best commit ever',
|
|
COMMIT_INFO_EMAIL: 'user@company.com',
|
|
COMMIT_INFO_AUTHOR: 'Agent Smith',
|
|
COMMIT_INFO_SHA: '0123456',
|
|
COMMIT_INFO_REMOTE: 'remote repo',
|
|
}
|
|
|
|
resetEnv = mockedEnv(env, { clear: true })
|
|
|
|
expectsName(null) // we don't know CI
|
|
expectsCiParams(null) // we don't know CI params
|
|
|
|
return expectsCommitParams(null)
|
|
}) // we don't know CI-specific params
|
|
|
|
it('appveyor', () => {
|
|
resetEnv = mockedEnv({
|
|
APPVEYOR: 'true',
|
|
|
|
APPVEYOR_JOB_ID: 'appveyorJobId2',
|
|
APPVEYOR_ACCOUNT_NAME: 'appveyorAccountName',
|
|
APPVEYOR_PROJECT_SLUG: 'appveyorProjectSlug',
|
|
APPVEYOR_BUILD_VERSION: 'appveyorBuildVersion',
|
|
APPVEYOR_BUILD_NUMBER: 'appveyorBuildNumber',
|
|
APPVEYOR_PULL_REQUEST_NUMBER: 'appveyorPullRequestNumber',
|
|
APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH: 'appveyorPullRequestHeadRepoBranch',
|
|
|
|
APPVEYOR_REPO_COMMIT: 'repoCommit',
|
|
APPVEYOR_REPO_COMMIT_MESSAGE: 'repoCommitMessage',
|
|
APPVEYOR_REPO_BRANCH: 'repoBranch',
|
|
APPVEYOR_REPO_COMMIT_AUTHOR: 'repoCommitAuthor',
|
|
APPVEYOR_REPO_COMMIT_AUTHOR_EMAIL: 'repoCommitAuthorEmail',
|
|
}, { clear: true })
|
|
|
|
expectsName('appveyor')
|
|
expectsCiParams({
|
|
appveyorJobId: 'appveyorJobId2',
|
|
appveyorAccountName: 'appveyorAccountName',
|
|
appveyorProjectSlug: 'appveyorProjectSlug',
|
|
appveyorBuildNumber: 'appveyorBuildNumber',
|
|
appveyorBuildVersion: 'appveyorBuildVersion',
|
|
appveyorPullRequestNumber: 'appveyorPullRequestNumber',
|
|
appveyorPullRequestHeadRepoBranch: 'appveyorPullRequestHeadRepoBranch',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'repoCommit',
|
|
branch: 'appveyorPullRequestHeadRepoBranch',
|
|
message: 'repoCommitMessage',
|
|
authorName: 'repoCommitAuthor',
|
|
authorEmail: 'repoCommitAuthorEmail',
|
|
})
|
|
|
|
resetEnv()
|
|
|
|
resetEnv = mockedEnv({
|
|
APPVEYOR: 'true',
|
|
APPVEYOR_REPO_COMMIT_MESSAGE: 'repoCommitMessage',
|
|
APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDED: 'repoCommitMessageExtended',
|
|
}, { clear: true })
|
|
|
|
return expectsCommitParams({
|
|
message: 'repoCommitMessage\nrepoCommitMessageExtended',
|
|
})
|
|
})
|
|
|
|
it('awsCodeBuild', () => {
|
|
resetEnv = mockedEnv({
|
|
CODEBUILD_BUILD_ID: 'codebuild-demo-project:b1e6661e-e4f2-4156-9ab9-82a19EXAMPLE',
|
|
CODEBUILD_BUILD_NUMBER: '123',
|
|
CODEBUILD_RESOLVED_SOURCE_VERSION: 'commit',
|
|
CODEBUILD_SOURCE_REPO_URL: 'repositoryUrl',
|
|
CODEBUILD_SOURCE_VERSION: 'commitOrBranchOrTag',
|
|
}, { clear: true })
|
|
|
|
expectsName('awsCodeBuild')
|
|
expectsCiParams({
|
|
codebuildBuildId: 'codebuild-demo-project:b1e6661e-e4f2-4156-9ab9-82a19EXAMPLE',
|
|
codebuildBuildNumber: '123',
|
|
codebuildResolvedSourceVersion: 'commit',
|
|
codebuildSourceRepoUrl: 'repositoryUrl',
|
|
codebuildSourceVersion: 'commitOrBranchOrTag',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'commit',
|
|
remoteOrigin: 'repositoryUrl',
|
|
})
|
|
})
|
|
|
|
it('bamboo', () => {
|
|
resetEnv = mockedEnv({
|
|
'bamboo_buildNumber': 'bambooBuildNumber',
|
|
'bamboo_buildResultsUrl': 'bambooBuildResultsUrl',
|
|
'bamboo_planRepository_repositoryUrl': 'bambooPlanRepositoryRepositoryUrl',
|
|
'bamboo_buildKey': 'bambooBuildKey',
|
|
'bamboo_planRepository_revision': 'gitSha',
|
|
'bamboo_planRepository_branch': 'gitBranch',
|
|
'bamboo_planRepository_username': 'gitAuthor',
|
|
'bamboo_planRepository_repositoryURL': 'gitRemoteOrigin',
|
|
}, { clear: true })
|
|
|
|
expectsName('bamboo')
|
|
expectsCiParams({
|
|
bambooBuildNumber: 'bambooBuildNumber',
|
|
bambooBuildResultsUrl: 'bambooBuildResultsUrl',
|
|
bambooPlanRepositoryRepositoryUrl: 'bambooPlanRepositoryRepositoryUrl',
|
|
bambooBuildKey: 'bambooBuildKey',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'gitSha',
|
|
branch: 'gitBranch',
|
|
authorName: 'gitAuthor',
|
|
remoteOrigin: 'gitRemoteOrigin',
|
|
})
|
|
})
|
|
|
|
it('bitbucket', () => {
|
|
resetEnv = mockedEnv({
|
|
CI: '1',
|
|
|
|
// build information
|
|
BITBUCKET_BUILD_NUMBER: 'bitbucketBuildNumber',
|
|
BITBUCKET_REPO_OWNER: 'bitbucketRepoOwner',
|
|
BITBUCKET_REPO_SLUG: 'bitbucketRepoSlug',
|
|
BITBUCKET_PARALLEL_STEP: 'bitbucketParallelStep',
|
|
BITBUCKET_STEP_RUN_NUMBER: 'bitbucketStepRunNumber',
|
|
|
|
// git information
|
|
BITBUCKET_COMMIT: 'bitbucketCommit',
|
|
BITBUCKET_BRANCH: 'bitbucketBranch',
|
|
}, { clear: true })
|
|
|
|
expectsName('bitbucket')
|
|
expectsCiParams({
|
|
bitbucketBuildNumber: 'bitbucketBuildNumber',
|
|
bitbucketRepoOwner: 'bitbucketRepoOwner',
|
|
bitbucketRepoSlug: 'bitbucketRepoSlug',
|
|
bitbucketParallelStep: 'bitbucketParallelStep',
|
|
bitbucketStepRunNumber: 'bitbucketStepRunNumber',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'bitbucketCommit',
|
|
branch: 'bitbucketBranch',
|
|
})
|
|
|
|
expectsCommitDefaults({
|
|
sha: null,
|
|
branch: 'gitFoundBranch',
|
|
}, {
|
|
sha: 'bitbucketCommit',
|
|
branch: 'gitFoundBranch',
|
|
})
|
|
|
|
return expectsCommitDefaults({
|
|
sha: undefined,
|
|
branch: '',
|
|
}, {
|
|
sha: 'bitbucketCommit',
|
|
branch: 'bitbucketBranch',
|
|
})
|
|
})
|
|
|
|
it('bitbucket pull request', () => {
|
|
resetEnv = mockedEnv({
|
|
CI: '1',
|
|
|
|
// build information
|
|
BITBUCKET_BUILD_NUMBER: 'bitbucketBuildNumber',
|
|
BITBUCKET_REPO_OWNER: 'bitbucketRepoOwner',
|
|
BITBUCKET_REPO_SLUG: 'bitbucketRepoSlug',
|
|
BITBUCKET_PARALLEL_STEP: 'bitbucketParallelStep',
|
|
BITBUCKET_STEP_RUN_NUMBER: 'bitbucketStepRunNumber',
|
|
|
|
// git information
|
|
BITBUCKET_COMMIT: 'bitbucketCommit',
|
|
BITBUCKET_BRANCH: 'bitbucketBranch',
|
|
|
|
// pull request info
|
|
BITBUCKET_PR_ID: 'bitbucketPrId',
|
|
BITBUCKET_PR_DESTINATION_BRANCH: 'bitbucketPrDestinationBranch',
|
|
BITBUCKET_PR_DESTINATION_COMMIT: 'bitbucketPrDestinationCommit',
|
|
}, { clear: true })
|
|
|
|
expectsName('bitbucket')
|
|
expectsCiParams({
|
|
bitbucketBuildNumber: 'bitbucketBuildNumber',
|
|
bitbucketRepoOwner: 'bitbucketRepoOwner',
|
|
bitbucketRepoSlug: 'bitbucketRepoSlug',
|
|
bitbucketParallelStep: 'bitbucketParallelStep',
|
|
bitbucketStepRunNumber: 'bitbucketStepRunNumber',
|
|
bitbucketPrId: 'bitbucketPrId',
|
|
bitbucketPrDestinationBranch: 'bitbucketPrDestinationBranch',
|
|
bitbucketPrDestinationCommit: 'bitbucketPrDestinationCommit',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'bitbucketCommit',
|
|
branch: 'bitbucketBranch',
|
|
})
|
|
|
|
expectsCommitDefaults({
|
|
sha: null,
|
|
branch: 'gitFoundBranch',
|
|
}, {
|
|
sha: 'bitbucketCommit',
|
|
branch: 'gitFoundBranch',
|
|
})
|
|
|
|
return expectsCommitDefaults({
|
|
sha: undefined,
|
|
branch: '',
|
|
}, {
|
|
sha: 'bitbucketCommit',
|
|
branch: 'bitbucketBranch',
|
|
})
|
|
})
|
|
|
|
it('buildkite', () => {
|
|
resetEnv = mockedEnv({
|
|
BUILDKITE: 'true',
|
|
|
|
BUILDKITE_REPO: 'buildkiteRepo',
|
|
BUILDKITE_JOB_ID: 'buildkiteJobId',
|
|
BUILDKITE_SOURCE: 'buildkiteSource',
|
|
BUILDKITE_BUILD_ID: 'buildkiteBuildId',
|
|
BUILDKITE_BUILD_URL: 'buildkiteBuildUrl',
|
|
BUILDKITE_BUILD_NUMBER: 'buildkiteBuildNumber',
|
|
BUILDKITE_PULL_REQUEST: 'buildkitePullRequest',
|
|
BUILDKITE_PULL_REQUEST_REPO: 'buildkitePullRequestRepo',
|
|
BUILDKITE_PULL_REQUEST_BASE_BRANCH: 'buildkitePullRequestBaseBranch',
|
|
|
|
BUILDKITE_COMMIT: 'buildKiteCommit',
|
|
BUILDKITE_BRANCH: 'buildKiteBranch',
|
|
BUILDKITE_MESSAGE: 'buildKiteMessage',
|
|
BUILDKITE_BUILD_CREATOR: 'buildKiteBuildCreator',
|
|
BUILDKITE_BUILD_CREATOR_EMAIL: 'buildKiteCreatorEmail',
|
|
BUILDKITE_PIPELINE_DEFAULT_BRANCH: 'buildkitePipelineDefaultBranch',
|
|
}, { clear: true })
|
|
|
|
expectsName('buildkite')
|
|
expectsCiParams({
|
|
buildkiteRepo: 'buildkiteRepo',
|
|
buildkiteJobId: 'buildkiteJobId',
|
|
buildkiteSource: 'buildkiteSource',
|
|
buildkiteBuildId: 'buildkiteBuildId',
|
|
buildkiteBuildUrl: 'buildkiteBuildUrl',
|
|
buildkiteBuildNumber: 'buildkiteBuildNumber',
|
|
buildkitePullRequest: 'buildkitePullRequest',
|
|
buildkitePullRequestRepo: 'buildkitePullRequestRepo',
|
|
buildkitePullRequestBaseBranch: 'buildkitePullRequestBaseBranch',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'buildKiteCommit',
|
|
branch: 'buildKiteBranch',
|
|
message: 'buildKiteMessage',
|
|
authorName: 'buildKiteBuildCreator',
|
|
authorEmail: 'buildKiteCreatorEmail',
|
|
remoteOrigin: 'buildkiteRepo',
|
|
defaultBranch: 'buildkitePipelineDefaultBranch',
|
|
})
|
|
|
|
// in this test only interested in branch and sha for example
|
|
expectsCommitDefaults({
|
|
sha: null,
|
|
branch: 'gitFoundBranch',
|
|
}, {
|
|
sha: 'buildKiteCommit',
|
|
branch: 'gitFoundBranch',
|
|
})
|
|
|
|
return expectsCommitDefaults({
|
|
sha: undefined,
|
|
branch: '',
|
|
}, {
|
|
sha: 'buildKiteCommit',
|
|
branch: 'buildKiteBranch',
|
|
})
|
|
})
|
|
|
|
it('circle', () => {
|
|
resetEnv = mockedEnv({
|
|
CIRCLECI: 'true',
|
|
|
|
CIRCLE_JOB: 'circleJob',
|
|
CIRCLE_BUILD_NUM: 'circleBuildNum',
|
|
CIRCLE_BUILD_URL: 'circleBuildUrl',
|
|
CIRCLE_PR_NUMBER: 'circlePrNumber',
|
|
CIRCLE_PR_REPONAME: 'circlePrReponame',
|
|
CIRCLE_PR_USERNAME: 'circlePrUsername',
|
|
CIRCLE_COMPARE_URL: 'circleCompareUrl',
|
|
CIRCLE_WORKFLOW_ID: 'circleWorkflowId',
|
|
CIRCLE_PULL_REQUEST: 'circlePullRequest',
|
|
CIRCLE_REPOSITORY_URL: 'circleRepositoryUrl',
|
|
CI_PULL_REQUEST: 'ciPullRequest',
|
|
|
|
CIRCLE_SHA1: 'circleSha',
|
|
CIRCLE_BRANCH: 'circleBranch',
|
|
CIRCLE_USERNAME: 'circleUsername',
|
|
}, { clear: true })
|
|
|
|
expectsName('circle')
|
|
expectsCiParams({
|
|
circleJob: 'circleJob',
|
|
circleBuildNum: 'circleBuildNum',
|
|
circleBuildUrl: 'circleBuildUrl',
|
|
circlePrNumber: 'circlePrNumber',
|
|
circlePrReponame: 'circlePrReponame',
|
|
circlePrUsername: 'circlePrUsername',
|
|
circleCompareUrl: 'circleCompareUrl',
|
|
circleWorkflowId: 'circleWorkflowId',
|
|
circlePullRequest: 'circlePullRequest',
|
|
circleRepositoryUrl: 'circleRepositoryUrl',
|
|
ciPullRequest: 'ciPullRequest',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'circleSha',
|
|
branch: 'circleBranch',
|
|
authorName: 'circleUsername',
|
|
})
|
|
})
|
|
|
|
it('codeshipBasic', () => {
|
|
resetEnv = mockedEnv({
|
|
CODESHIP: 'TRUE',
|
|
CI_NAME: 'codeship',
|
|
|
|
CI_BUILD_ID: 'ciBuildId',
|
|
CI_REPO_NAME: 'ciRepoName',
|
|
CI_BUILD_URL: 'ciBuildUrl',
|
|
CI_PROJECT_ID: 'ciProjectId',
|
|
CI_BUILD_NUMBER: 'ciBuildNumber',
|
|
CI_PULL_REQUEST: 'ciPullRequest',
|
|
|
|
CI_COMMIT_ID: 'ciCommitId',
|
|
CI_BRANCH: 'ciBranch',
|
|
CI_COMMIT_MESSAGE: 'ciCommitMessage',
|
|
CI_COMMITTER_NAME: 'ciCommitterName',
|
|
CI_COMMITTER_EMAIL: 'ciCommitterEmail',
|
|
}, { clear: true })
|
|
|
|
expectsName('codeshipBasic')
|
|
expectsCiParams({
|
|
ciBuildId: 'ciBuildId',
|
|
ciRepoName: 'ciRepoName',
|
|
ciBuildUrl: 'ciBuildUrl',
|
|
ciProjectId: 'ciProjectId',
|
|
ciBuildNumber: 'ciBuildNumber',
|
|
ciPullRequest: 'ciPullRequest',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'ciCommitId',
|
|
branch: 'ciBranch',
|
|
message: 'ciCommitMessage',
|
|
authorName: 'ciCommitterName',
|
|
authorEmail: 'ciCommitterEmail',
|
|
})
|
|
})
|
|
|
|
it('codeshipPro', () => {
|
|
resetEnv = mockedEnv({
|
|
CI_NAME: 'codeship',
|
|
|
|
CI_BUILD_ID: 'ciBuildId',
|
|
CI_REPO_NAME: 'ciRepoName',
|
|
CI_PROJECT_ID: 'ciProjectId',
|
|
|
|
CI_COMMIT_ID: 'ciCommitId',
|
|
CI_BRANCH: 'ciBranch',
|
|
CI_COMMIT_MESSAGE: 'ciCommitMessage',
|
|
CI_COMMITTER_NAME: 'ciCommitterName',
|
|
CI_COMMITTER_EMAIL: 'ciCommitterEmail',
|
|
}, { clear: true })
|
|
|
|
expectsName('codeshipPro')
|
|
expectsCiParams({
|
|
ciBuildId: 'ciBuildId',
|
|
ciRepoName: 'ciRepoName',
|
|
ciProjectId: 'ciProjectId',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'ciCommitId',
|
|
branch: 'ciBranch',
|
|
message: 'ciCommitMessage',
|
|
authorName: 'ciCommitterName',
|
|
authorEmail: 'ciCommitterEmail',
|
|
})
|
|
})
|
|
|
|
it('concourse', () => {
|
|
resetEnv = mockedEnv({
|
|
CONCOURSE_WORK_DIR: '/opt/concourse/worker',
|
|
|
|
BUILD_ID: 'ciBuildId',
|
|
}, { clear: true })
|
|
|
|
expectsName('concourse')
|
|
expectsCiParams({
|
|
buildId: 'ciBuildId',
|
|
})
|
|
|
|
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('codeFresh')
|
|
expectsCiParams({
|
|
cfBuildId: 'cfBuildId',
|
|
cfBuildUrl: 'cfBuildUrl',
|
|
cfCurrentAttempt: 'cfCurrentAttempt',
|
|
cfStepName: 'cfStepName',
|
|
cfPipelineName: 'cfPipelineName',
|
|
cfPipelineTriggerId: 'cfPipelineTriggerId',
|
|
// pull request variables
|
|
cfPullRequestId: 'cfPullRequestId',
|
|
cfPullRequestIsFork: 'cfPullRequestIsFork',
|
|
cfPullRequestNumber: 'cfPullRequestNumber',
|
|
cfPullRequestTarget: 'cfPullRequestTarget',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'cfRevision',
|
|
branch: 'cfBranch',
|
|
message: 'cfCommitMessage',
|
|
authorName: 'cfCommitAuthor',
|
|
})
|
|
})
|
|
|
|
it('drone', () => {
|
|
resetEnv = mockedEnv({
|
|
DRONE: 'true',
|
|
|
|
DRONE_JOB_NUMBER: 'droneJobNumber',
|
|
DRONE_BUILD_LINK: 'droneBuildLink',
|
|
DRONE_BUILD_NUMBER: 'droneBuildNumber',
|
|
DRONE_PULL_REQUEST: 'dronePullRequest',
|
|
|
|
DRONE_COMMIT_SHA: 'droneCommitSha',
|
|
DRONE_COMMIT_BRANCH: 'droneCommitBranch',
|
|
DRONE_COMMIT_MESSAGE: 'droneCommitMessage',
|
|
DRONE_COMMIT_AUTHOR: 'droneCommitAuthor',
|
|
DRONE_COMMIT_AUTHOR_EMAIL: 'droneCommitAuthorEmail',
|
|
DRONE_REPO_BRANCH: 'droneRepoBranch',
|
|
}, { clear: true })
|
|
|
|
expectsName('drone')
|
|
expectsCiParams({
|
|
droneJobNumber: 'droneJobNumber',
|
|
droneBuildLink: 'droneBuildLink',
|
|
droneBuildNumber: 'droneBuildNumber',
|
|
dronePullRequest: 'dronePullRequest',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'droneCommitSha',
|
|
branch: 'droneCommitBranch',
|
|
message: 'droneCommitMessage',
|
|
authorName: 'droneCommitAuthor',
|
|
authorEmail: 'droneCommitAuthorEmail',
|
|
defaultBranch: 'droneRepoBranch',
|
|
})
|
|
})
|
|
|
|
it('github actions', () => {
|
|
resetEnv = mockedEnv({
|
|
GITHUB_ACTIONS: 'true',
|
|
|
|
GITHUB_WORKFLOW: 'ciGitHubWorkflowName',
|
|
GITHUB_ACTION: 'ciGitHubActionId',
|
|
GITHUB_EVENT_NAME: 'ciEventName',
|
|
GITHUB_RUN_ID: 'ciGithubRunId',
|
|
GITHUB_REPOSITORY: 'ciGithubRepository',
|
|
GH_BRANCH: '',
|
|
|
|
GITHUB_SHA: 'ciCommitSha',
|
|
GITHUB_REF: 'ciCommitRef',
|
|
|
|
// only for forked repos
|
|
GITHUB_HEAD_REF: 'ciHeadRef',
|
|
GITHUB_BASE_REF: 'ciBaseRef',
|
|
}, { clear: true })
|
|
|
|
expectsName('githubActions')
|
|
expectsCiParams({
|
|
githubAction: 'ciGitHubActionId',
|
|
githubEventName: 'ciEventName',
|
|
githubWorkflow: 'ciGitHubWorkflowName',
|
|
githubRepository: 'ciGithubRepository',
|
|
githubRunId: 'ciGithubRunId',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'ciCommitSha',
|
|
defaultBranch: 'ciBaseRef',
|
|
remoteBranch: 'ciHeadRef',
|
|
branch: 'ciCommitRef',
|
|
})
|
|
|
|
resetEnv = mockedEnv({
|
|
GITHUB_ACTIONS: 'true',
|
|
GITHUB_REF: 'ciCommitRef',
|
|
GH_BRANCH: 'GHCommitBranch',
|
|
}, { clear: true })
|
|
|
|
return expectsCommitParams({
|
|
branch: 'GHCommitBranch',
|
|
})
|
|
})
|
|
|
|
it('gitlab', () => {
|
|
resetEnv = mockedEnv({
|
|
GITLAB_CI: 'true',
|
|
|
|
// Gitlab has job id and build id as synonyms
|
|
CI_BUILD_ID: 'ciJobId',
|
|
CI_JOB_ID: 'ciJobId',
|
|
CI_JOB_URL: 'ciJobUrl',
|
|
CI_JOB_NAME: 'ciJobName',
|
|
|
|
CI_PIPELINE_ID: 'ciPipelineId',
|
|
CI_PIPELINE_URL: 'ciPipelineUrl',
|
|
|
|
GITLAB_HOST: 'gitlabHost',
|
|
CI_PROJECT_ID: 'ciProjectId',
|
|
CI_PROJECT_URL: 'ciProjectUrl',
|
|
CI_REPOSITORY_URL: 'ciRepositoryUrl',
|
|
CI_ENVIRONMENT_URL: 'ciEnvironmentUrl',
|
|
CI_DEFAULT_BRANCH: 'ciDefaultBranch',
|
|
|
|
CI_COMMIT_SHA: 'ciCommitSha',
|
|
CI_COMMIT_REF_NAME: 'ciCommitRefName',
|
|
CI_COMMIT_MESSAGE: 'ciCommitMessage',
|
|
GITLAB_USER_NAME: 'gitlabUserName',
|
|
GITLAB_USER_EMAIL: 'gitlabUserEmail',
|
|
}, { clear: true })
|
|
|
|
expectsName('gitlab')
|
|
expectsCiParams({
|
|
ciJobId: 'ciJobId',
|
|
ciJobUrl: 'ciJobUrl',
|
|
ciJobName: 'ciJobName',
|
|
ciBuildId: 'ciJobId',
|
|
ciPipelineId: 'ciPipelineId',
|
|
ciPipelineUrl: 'ciPipelineUrl',
|
|
gitlabHost: 'gitlabHost',
|
|
ciProjectId: 'ciProjectId',
|
|
ciProjectUrl: 'ciProjectUrl',
|
|
ciRepositoryUrl: 'ciRepositoryUrl',
|
|
ciEnvironmentUrl: 'ciEnvironmentUrl',
|
|
ciDefaultBranch: 'ciDefaultBranch',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'ciCommitSha',
|
|
branch: 'ciCommitRefName',
|
|
message: 'ciCommitMessage',
|
|
authorName: 'gitlabUserName',
|
|
authorEmail: 'gitlabUserEmail',
|
|
remoteOrigin: 'ciRepositoryUrl',
|
|
defaultBranch: 'ciDefaultBranch',
|
|
})
|
|
|
|
resetEnv = mockedEnv({
|
|
CI_SERVER_NAME: 'GitLab CI',
|
|
}, { clear: true })
|
|
|
|
expectsName('gitlab')
|
|
|
|
resetEnv = mockedEnv({
|
|
CI_SERVER_NAME: 'GitLab',
|
|
}, { clear: true })
|
|
|
|
return expectsName('gitlab')
|
|
})
|
|
|
|
it('goCD', () => {
|
|
resetEnv = mockedEnv({
|
|
GO_SERVER_URL: 'https://127.0.0.1:8154/go',
|
|
GO_ENVIRONMENT_NAME: 'Development',
|
|
GO_PIPELINE_NAME: 'main',
|
|
GO_PIPELINE_COUNTER: '2345',
|
|
GO_PIPELINE_LABEL: '1.1.2345',
|
|
GO_STAGE_NAME: 'dev',
|
|
GO_STAGE_COUNTER: '1',
|
|
GO_JOB_NAME: 'linux-firefox',
|
|
GO_TRIGGER_USER: 'changes',
|
|
GO_REVISION: '123',
|
|
GO_TO_REVISION: '123',
|
|
GO_FROM_REVISION: '121',
|
|
GO_MATERIAL_HAS_CHANGED: 'true',
|
|
}, { clear: true })
|
|
|
|
expectsName('goCD')
|
|
expectsCiParams({
|
|
goServerUrl: 'https://127.0.0.1:8154/go',
|
|
goEnvironmentName: 'Development',
|
|
goPipelineName: 'main',
|
|
goPipelineCounter: '2345',
|
|
goPipelineLabel: '1.1.2345',
|
|
goStageName: 'dev',
|
|
goStageCounter: '1',
|
|
goJobName: 'linux-firefox',
|
|
goTriggerUser: 'changes',
|
|
goRevision: '123',
|
|
goToRevision: '123',
|
|
goFromRevision: '121',
|
|
goMaterialHasChanged: 'true',
|
|
})
|
|
|
|
return expectsCommitParams(null)
|
|
})
|
|
|
|
it('google cloud', () => {
|
|
resetEnv = mockedEnv({
|
|
GCP_PROJECT: '123',
|
|
|
|
BUILD_ID: 'buildId',
|
|
|
|
PROJECT_ID: 'projectId',
|
|
|
|
COMMIT_SHA: 'commitSha',
|
|
BRANCH_NAME: 'branchName',
|
|
}, { clear: true })
|
|
|
|
expectsName('googleCloud')
|
|
expectsCiParams({
|
|
buildId: 'buildId',
|
|
projectId: 'projectId',
|
|
commitSha: 'commitSha',
|
|
branchName: 'branchName',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'commitSha',
|
|
branch: 'branchName',
|
|
})
|
|
|
|
resetEnv = mockedEnv({
|
|
GCLOUD_PROJECT: '123',
|
|
}, { clear: true })
|
|
|
|
expectsName('googleCloud')
|
|
|
|
resetEnv = mockedEnv({
|
|
GOOGLE_CLOUD_PROJECT: '123',
|
|
}, { clear: true })
|
|
|
|
return expectsName('googleCloud')
|
|
})
|
|
|
|
it('jenkins', () => {
|
|
resetEnv = mockedEnv({
|
|
JENKINS_URL: 'true',
|
|
|
|
BUILD_ID: 'buildId',
|
|
BUILD_URL: 'buildUrl',
|
|
BUILD_NUMBER: 'buildNumber',
|
|
ghprbPullId: 'gbprbPullId',
|
|
|
|
GIT_COMMIT: 'gitCommit',
|
|
GIT_BRANCH: 'gitBranch',
|
|
}, { clear: true })
|
|
|
|
expectsName('jenkins')
|
|
expectsCiParams({
|
|
buildId: 'buildId',
|
|
buildUrl: 'buildUrl',
|
|
buildNumber: 'buildNumber',
|
|
ghprbPullId: 'gbprbPullId',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'gitCommit',
|
|
branch: 'gitBranch',
|
|
})
|
|
|
|
resetEnv = mockedEnv({
|
|
JENKINS_HOME: '/path/to/jenkins',
|
|
}, { clear: true })
|
|
|
|
expectsName('jenkins')
|
|
|
|
resetEnv = mockedEnv({
|
|
JENKINS_VERSION: '1.2.3',
|
|
}, { clear: true })
|
|
|
|
expectsName('jenkins')
|
|
|
|
resetEnv = mockedEnv({
|
|
HUDSON_HOME: '/path/to/jenkins',
|
|
}, { clear: true })
|
|
|
|
expectsName('jenkins')
|
|
|
|
resetEnv = mockedEnv({
|
|
HUDSON_URL: 'true',
|
|
}, { clear: true })
|
|
|
|
return expectsName('jenkins')
|
|
})
|
|
|
|
it('semaphore', () => {
|
|
resetEnv = mockedEnv({
|
|
SEMAPHORE: 'true',
|
|
|
|
SEMAPHORE_BRANCH_ID: 'semaphoreBranchId',
|
|
SEMAPHORE_BUILD_NUMBER: 'semaphoreBuildNumber',
|
|
SEMAPHORE_CURRENT_JOB: 'semaphoreCurrentJob',
|
|
SEMAPHORE_CURRENT_THREAD: 'semaphoreCurrentThread',
|
|
SEMAPHORE_EXECUTABLE_UUID: 'semaphoreExecutableUuid',
|
|
SEMAPHORE_GIT_BRANCH: 'show-semaphore-v2-266',
|
|
SEMAPHORE_GIT_DIR: 'cypress-example-kitchensink',
|
|
SEMAPHORE_GIT_REF: 'refs/heads/show-semaphore-v2-266',
|
|
SEMAPHORE_GIT_REF_TYPE: 'branch',
|
|
SEMAPHORE_GIT_REPO_SLUG: 'cypress-io/cypress-example-kitchensink',
|
|
SEMAPHORE_GIT_SHA: '83ce1df0f8be2767655bb805d20126ee441b71bf',
|
|
SEMAPHORE_GIT_URL: 'git@github.com:cypress-io/cypress-example-kitchensink.git',
|
|
SEMAPHORE_JOB_ID: '5fb8dd98-3242-4a4e-a8ab-c4eca9db486c',
|
|
SEMAPHORE_JOB_NAME: 'Cypress E2E 2',
|
|
SEMAPHORE_JOB_COUNT: 'semaphoreJobCount',
|
|
SEMAPHORE_JOB_UUID: 'semaphoreJobUuid',
|
|
SEMAPHORE_PIPELINE_ID: 'a9219129-951e-4e2c-9354-45534b63fa8b',
|
|
SEMAPHORE_PLATFORM: 'semaphorePlatform',
|
|
SEMAPHORE_PROJECT_DIR: 'semaphoreProjectDir',
|
|
SEMAPHORE_PROJECT_HASH_ID: 'semaphoreProjectHashId',
|
|
SEMAPHORE_PROJECT_ID: 'b717c4cc-fa0e-46f8-8bbf-589ab49a1777',
|
|
SEMAPHORE_PROJECT_NAME: 'cypress-example-kitchensink',
|
|
SEMAPHORE_PROJECT_UUID: 'semaphoreProjectUuid',
|
|
SEMAPHORE_REPO_SLUG: 'semaphoreRepoSlug',
|
|
SEMAPHORE_TRIGGER_SOURCE: 'semaphoreTriggerSource',
|
|
SEMAPHORE_WORKFLOW_ID: '67aecea7-e4e7-405e-a77c-165e1b37a128',
|
|
PULL_REQUEST_NUMBER: 'pullRequestNumber',
|
|
}, { clear: true })
|
|
|
|
expectsName('semaphore')
|
|
expectsCiParams({
|
|
pullRequestNumber: 'pullRequestNumber',
|
|
semaphoreBranchId: 'semaphoreBranchId',
|
|
semaphoreBuildNumber: 'semaphoreBuildNumber',
|
|
semaphoreCurrentJob: 'semaphoreCurrentJob',
|
|
semaphoreCurrentThread: 'semaphoreCurrentThread',
|
|
semaphoreExecutableUuid: 'semaphoreExecutableUuid',
|
|
semaphoreGitBranch: 'show-semaphore-v2-266',
|
|
semaphoreGitDir: 'cypress-example-kitchensink',
|
|
semaphoreGitRef: 'refs/heads/show-semaphore-v2-266',
|
|
semaphoreGitRefType: 'branch',
|
|
semaphoreGitRepoSlug: 'cypress-io/cypress-example-kitchensink',
|
|
semaphoreGitSha: '83ce1df0f8be2767655bb805d20126ee441b71bf',
|
|
semaphoreGitUrl: 'git@github.com:cypress-io/cypress-example-kitchensink.git',
|
|
semaphoreJobId: '5fb8dd98-3242-4a4e-a8ab-c4eca9db486c',
|
|
semaphoreJobName: 'Cypress E2E 2',
|
|
semaphoreJobCount: 'semaphoreJobCount',
|
|
semaphoreJobUuid: 'semaphoreJobUuid',
|
|
semaphorePipelineId: 'a9219129-951e-4e2c-9354-45534b63fa8b',
|
|
semaphorePlatform: 'semaphorePlatform',
|
|
semaphoreProjectDir: 'semaphoreProjectDir',
|
|
semaphoreProjectHashId: 'semaphoreProjectHashId',
|
|
semaphoreProjectId: 'b717c4cc-fa0e-46f8-8bbf-589ab49a1777',
|
|
semaphoreProjectName: 'cypress-example-kitchensink',
|
|
semaphoreProjectUuid: 'semaphoreProjectUuid',
|
|
semaphoreRepoSlug: 'semaphoreRepoSlug',
|
|
semaphoreTriggerSource: 'semaphoreTriggerSource',
|
|
semaphoreWorkflowId: '67aecea7-e4e7-405e-a77c-165e1b37a128',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: '83ce1df0f8be2767655bb805d20126ee441b71bf',
|
|
branch: 'show-semaphore-v2-266',
|
|
remoteOrigin: 'cypress-io/cypress-example-kitchensink',
|
|
})
|
|
})
|
|
|
|
it('shippable', () => {
|
|
resetEnv = mockedEnv({
|
|
SHIPPABLE: 'true',
|
|
|
|
// build environment variables
|
|
SHIPPABLE_BUILD_ID: 'buildId',
|
|
SHIPPABLE_BUILD_NUMBER: 'buildNumber',
|
|
SHIPPABLE_COMMIT_RANGE: 'commitRange',
|
|
SHIPPABLE_CONTAINER_NAME: 'containerName',
|
|
SHIPPABLE_JOB_ID: 'jobId',
|
|
SHIPPABLE_JOB_NUMBER: 'jobNumber',
|
|
SHIPPABLE_REPO_SLUG: 'repoSlug',
|
|
|
|
// additional information
|
|
IS_FORK: 'isFork',
|
|
IS_GIT_TAG: 'isGitTag',
|
|
IS_PRERELEASE: 'isPrerelease',
|
|
IS_RELEASE: 'isRelease',
|
|
REPOSITORY_URL: 'repositoryUrl',
|
|
REPO_FULL_NAME: 'repoFullName',
|
|
REPO_NAME: 'repoName',
|
|
BUILD_URL: 'buildUrl',
|
|
|
|
// pull request variables
|
|
BASE_BRANCH: 'baseBranch',
|
|
HEAD_BRANCH: 'headBranch',
|
|
IS_PULL_REQUEST: 'isPullRequest',
|
|
PULL_REQUEST: 'pullRequest',
|
|
PULL_REQUEST_BASE_BRANCH: 'pullRequestBaseBranch',
|
|
PULL_REQUEST_REPO_FULL_NAME: 'pullRequestRepoFullName',
|
|
|
|
// git information
|
|
COMMIT: 'commit',
|
|
BRANCH: 'branch',
|
|
COMMITTER: 'committer',
|
|
COMMIT_MESSAGE: 'commitMessage',
|
|
}, { clear: true })
|
|
|
|
expectsName('shippable')
|
|
expectsCiParams({
|
|
// build information
|
|
shippableBuildId: 'buildId',
|
|
shippableBuildNumber: 'buildNumber',
|
|
shippableCommitRange: 'commitRange',
|
|
shippableContainerName: 'containerName',
|
|
shippableJobId: 'jobId',
|
|
shippableJobNumber: 'jobNumber',
|
|
shippableRepoSlug: 'repoSlug',
|
|
// additional information
|
|
isFork: 'isFork',
|
|
isGitTag: 'isGitTag',
|
|
isPrerelease: 'isPrerelease',
|
|
isRelease: 'isRelease',
|
|
repositoryUrl: 'repositoryUrl',
|
|
repoFullName: 'repoFullName',
|
|
repoName: 'repoName',
|
|
buildUrl: 'buildUrl',
|
|
// pull request information
|
|
baseBranch: 'baseBranch',
|
|
headBranch: 'headBranch',
|
|
isPullRequest: 'isPullRequest',
|
|
pullRequest: 'pullRequest',
|
|
pullRequestBaseBranch: 'pullRequestBaseBranch',
|
|
pullRequestRepoFullName: 'pullRequestRepoFullName',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'commit',
|
|
branch: 'branch',
|
|
message: 'commitMessage',
|
|
authorName: 'committer',
|
|
})
|
|
})
|
|
|
|
it('teamcity', () => {
|
|
resetEnv = mockedEnv({
|
|
TEAMCITY_VERSION: 'true',
|
|
}, { clear: true })
|
|
|
|
expectsName('teamcity')
|
|
expectsCiParams(null)
|
|
|
|
return expectsCommitParams(null)
|
|
})
|
|
|
|
it('netlify', () => {
|
|
resetEnv = mockedEnv({
|
|
NETLIFY: 'true',
|
|
|
|
BUILD_ID: 'buildId',
|
|
CONTEXT: 'deployContent',
|
|
// deploy env variables
|
|
URL: 'url',
|
|
DEPLOY_URL: 'individualDeployUrl',
|
|
DEPLOY_PRIME_URL: 'primeDeployUrl',
|
|
DEPLOY_ID: 'deployId',
|
|
|
|
COMMIT_REF: 'commit',
|
|
BRANCH: 'branch',
|
|
HEAD: 'head',
|
|
CACHED_COMMIT_REF: 'previousCommit',
|
|
PULL_REQUEST: 'pullRequestTrueOrFalse',
|
|
REVIEW_ID: 'pullRequestReviewId',
|
|
REPOSITORY_URL: 'repositoryUrl',
|
|
}, { clear: true })
|
|
|
|
expectsName('netlify')
|
|
expectsCiParams({
|
|
buildId: 'buildId',
|
|
context: 'deployContent',
|
|
url: 'url',
|
|
deployUrl: 'individualDeployUrl',
|
|
deployPrimeUrl: 'primeDeployUrl',
|
|
deployId: 'deployId',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'commit',
|
|
branch: 'branch',
|
|
remoteOrigin: 'repositoryUrl',
|
|
})
|
|
})
|
|
|
|
it('azure', () => {
|
|
resetEnv = mockedEnv({
|
|
// these two variables tell us it is Azure CI
|
|
TF_BUILD: 'true',
|
|
AZURE_HTTP_USER_AGENT: 'VSTS_5e0090d5-c5b9-4fab-8fd8-ce288e9fb666_build_2_0',
|
|
|
|
BUILD_BUILDID: 'buildId',
|
|
BUILD_BUILDNUMBER: 'buildNumber',
|
|
BUILD_CONTAINERID: 'containerId',
|
|
BUILD_REPOSITORY_URI: 'buildRepositoryUri',
|
|
|
|
BUILD_SOURCEVERSION: 'commit',
|
|
BUILD_SOURCEBRANCHNAME: 'branch',
|
|
BUILD_SOURCEVERSIONMESSAGE: 'message',
|
|
BUILD_SOURCEVERSIONAUTHOR: 'name',
|
|
BUILD_REQUESTEDFOREMAIL: 'email',
|
|
}, { clear: true })
|
|
|
|
expectsName('azure')
|
|
expectsCiParams({
|
|
buildBuildid: 'buildId',
|
|
buildBuildnumber: 'buildNumber',
|
|
buildContainerid: 'containerId',
|
|
buildRepositoryUri: 'buildRepositoryUri',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'commit',
|
|
branch: 'branch',
|
|
message: 'message',
|
|
authorName: 'name',
|
|
authorEmail: 'email',
|
|
})
|
|
})
|
|
|
|
it('teamfoundation', () => {
|
|
resetEnv = mockedEnv({
|
|
TF_BUILD: 'true',
|
|
TF_BUILD_BUILDNUMBER: 'CIBuild_20130613.6',
|
|
|
|
BUILD_BUILDID: 'buildId',
|
|
BUILD_BUILDNUMBER: 'buildNumber',
|
|
BUILD_CONTAINERID: 'containerId',
|
|
|
|
BUILD_SOURCEVERSION: 'commit',
|
|
BUILD_SOURCEBRANCHNAME: 'branch',
|
|
BUILD_SOURCEVERSIONMESSAGE: 'message',
|
|
BUILD_SOURCEVERSIONAUTHOR: 'name',
|
|
}, { clear: true })
|
|
|
|
expectsName('teamfoundation')
|
|
expectsCiParams({
|
|
buildBuildid: 'buildId',
|
|
buildBuildnumber: 'buildNumber',
|
|
buildContainerid: 'containerId',
|
|
})
|
|
|
|
return expectsCommitParams({
|
|
sha: 'commit',
|
|
branch: 'branch',
|
|
message: 'message',
|
|
authorName: 'name',
|
|
})
|
|
})
|
|
|
|
it('travis', () => {
|
|
// normal non-PR build
|
|
resetEnv = mockedEnv({
|
|
TRAVIS: 'true',
|
|
|
|
TRAVIS_JOB_ID: 'travisJobId',
|
|
TRAVIS_BUILD_ID: 'travisBuildId',
|
|
TRAVIS_BUILD_WEB_URL: 'https://travis-ci.org/github/project/123',
|
|
TRAVIS_REPO_SLUG: 'travisRepoSlug',
|
|
TRAVIS_JOB_NUMBER: 'travisJobNumber',
|
|
TRAVIS_EVENT_TYPE: 'travisEventType',
|
|
TRAVIS_COMMIT_RANGE: 'travisCommitRange',
|
|
TRAVIS_BUILD_NUMBER: 'travisBuildNumber',
|
|
TRAVIS_PULL_REQUEST: '',
|
|
TRAVIS_PULL_REQUEST_BRANCH: '',
|
|
TRAVIS_PULL_REQUEST_SHA: '',
|
|
|
|
TRAVIS_COMMIT: 'travisCommit',
|
|
TRAVIS_BRANCH: 'travisBranch',
|
|
TRAVIS_COMMIT_MESSAGE: 'travisCommitMessage',
|
|
}, { clear: true })
|
|
|
|
expectsName('travis')
|
|
expectsCiParams({
|
|
travisJobId: 'travisJobId',
|
|
travisBuildId: 'travisBuildId',
|
|
travisBuildWebUrl: 'https://travis-ci.org/github/project/123',
|
|
travisRepoSlug: 'travisRepoSlug',
|
|
travisJobNumber: 'travisJobNumber',
|
|
travisEventType: 'travisEventType',
|
|
travisCommitRange: 'travisCommitRange',
|
|
travisBuildNumber: 'travisBuildNumber',
|
|
travisPullRequest: '',
|
|
travisPullRequestBranch: '',
|
|
travisPullRequestSha: '',
|
|
})
|
|
|
|
expectsCommitParams({
|
|
sha: 'travisCommit',
|
|
branch: 'travisBranch',
|
|
message: 'travisCommitMessage',
|
|
})
|
|
|
|
resetEnv = mockedEnv({
|
|
TRAVIS: 'true',
|
|
TRAVIS_BRANCH: 'travisBranch',
|
|
}, { clear: true })
|
|
|
|
expectsCommitParams({
|
|
branch: 'travisBranch',
|
|
})
|
|
|
|
// Pull Request build
|
|
resetEnv = mockedEnv({
|
|
TRAVIS: 'true',
|
|
TRAVIS_PULL_REQUEST: 'travisPullRequest',
|
|
TRAVIS_PULL_REQUEST_BRANCH: 'travisPullRequestBranch',
|
|
TRAVIS_PULL_REQUEST_SHA: 'travisPullRequestSha',
|
|
|
|
TRAVIS_COMMIT: 'travisCommit',
|
|
TRAVIS_BRANCH: 'travisBranch',
|
|
TRAVIS_COMMIT_MESSAGE: 'travisCommitMessage',
|
|
}, { clear: true })
|
|
|
|
return expectsCommitParams({
|
|
sha: 'travisPullRequestSha',
|
|
branch: 'travisPullRequestBranch',
|
|
message: 'travisCommitMessage',
|
|
})
|
|
})
|
|
|
|
it('wercker', () => {
|
|
resetEnv = mockedEnv({
|
|
WERCKER: 'true',
|
|
}, { clear: true })
|
|
|
|
expectsName('wercker')
|
|
expectsCiParams(null)
|
|
expectsCommitParams(null)
|
|
|
|
resetEnv = mockedEnv({
|
|
WERCKER_MAIN_PIPELINE_STARTED: 'true',
|
|
}, { clear: true })
|
|
|
|
return expectsName('wercker')
|
|
})
|
|
})
|