@@ -13,6 +13,7 @@ Object.defineProperty(exports, '_vendors', {
13
13
14
14
exports.name = null
15
15
exports.isPR = null
16
+
exports.id = null
16
17
17
18
vendors.forEach(function (vendor) {
18
19
const envs = Array.isArray(vendor.env) ? vendor.env : [vendor.env]
@@ -27,45 +28,23 @@ vendors.forEach(function (vendor) {
27
28
}
28
29
29
30
exports.name = vendor.name
30
-
31
-
switch (typeof vendor.pr) {
32
-
case 'string':
33
-
// "pr": "CIRRUS_PR"
34
-
exports.isPR = !!env[vendor.pr]
35
-
break
36
-
case 'object':
37
-
if ('env' in vendor.pr) {
38
-
// "pr": { "env": "BUILDKITE_PULL_REQUEST", "ne": "false" }
39
-
exports.isPR = vendor.pr.env in env && env[vendor.pr.env] !== vendor.pr.ne
40
-
} else if ('any' in vendor.pr) {
41
-
// "pr": { "any": ["ghprbPullId", "CHANGE_ID"] }
42
-
exports.isPR = vendor.pr.any.some(function (key) {
43
-
return !!env[key]
44
-
})
45
-
} else {
46
-
// "pr": { "DRONE_BUILD_EVENT": "pull_request" }
47
-
exports.isPR = checkEnv(vendor.pr)
48
-
}
49
-
break
50
-
default:
51
-
// PR detection not supported for this vendor
52
-
exports.isPR = null
53
-
}
31
+
exports.isPR = checkPR(vendor)
32
+
exports.id = vendor.constant
54
33
})
55
34
56
35
exports.isCI = !!(
57
36
env.CI !== 'false' && // Bypass all checks if CI env is explicitly set to 'false'
58
37
(env.BUILD_ID || // Jenkins, Cloudbees
59
-
env.BUILD_NUMBER || // Jenkins, TeamCity
60
-
env.CI || // Travis CI, CircleCI, Cirrus CI, Gitlab CI, Appveyor, CodeShip, dsari
61
-
env.CI_APP_ID || // Appflow
62
-
env.CI_BUILD_ID || // Appflow
63
-
env.CI_BUILD_NUMBER || // Appflow
64
-
env.CI_NAME || // Codeship and others
65
-
env.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI
66
-
env.RUN_ID || // TaskCluster, dsari
67
-
exports.name ||
68
-
false)
38
+
env.BUILD_NUMBER || // Jenkins, TeamCity
39
+
env.CI || // Travis CI, CircleCI, Cirrus CI, Gitlab CI, Appveyor, CodeShip, dsari
40
+
env.CI_APP_ID || // Appflow
41
+
env.CI_BUILD_ID || // Appflow
42
+
env.CI_BUILD_NUMBER || // Appflow
43
+
env.CI_NAME || // Codeship and others
44
+
env.CONTINUOUS_INTEGRATION || // Travis CI, Cirrus CI
45
+
env.RUN_ID || // TaskCluster, dsari
46
+
exports.name ||
47
+
false)
69
48
)
70
49
71
50
function checkEnv (obj) {
@@ -79,12 +58,45 @@ function checkEnv (obj) {
79
58
return env[obj.env] && env[obj.env].includes(obj.includes)
80
59
// }
81
60
}
61
+
82
62
if ('any' in obj) {
83
63
return obj.any.some(function (k) {
84
64
return !!env[k]
85
65
})
86
66
}
67
+
87
68
return Object.keys(obj).every(function (k) {
88
69
return env[k] === obj[k]
89
70
})
90
71
}
72
+
73
+
function checkPR (vendor) {
74
+
switch (typeof vendor.pr) {
75
+
case 'string':
76
+
// "pr": "CIRRUS_PR"
77
+
return !!env[vendor.pr]
78
+
case 'object':
79
+
if ('env' in vendor.pr) {
80
+
if ('any' in vendor.pr) {
81
+
// "pr": { "env": "CODEBUILD_WEBHOOK_EVENT", "any": ["PULL_REQUEST_CREATED", "PULL_REQUEST_UPDATED"] }
82
+
return vendor.pr.any.some(function (key) {
83
+
return env[vendor.pr.env] === key
84
+
})
85
+
} else {
86
+
// "pr": { "env": "BUILDKITE_PULL_REQUEST", "ne": "false" }
87
+
return vendor.pr.env in env && env[vendor.pr.env] !== vendor.pr.ne
88
+
}
89
+
} else if ('any' in vendor.pr) {
90
+
// "pr": { "any": ["ghprbPullId", "CHANGE_ID"] }
91
+
return vendor.pr.any.some(function (key) {
92
+
return !!env[key]
93
+
})
94
+
} else {
95
+
// "pr": { "DRONE_BUILD_EVENT": "pull_request" }
96
+
return checkEnv(vendor.pr)
97
+
}
98
+
default:
99
+
// PR detection not supported for this vendor
100
+
return null
101
+
}
102
+
}
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4