mirror of
https://github.com/actions/labeler.git
synced 2025-12-11 12:07:32 +00:00
Remove the branch option and replace with just head-branch and base-branch
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
test-branch:
|
||||
- branch: "^test/"
|
||||
- head-branch: "^test/"
|
||||
|
||||
feature-branch:
|
||||
- branch: "/feature/"
|
||||
- head-branch: "/feature/"
|
||||
|
||||
bug-branch:
|
||||
- branch: "^bug/|fix/"
|
||||
- head-branch: "^bug/|fix/"
|
||||
|
||||
array-branch:
|
||||
- branch: ["^array/"]
|
||||
- head-branch: ["^array/"]
|
||||
|
||||
@@ -3,6 +3,38 @@ import * as github from '@actions/github';
|
||||
|
||||
type BranchBase = 'base' | 'head';
|
||||
|
||||
export function toMatchConfigWithBranches(config: any) {
|
||||
if (!config['head-branch'] || config['base-branch']) {
|
||||
return config;
|
||||
}
|
||||
|
||||
const branchConfig = {
|
||||
headBranch: config['head-branch'],
|
||||
baseBranch: config['base-branch']
|
||||
};
|
||||
|
||||
if (branchConfig.headBranch) {
|
||||
const patterns = branchConfig.headBranch;
|
||||
if (typeof patterns === 'string') {
|
||||
branchConfig.headBranch = [patterns];
|
||||
}
|
||||
}
|
||||
|
||||
if (branchConfig.baseBranch) {
|
||||
const patterns = branchConfig.baseBranch;
|
||||
if (typeof patterns === 'string') {
|
||||
branchConfig.baseBranch = [patterns];
|
||||
}
|
||||
}
|
||||
|
||||
return {
|
||||
...config,
|
||||
['head-branch']: undefined,
|
||||
['base-branch']: undefined,
|
||||
...branchConfig
|
||||
};
|
||||
}
|
||||
|
||||
export function getBranchName(branchBase?: BranchBase): string | undefined {
|
||||
const pullRequest = github.context.payload.pull_request;
|
||||
if (!pullRequest) {
|
||||
|
||||
@@ -3,12 +3,11 @@ import * as github from '@actions/github';
|
||||
import * as yaml from 'js-yaml';
|
||||
import {Minimatch, IMinimatch} from 'minimatch';
|
||||
|
||||
import {checkBranch} from './branch';
|
||||
import {checkBranch, toMatchConfigWithBranches} from './branch';
|
||||
|
||||
interface MatchConfig {
|
||||
all?: string[];
|
||||
any?: string[];
|
||||
branch?: string[];
|
||||
headBranch?: string[];
|
||||
baseBranch?: string[];
|
||||
}
|
||||
@@ -151,14 +150,9 @@ function toMatchConfig(config: StringOrMatchConfig): MatchConfig {
|
||||
return {
|
||||
any: [config]
|
||||
};
|
||||
} else if (typeof config.branch === 'string') {
|
||||
return {
|
||||
...config,
|
||||
branch: [config.branch]
|
||||
};
|
||||
}
|
||||
|
||||
return config;
|
||||
return toMatchConfigWithBranches(config);
|
||||
}
|
||||
|
||||
function printPattern(matcher: IMinimatch): string {
|
||||
@@ -236,12 +230,6 @@ function checkMatch(changedFiles: string[], matchConfig: MatchConfig): boolean {
|
||||
}
|
||||
}
|
||||
|
||||
if (matchConfig.branch !== undefined) {
|
||||
if (!checkBranch(matchConfig.branch)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (matchConfig.headBranch !== undefined) {
|
||||
if (!checkBranch(matchConfig.headBranch, 'head')) {
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user