Installing dependencies.
This commit is contained in:
+49
@@ -0,0 +1,49 @@
|
||||
// https://docs.github.com/en/actions/learn-github-actions/environment-variables#default-environment-variables
|
||||
const {parseBranch} = require('../lib/utils.js');
|
||||
|
||||
const getPrEvent = ({env}) => {
|
||||
try {
|
||||
const event = env.GITHUB_EVENT_PATH ? require(env.GITHUB_EVENT_PATH) : undefined;
|
||||
|
||||
if (event && event.pull_request) {
|
||||
return {
|
||||
branch: event.pull_request.base ? parseBranch(event.pull_request.base.ref) : undefined,
|
||||
pr: event.pull_request.number,
|
||||
};
|
||||
}
|
||||
} catch {
|
||||
// Noop
|
||||
}
|
||||
|
||||
return {pr: undefined, branch: undefined};
|
||||
};
|
||||
|
||||
const getPrNumber = (env) => {
|
||||
const event = env.GITHUB_EVENT_PATH ? require(env.GITHUB_EVENT_PATH) : undefined;
|
||||
return event && event.pull_request ? event.pull_request.number : undefined;
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
detect({env}) {
|
||||
return Boolean(env.GITHUB_ACTIONS);
|
||||
},
|
||||
configuration({env, cwd}) {
|
||||
const isPr = env.GITHUB_EVENT_NAME === 'pull_request' || env.GITHUB_EVENT_NAME === 'pull_request_target';
|
||||
const branch = parseBranch(
|
||||
env.GITHUB_EVENT_NAME === 'pull_request_target' ? `refs/pull/${getPrNumber(env)}/merge` : env.GITHUB_REF
|
||||
);
|
||||
|
||||
return {
|
||||
name: 'GitHub Actions',
|
||||
service: 'github',
|
||||
commit: env.GITHUB_SHA,
|
||||
build: env.GITHUB_RUN_ID,
|
||||
isPr,
|
||||
branch,
|
||||
prBranch: isPr ? branch : undefined,
|
||||
slug: env.GITHUB_REPOSITORY,
|
||||
root: env.GITHUB_WORKSPACE,
|
||||
...(isPr ? getPrEvent({env, cwd}) : undefined),
|
||||
};
|
||||
},
|
||||
};
|
||||
Reference in New Issue
Block a user