mirror of
https://code.forgejo.org/actions/git-backporting.git
synced 2025-02-22 10:35:43 -05:00
refactor: changed method name and removed useless data
This commit is contained in:
parent
99fbcc39cc
commit
a30b6d6290
8 changed files with 19 additions and 34 deletions
10
dist/cli/index.js
vendored
10
dist/cli/index.js
vendored
|
@ -181,8 +181,8 @@ class PullRequestConfigsParser extends configs_parser_1.default {
|
|||
targetRepo: originalPullRequest.targetRepo,
|
||||
sourceRepo: originalPullRequest.targetRepo,
|
||||
branchName: args.bpBranchName,
|
||||
nCommits: 0,
|
||||
commits: [] // TODO needed?
|
||||
// nCommits: 0, // not needed, but required by the
|
||||
// commits: [] // not needed
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -342,8 +342,7 @@ class GitServiceFactory {
|
|||
* @param type git management service type
|
||||
* @param auth authentication, like github token
|
||||
*/
|
||||
// TODO rename to getOrCreate
|
||||
static init(type, auth) {
|
||||
static getOrCreate(type, auth) {
|
||||
if (GitServiceFactory.instance) {
|
||||
GitServiceFactory.logger.warn("Git service already initialized!");
|
||||
return;
|
||||
|
@ -664,7 +663,6 @@ class Runner {
|
|||
* Entry point invoked by the command line or gha
|
||||
*/
|
||||
async run() {
|
||||
this.logger.info("Starting process.");
|
||||
try {
|
||||
await this.execute();
|
||||
this.logger.info("Process succeeded!");
|
||||
|
@ -686,7 +684,7 @@ class Runner {
|
|||
this.logger.warn("Dry run enabled!");
|
||||
}
|
||||
// 2. init git service
|
||||
git_service_factory_1.default.init(this.inferRemoteGitService(args.pullRequest), args.auth);
|
||||
git_service_factory_1.default.getOrCreate(this.inferRemoteGitService(args.pullRequest), args.auth);
|
||||
const gitApi = git_service_factory_1.default.getService();
|
||||
// 3. parse configs
|
||||
const configs = await new pr_configs_parser_1.default().parseAndValidate(args);
|
||||
|
|
10
dist/gha/index.js
vendored
10
dist/gha/index.js
vendored
|
@ -175,8 +175,8 @@ class PullRequestConfigsParser extends configs_parser_1.default {
|
|||
targetRepo: originalPullRequest.targetRepo,
|
||||
sourceRepo: originalPullRequest.targetRepo,
|
||||
branchName: args.bpBranchName,
|
||||
nCommits: 0,
|
||||
commits: [] // TODO needed?
|
||||
// nCommits: 0, // not needed, but required by the
|
||||
// commits: [] // not needed
|
||||
};
|
||||
}
|
||||
}
|
||||
|
@ -336,8 +336,7 @@ class GitServiceFactory {
|
|||
* @param type git management service type
|
||||
* @param auth authentication, like github token
|
||||
*/
|
||||
// TODO rename to getOrCreate
|
||||
static init(type, auth) {
|
||||
static getOrCreate(type, auth) {
|
||||
if (GitServiceFactory.instance) {
|
||||
GitServiceFactory.logger.warn("Git service already initialized!");
|
||||
return;
|
||||
|
@ -658,7 +657,6 @@ class Runner {
|
|||
* Entry point invoked by the command line or gha
|
||||
*/
|
||||
async run() {
|
||||
this.logger.info("Starting process.");
|
||||
try {
|
||||
await this.execute();
|
||||
this.logger.info("Process succeeded!");
|
||||
|
@ -680,7 +678,7 @@ class Runner {
|
|||
this.logger.warn("Dry run enabled!");
|
||||
}
|
||||
// 2. init git service
|
||||
git_service_factory_1.default.init(this.inferRemoteGitService(args.pullRequest), args.auth);
|
||||
git_service_factory_1.default.getOrCreate(this.inferRemoteGitService(args.pullRequest), args.auth);
|
||||
const gitApi = git_service_factory_1.default.getService();
|
||||
// 3. parse configs
|
||||
const configs = await new pr_configs_parser_1.default().parseAndValidate(args);
|
||||
|
|
|
@ -65,8 +65,8 @@ export default class PullRequestConfigsParser extends ConfigsParser {
|
|||
targetRepo: originalPullRequest.targetRepo,
|
||||
sourceRepo: originalPullRequest.targetRepo,
|
||||
branchName: args.bpBranchName,
|
||||
nCommits: 0, // TODO: needed?
|
||||
commits: [] // TODO needed?
|
||||
// nCommits: 0, // not needed, but required by the
|
||||
// commits: [] // not needed
|
||||
};
|
||||
}
|
||||
}
|
|
@ -25,8 +25,7 @@ export default class GitServiceFactory {
|
|||
* @param type git management service type
|
||||
* @param auth authentication, like github token
|
||||
*/
|
||||
// TODO rename to getOrCreate
|
||||
public static init(type: GitServiceType, auth: string): void {
|
||||
public static getOrCreate(type: GitServiceType, auth: string): void {
|
||||
|
||||
if (GitServiceFactory.instance) {
|
||||
GitServiceFactory.logger.warn("Git service already initialized!");
|
||||
|
|
|
@ -12,8 +12,8 @@ export interface GitPullRequest {
|
|||
assignees: string[],
|
||||
targetRepo: GitRepository,
|
||||
sourceRepo: GitRepository,
|
||||
nCommits: number, // number of commits in the pr
|
||||
commits: string[], // merge commit or last one
|
||||
nCommits?: number, // number of commits in the pr
|
||||
commits?: string[], // merge commit or last one
|
||||
branchName?: string,
|
||||
}
|
||||
|
||||
|
|
|
@ -42,8 +42,6 @@ export default class Runner {
|
|||
* Entry point invoked by the command line or gha
|
||||
*/
|
||||
async run(): Promise<void> {
|
||||
this.logger.info("Starting process.");
|
||||
|
||||
try {
|
||||
await this.execute();
|
||||
|
||||
|
@ -71,7 +69,7 @@ export default class Runner {
|
|||
}
|
||||
|
||||
// 2. init git service
|
||||
GitServiceFactory.init(this.inferRemoteGitService(args.pullRequest), args.auth);
|
||||
GitServiceFactory.getOrCreate(this.inferRemoteGitService(args.pullRequest), args.auth);
|
||||
const gitApi: GitService = GitServiceFactory.getService();
|
||||
|
||||
// 3. parse configs
|
||||
|
@ -86,7 +84,7 @@ export default class Runner {
|
|||
await git.clone(configs.originalPullRequest.targetRepo.cloneUrl, configs.folder, configs.targetBranch);
|
||||
|
||||
// 5. create new branch from target one and checkout
|
||||
const backportBranch = backportPR.branchName ?? `bp-${configs.targetBranch}-${originalPR.commits.join("-")}`;
|
||||
const backportBranch = backportPR.branchName ?? `bp-${configs.targetBranch}-${originalPR.commits!.join("-")}`;
|
||||
await git.createLocalBranch(configs.folder, backportBranch);
|
||||
|
||||
// 6. fetch pull request remote if source owner != target owner or pull request still open
|
||||
|
@ -96,7 +94,7 @@ export default class Runner {
|
|||
}
|
||||
|
||||
// 7. apply all changes to the new branch
|
||||
for (const sha of originalPR.commits) {
|
||||
for (const sha of originalPR.commits!) {
|
||||
await git.cherryPick(configs.folder, sha);
|
||||
}
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ describe("pull request config parser", () => {
|
|||
let parser: PullRequestConfigsParser;
|
||||
|
||||
beforeAll(() => {
|
||||
GitServiceFactory.init(GitServiceType.GITHUB, "whatever");
|
||||
GitServiceFactory.getOrCreate(GitServiceType.GITHUB, "whatever");
|
||||
});
|
||||
|
||||
beforeEach(() => {
|
||||
|
@ -95,8 +95,6 @@ describe("pull request config parser", () => {
|
|||
cloneUrl: "https://github.com/owner/reponame.git"
|
||||
},
|
||||
bpBranchName: undefined,
|
||||
nCommits: 0,
|
||||
commits: []
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -289,8 +287,6 @@ describe("pull request config parser", () => {
|
|||
cloneUrl: "https://github.com/owner/reponame.git"
|
||||
},
|
||||
bpBranchName: undefined,
|
||||
nCommits: 0,
|
||||
commits: []
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -365,8 +361,6 @@ describe("pull request config parser", () => {
|
|||
cloneUrl: "https://github.com/owner/reponame.git"
|
||||
},
|
||||
bpBranchName: undefined,
|
||||
nCommits: 0,
|
||||
commits: []
|
||||
});
|
||||
});
|
||||
|
||||
|
@ -441,8 +435,6 @@ describe("pull request config parser", () => {
|
|||
cloneUrl: "https://github.com/owner/reponame.git"
|
||||
},
|
||||
bpBranchName: undefined,
|
||||
nCommits: 0,
|
||||
commits: []
|
||||
});
|
||||
});
|
||||
});
|
|
@ -10,7 +10,7 @@ describe("github service", () => {
|
|||
|
||||
beforeAll(() => {
|
||||
// init git service
|
||||
GitServiceFactory.init(GitServiceType.GITHUB, "whatever");
|
||||
GitServiceFactory.getOrCreate(GitServiceType.GITHUB, "whatever");
|
||||
});
|
||||
|
||||
beforeEach(() => {
|
||||
|
@ -33,7 +33,7 @@ describe("github service", () => {
|
|||
cloneUrl: "https://github.com/owner/reponame.git"
|
||||
});
|
||||
expect(res.title).toBe("PR Title");
|
||||
expect(res.commits.length).toBe(1);
|
||||
expect(res.commits!.length).toBe(1);
|
||||
expect(res.commits).toEqual(["28f63db774185f4ec4b57cd9aaeb12dbfb4c9ecc"]);
|
||||
});
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue