Skip to content

Commit 65ecc27

Browse files
authored
feat: added new input variable to indicate whether to create Gitlab releases after publish or not (#85)
1 parent 08af4ab commit 65ecc27

File tree

4 files changed

+25
-13
lines changed

4 files changed

+25
-13
lines changed

.changeset/neat-icons-happen.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'changesets-gitlab': minor
3+
---
4+
5+
feat: added new input variable to indicate whether to create Gitlab releases after publish or not

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ GitLab CI cli for [changesets](https://github.com/atlassian/changesets) like its
3030
- only_changesets - Command executed on only changesets detected
3131
- remove_source_branch - Enables the merge request "Delete source branch" checkbox. Default false.
3232
- target_branch -> The merge request target branch. Defaults to current branch
33+
- create_gitlab_releases - A boolean value to indicate whether to create Gitlab releases after publish or not. Default true.
3334

3435
### Outputs
3536

src/main.ts

+1
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ export const main = async ({
8787
const result = await runPublish({
8888
script: publishScript,
8989
gitlabToken: GITLAB_TOKEN!,
90+
createGitlabReleases: getInput('create_gitlab_releases') === 'true',
9091
})
9192

9293
if (result.published) {

src/run.ts

+18-13
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ const createRelease = async (
5858
interface PublishOptions {
5959
script: string
6060
gitlabToken: string
61+
createGitlabReleases?: boolean
6162
cwd?: string
6263
}
6364

@@ -79,6 +80,7 @@ type PublishResult =
7980
export async function runPublish({
8081
script,
8182
gitlabToken,
83+
createGitlabReleases = true,
8284
cwd = process.cwd(),
8385
}: PublishOptions): Promise<PublishResult> {
8486
const api = createApi(gitlabToken)
@@ -116,15 +118,16 @@ export async function runPublish({
116118
}
117119
releasedPackages.push(pkg)
118120
}
119-
120-
await Promise.all(
121-
releasedPackages.map(pkg =>
122-
createRelease(api, {
123-
pkg,
124-
tagName: `${pkg.packageJson.name}@${pkg.packageJson.version}`,
125-
}),
126-
),
127-
)
121+
if (createGitlabReleases) {
122+
await Promise.all(
123+
releasedPackages.map(pkg =>
124+
createRelease(api, {
125+
pkg,
126+
tagName: `${pkg.packageJson.name}@${pkg.packageJson.version}`,
127+
}),
128+
),
129+
)
130+
}
128131
} else {
129132
if (packages.length === 0) {
130133
throw new Error(
@@ -140,10 +143,12 @@ export async function runPublish({
140143

141144
if (match) {
142145
releasedPackages.push(pkg)
143-
await createRelease(api, {
144-
pkg,
145-
tagName: `v${pkg.packageJson.version}`,
146-
})
146+
if (createGitlabReleases) {
147+
await createRelease(api, {
148+
pkg,
149+
tagName: `v${pkg.packageJson.version}`,
150+
})
151+
}
147152
break
148153
}
149154
}

0 commit comments

Comments
 (0)