1 | module.exports = {
|
2 | detect: function() {
|
3 | return !!process.env.CIRCLECI
|
4 | },
|
5 |
|
6 | configuration: function() {
|
7 | console.log(' Circle CI Detected')
|
8 | return {
|
9 | service: 'circleci',
|
10 | build: process.env.CIRCLE_BUILD_NUM + '.' + process.env.CIRCLE_NODE_INDEX,
|
11 | job: process.env.CIRCLE_BUILD_NUM + '.' + process.env.CIRCLE_NODE_INDEX,
|
12 | commit: process.env.CIRCLE_SHA1,
|
13 | branch: process.env.CIRCLE_BRANCH,
|
14 | pr: process.env.CIRCLE_PR_NUMBER,
|
15 | slug: detectRepoSlug(),
|
16 | }
|
17 | function detectRepoSlug() {
|
18 | if (process.env.CIRCLE_PROJECT_REPONAME) {
|
19 |
|
20 |
|
21 |
|
22 |
|
23 | return (
|
24 | process.env.CIRCLE_PROJECT_USERNAME +
|
25 | '/' +
|
26 | process.env.CIRCLE_PROJECT_REPONAME
|
27 | )
|
28 | }
|
29 | if (process.env.CIRCLE_REPOSITORY_URL) {
|
30 |
|
31 |
|
32 | return process.env.CIRCLE_REPOSITORY_URL.replace(/^.*:/, '').replace(
|
33 | /\.git$/,
|
34 | ''
|
35 | )
|
36 | }
|
37 | throw new Error('Cannot detect repository slug.')
|
38 | }
|
39 | },
|
40 | }
|