From 709f4683301be50e66024f81698f6404b8d08b87 Mon Sep 17 00:00:00 2001 From: Magnus Persson Date: Tue, 13 Sep 2022 10:21:50 +0200 Subject: [PATCH 1/2] backend-common: wrap branch command Signed-off-by: Magnus Persson --- .changeset/smooth-camels-melt.md | 5 +++++ packages/backend-common/api-report.md | 2 ++ packages/backend-common/src/scm/git.test.ts | 16 ++++++++++++++++ packages/backend-common/src/scm/git.ts | 7 +++++++ 4 files changed, 30 insertions(+) create mode 100644 .changeset/smooth-camels-melt.md diff --git a/.changeset/smooth-camels-melt.md b/.changeset/smooth-camels-melt.md new file mode 100644 index 0000000000..bd816827a4 --- /dev/null +++ b/.changeset/smooth-camels-melt.md @@ -0,0 +1,5 @@ +--- +'@backstage/backend-common': patch +--- + +The `branch` command has been added to the `Git` isomorphic-git wrapper. diff --git a/packages/backend-common/api-report.md b/packages/backend-common/api-report.md index 40bd885fe8..600e3edef8 100644 --- a/packages/backend-common/api-report.md +++ b/packages/backend-common/api-report.md @@ -342,6 +342,8 @@ export class Git { force?: boolean; }): Promise; // (undocumented) + branch(options: { dir: string; ref: string }): Promise; + // (undocumented) checkout(options: { dir: string; ref: string }): Promise; clone(options: { url: string; diff --git a/packages/backend-common/src/scm/git.test.ts b/packages/backend-common/src/scm/git.test.ts index e9c66a896e..fdd3c7dbc8 100644 --- a/packages/backend-common/src/scm/git.test.ts +++ b/packages/backend-common/src/scm/git.test.ts @@ -95,6 +95,22 @@ describe('Git', () => { }); }); + describe('branch', () => { + it('should call isomorphic-git with the correct arguments', async () => { + const git = Git.fromAuth({}); + const dir = 'mockdirectory'; + const ref = 'master'; + + await git.branch({ dir, ref }); + + expect(isomorphic.branch).toHaveBeenCalledWith({ + fs, + dir, + ref, + }); + }); + }); + describe('commit', () => { it('should call isomorphic-git with the correct arguments', async () => { const git = Git.fromAuth({}); diff --git a/packages/backend-common/src/scm/git.ts b/packages/backend-common/src/scm/git.ts index 8a72c7af89..0c9252cb64 100644 --- a/packages/backend-common/src/scm/git.ts +++ b/packages/backend-common/src/scm/git.ts @@ -94,6 +94,13 @@ export class Git { return git.checkout({ fs, dir, ref }); } + async branch(options: { dir: string; ref: string }): Promise { + const { dir, ref } = options; + this.config.logger?.info(`Creating branch {dir=${dir},ref=${ref}`); + + return git.branch({ fs, dir, ref }); + } + async commit(options: { dir: string; message: string; From ae202dc3bc15478c9372503e1d43d26d556a9a0d Mon Sep 17 00:00:00 2001 From: Magnus Persson Date: Mon, 19 Sep 2022 08:29:23 +0200 Subject: [PATCH 2/2] Update .changeset/smooth-camels-melt.md Co-authored-by: Ben Lambert Signed-off-by: Magnus Persson --- .changeset/smooth-camels-melt.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/smooth-camels-melt.md b/.changeset/smooth-camels-melt.md index bd816827a4..7d76bbd9ba 100644 --- a/.changeset/smooth-camels-melt.md +++ b/.changeset/smooth-camels-melt.md @@ -2,4 +2,4 @@ '@backstage/backend-common': patch --- -The `branch` command has been added to the `Git` isomorphic-git wrapper. +The `branch` command has been added to the `isomorphic-git` wrapper.