@bonvoy/plugin-gitlab 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +3 -0
- package/dist/index.mjs +43 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.d.mts
CHANGED
|
@@ -21,6 +21,7 @@ interface GitLabMRResult {
|
|
|
21
21
|
interface GitLabOperations {
|
|
22
22
|
createRelease(token: string, host: string, params: GitLabReleaseParams): Promise<void>;
|
|
23
23
|
createMR(token: string, host: string, params: GitLabMRParams): Promise<GitLabMRResult>;
|
|
24
|
+
releaseExists(token: string, host: string, projectId: string | number, tagName: string): Promise<boolean>;
|
|
24
25
|
}
|
|
25
26
|
declare const defaultGitLabOperations: GitLabOperations;
|
|
26
27
|
//#endregion
|
|
@@ -29,6 +30,7 @@ interface GitLabPluginOptions {
|
|
|
29
30
|
token?: string;
|
|
30
31
|
host?: string;
|
|
31
32
|
projectId?: string | number;
|
|
33
|
+
tagFormat?: string;
|
|
32
34
|
}
|
|
33
35
|
declare class GitLabPlugin implements BonvoyPlugin {
|
|
34
36
|
name: string;
|
|
@@ -36,6 +38,7 @@ declare class GitLabPlugin implements BonvoyPlugin {
|
|
|
36
38
|
private ops;
|
|
37
39
|
constructor(options?: GitLabPluginOptions, ops?: GitLabOperations);
|
|
38
40
|
apply(bonvoy: any): void;
|
|
41
|
+
private validateReleases;
|
|
39
42
|
private getProjectId;
|
|
40
43
|
}
|
|
41
44
|
//#endregion
|
package/dist/index.mjs
CHANGED
|
@@ -23,6 +23,18 @@ const defaultGitLabOperations = {
|
|
|
23
23
|
url: mr.web_url,
|
|
24
24
|
iid: mr.iid
|
|
25
25
|
};
|
|
26
|
+
},
|
|
27
|
+
async releaseExists(token, host, projectId, tagName) {
|
|
28
|
+
const api = new Gitlab({
|
|
29
|
+
token,
|
|
30
|
+
host
|
|
31
|
+
});
|
|
32
|
+
try {
|
|
33
|
+
await api.ProjectReleases.show(projectId, tagName);
|
|
34
|
+
return true;
|
|
35
|
+
} catch {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
26
38
|
}
|
|
27
39
|
};
|
|
28
40
|
|
|
@@ -37,6 +49,9 @@ var GitLabPlugin = class {
|
|
|
37
49
|
this.ops = ops ?? defaultGitLabOperations;
|
|
38
50
|
}
|
|
39
51
|
apply(bonvoy) {
|
|
52
|
+
bonvoy.hooks.validateRepo.tapPromise(this.name, async (context) => {
|
|
53
|
+
await this.validateReleases(context);
|
|
54
|
+
});
|
|
40
55
|
bonvoy.hooks.makeRelease.tapPromise(this.name, async (context) => {
|
|
41
56
|
if (context.isDryRun) {
|
|
42
57
|
context.logger.info("🔍 [dry-run] Would create GitLab releases");
|
|
@@ -52,7 +67,7 @@ var GitLabPlugin = class {
|
|
|
52
67
|
for (const pkg of context.changedPackages) {
|
|
53
68
|
const version = context.versions[pkg.name];
|
|
54
69
|
const changelog = context.changelogs[pkg.name] || "";
|
|
55
|
-
const tagName =
|
|
70
|
+
const tagName = (this.options.tagFormat ?? "{name}@{version}").replace("{name}", pkg.name).replace("{version}", version);
|
|
56
71
|
try {
|
|
57
72
|
await this.ops.createRelease(token, host, {
|
|
58
73
|
projectId,
|
|
@@ -98,6 +113,33 @@ var GitLabPlugin = class {
|
|
|
98
113
|
}
|
|
99
114
|
});
|
|
100
115
|
}
|
|
116
|
+
async validateReleases(context) {
|
|
117
|
+
const { changedPackages, versions, logger } = context;
|
|
118
|
+
if (!versions) return;
|
|
119
|
+
const token = this.options.token || process.env.GITLAB_TOKEN;
|
|
120
|
+
if (!token) return;
|
|
121
|
+
const host = this.options.host || process.env.GITLAB_HOST || "https://gitlab.com";
|
|
122
|
+
let projectId;
|
|
123
|
+
try {
|
|
124
|
+
projectId = this.getProjectId(context.rootPath);
|
|
125
|
+
} catch {
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
const tagFormat = this.options.tagFormat ?? "{name}@{version}";
|
|
129
|
+
const existing = [];
|
|
130
|
+
for (const pkg of changedPackages) {
|
|
131
|
+
const version = versions[pkg.name];
|
|
132
|
+
/* c8 ignore start -- defensive: version always present for changedPackages */
|
|
133
|
+
if (!version) continue;
|
|
134
|
+
/* c8 ignore stop */
|
|
135
|
+
const tag = tagFormat.replace("{name}", pkg.name).replace("{version}", version);
|
|
136
|
+
if (await this.ops.releaseExists(token, host, projectId, tag)) existing.push(tag);
|
|
137
|
+
}
|
|
138
|
+
if (existing.length > 0) {
|
|
139
|
+
logger.error(`❌ GitLab releases already exist: ${existing.join(", ")}`);
|
|
140
|
+
throw new Error(`Cannot release: GitLab releases already exist (${existing.join(", ")}). Delete them first or bump to a new version.`);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
101
143
|
getProjectId(rootPath) {
|
|
102
144
|
if (this.options.projectId) return this.options.projectId;
|
|
103
145
|
try {
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":[],"sources":["../src/operations.ts","../src/gitlab.ts"],"sourcesContent":["import { Gitlab } from '@gitbeaker/rest';\n\nexport interface GitLabReleaseParams {\n projectId: string | number;\n tagName: string;\n name: string;\n description: string;\n}\n\nexport interface GitLabMRParams {\n projectId: string | number;\n title: string;\n description: string;\n sourceBranch: string;\n targetBranch: string;\n}\n\nexport interface GitLabMRResult {\n url: string;\n iid: number;\n}\n\nexport interface GitLabOperations {\n createRelease(token: string, host: string, params: GitLabReleaseParams): Promise<void>;\n createMR(token: string, host: string, params: GitLabMRParams): Promise<GitLabMRResult>;\n}\n\nexport const defaultGitLabOperations: GitLabOperations = {\n /* v8 ignore start */\n async createRelease(token, host, params) {\n const api = new Gitlab({ token, host });\n await api.ProjectReleases.create(params.projectId, {\n tagName: params.tagName,\n name: params.name,\n description: params.description,\n });\n },\n\n async createMR(token, host, params) {\n const api = new Gitlab({ token, host });\n const mr = await api.MergeRequests.create(\n params.projectId,\n params.sourceBranch,\n params.targetBranch,\n params.title,\n {\n description: params.description,\n },\n );\n return { url: mr.web_url, iid: mr.iid };\n },\n /* v8 ignore stop */\n};\n","import { readFileSync } from 'node:fs';\nimport { join } from 'node:path';\n\nimport type { BonvoyPlugin, PRContext, ReleaseContext } from '@bonvoy/core';\n\nimport { defaultGitLabOperations, type GitLabOperations } from './operations.js';\n\nexport interface GitLabPluginOptions {\n token?: string;\n host?: string;\n projectId?: string | number;\n}\n\nexport default class GitLabPlugin implements BonvoyPlugin {\n name = 'gitlab';\n private options: GitLabPluginOptions;\n private ops: GitLabOperations;\n\n constructor(options: GitLabPluginOptions = {}, ops?: GitLabOperations) {\n this.options = options;\n this.ops = ops ?? defaultGitLabOperations;\n }\n\n // biome-ignore lint/suspicious/noExplicitAny: Bonvoy type causes circular dependency\n apply(bonvoy: any): void {\n bonvoy.hooks.makeRelease.tapPromise(this.name, async (context: ReleaseContext) => {\n if (context.isDryRun) {\n context.logger.info('🔍 [dry-run] Would create GitLab releases');\n return;\n }\n\n const token = this.options.token || process.env.GITLAB_TOKEN;\n if (!token) {\n context.logger.warn('⚠️ GITLAB_TOKEN not found, skipping GitLab releases');\n return;\n }\n\n const host = this.options.host || process.env.GITLAB_HOST || 'https://gitlab.com';\n const projectId = this.getProjectId(context.rootPath);\n\n for (const pkg of context.changedPackages) {\n const version = context.versions[pkg.name];\n const changelog = context.changelogs[pkg.name] || '';\n const tagName = `${pkg.name}@${version}`;\n\n try {\n await this.ops.createRelease(token, host, {\n projectId,\n tagName,\n name: `${pkg.name} v${version}`,\n description: changelog,\n });\n\n context.logger.info(`✅ Created GitLab release: ${tagName}`);\n } catch (error: unknown) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n context.logger.error(`❌ Failed to create release for ${tagName}: ${errorMessage}`);\n throw error;\n }\n }\n });\n\n // MR creation hook\n bonvoy.hooks.createPR.tapPromise(this.name, async (context: PRContext) => {\n if (context.isDryRun) {\n context.logger.info('🔍 [dry-run] Would create GitLab MR');\n return;\n }\n\n const token = this.options.token || process.env.GITLAB_TOKEN;\n if (!token) {\n context.logger.warn('⚠️ GITLAB_TOKEN not found, skipping MR creation');\n return;\n }\n\n const host = this.options.host || process.env.GITLAB_HOST || 'https://gitlab.com';\n const projectId = this.getProjectId(context.rootPath);\n\n try {\n const result = await this.ops.createMR(token, host, {\n projectId,\n title: context.title,\n description: context.body,\n sourceBranch: context.branchName,\n targetBranch: context.baseBranch,\n });\n\n context.prUrl = result.url;\n context.prNumber = result.iid;\n context.logger.info(`✅ Created GitLab MR: ${result.url}`);\n } catch (error: unknown) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n context.logger.error(`❌ Failed to create MR: ${errorMessage}`);\n throw error;\n }\n });\n }\n\n private getProjectId(rootPath: string): string | number {\n if (this.options.projectId) {\n return this.options.projectId;\n }\n\n // Try to read from package.json repository field\n try {\n const pkgPath = join(rootPath, 'package.json');\n const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));\n const repoUrl = typeof pkg.repository === 'string' ? pkg.repository : pkg.repository?.url;\n\n if (repoUrl) {\n // Match gitlab.com/group/project or gitlab.com/group/subgroup/project\n const match = repoUrl.match(/gitlab\\.com[:/](.+?)(?:\\.git)?$/);\n if (match) {\n return encodeURIComponent(match[1]);\n }\n }\n } catch {\n // Ignore error\n }\n\n throw new Error(\n 'Could not determine GitLab project. Please set \"repository\" in package.json or provide projectId in plugin options.',\n );\n }\n}\n\nexport {\n defaultGitLabOperations,\n type GitLabMRParams,\n type GitLabMRResult,\n type GitLabOperations,\n type GitLabReleaseParams,\n} from './operations.js';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../src/operations.ts","../src/gitlab.ts"],"sourcesContent":["import { Gitlab } from '@gitbeaker/rest';\n\nexport interface GitLabReleaseParams {\n projectId: string | number;\n tagName: string;\n name: string;\n description: string;\n}\n\nexport interface GitLabMRParams {\n projectId: string | number;\n title: string;\n description: string;\n sourceBranch: string;\n targetBranch: string;\n}\n\nexport interface GitLabMRResult {\n url: string;\n iid: number;\n}\n\nexport interface GitLabOperations {\n createRelease(token: string, host: string, params: GitLabReleaseParams): Promise<void>;\n createMR(token: string, host: string, params: GitLabMRParams): Promise<GitLabMRResult>;\n releaseExists(\n token: string,\n host: string,\n projectId: string | number,\n tagName: string,\n ): Promise<boolean>;\n}\n\nexport const defaultGitLabOperations: GitLabOperations = {\n /* v8 ignore start */\n async createRelease(token, host, params) {\n const api = new Gitlab({ token, host });\n await api.ProjectReleases.create(params.projectId, {\n tagName: params.tagName,\n name: params.name,\n description: params.description,\n });\n },\n\n async createMR(token, host, params) {\n const api = new Gitlab({ token, host });\n const mr = await api.MergeRequests.create(\n params.projectId,\n params.sourceBranch,\n params.targetBranch,\n params.title,\n {\n description: params.description,\n },\n );\n return { url: mr.web_url, iid: mr.iid };\n },\n\n async releaseExists(token, host, projectId, tagName) {\n const api = new Gitlab({ token, host });\n try {\n await api.ProjectReleases.show(projectId, tagName);\n return true;\n } catch {\n return false;\n }\n },\n /* v8 ignore stop */\n};\n","import { readFileSync } from 'node:fs';\nimport { join } from 'node:path';\n\nimport type { BonvoyPlugin, Context, PRContext, ReleaseContext } from '@bonvoy/core';\n\nimport { defaultGitLabOperations, type GitLabOperations } from './operations.js';\n\nexport interface GitLabPluginOptions {\n token?: string;\n host?: string;\n projectId?: string | number;\n tagFormat?: string;\n}\n\nexport default class GitLabPlugin implements BonvoyPlugin {\n name = 'gitlab';\n private options: GitLabPluginOptions;\n private ops: GitLabOperations;\n\n constructor(options: GitLabPluginOptions = {}, ops?: GitLabOperations) {\n this.options = options;\n this.ops = ops ?? defaultGitLabOperations;\n }\n\n // biome-ignore lint/suspicious/noExplicitAny: Bonvoy type causes circular dependency\n apply(bonvoy: any): void {\n bonvoy.hooks.validateRepo.tapPromise(this.name, async (context: Context) => {\n await this.validateReleases(context);\n });\n\n bonvoy.hooks.makeRelease.tapPromise(this.name, async (context: ReleaseContext) => {\n if (context.isDryRun) {\n context.logger.info('🔍 [dry-run] Would create GitLab releases');\n return;\n }\n\n const token = this.options.token || process.env.GITLAB_TOKEN;\n if (!token) {\n context.logger.warn('⚠️ GITLAB_TOKEN not found, skipping GitLab releases');\n return;\n }\n\n const host = this.options.host || process.env.GITLAB_HOST || 'https://gitlab.com';\n const projectId = this.getProjectId(context.rootPath);\n\n for (const pkg of context.changedPackages) {\n const version = context.versions[pkg.name];\n const changelog = context.changelogs[pkg.name] || '';\n const tagFormat = this.options.tagFormat ?? '{name}@{version}';\n const tagName = tagFormat.replace('{name}', pkg.name).replace('{version}', version);\n\n try {\n await this.ops.createRelease(token, host, {\n projectId,\n tagName,\n name: `${pkg.name} v${version}`,\n description: changelog,\n });\n\n context.logger.info(`✅ Created GitLab release: ${tagName}`);\n } catch (error: unknown) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n context.logger.error(`❌ Failed to create release for ${tagName}: ${errorMessage}`);\n throw error;\n }\n }\n });\n\n // MR creation hook\n bonvoy.hooks.createPR.tapPromise(this.name, async (context: PRContext) => {\n if (context.isDryRun) {\n context.logger.info('🔍 [dry-run] Would create GitLab MR');\n return;\n }\n\n const token = this.options.token || process.env.GITLAB_TOKEN;\n if (!token) {\n context.logger.warn('⚠️ GITLAB_TOKEN not found, skipping MR creation');\n return;\n }\n\n const host = this.options.host || process.env.GITLAB_HOST || 'https://gitlab.com';\n const projectId = this.getProjectId(context.rootPath);\n\n try {\n const result = await this.ops.createMR(token, host, {\n projectId,\n title: context.title,\n description: context.body,\n sourceBranch: context.branchName,\n targetBranch: context.baseBranch,\n });\n\n context.prUrl = result.url;\n context.prNumber = result.iid;\n context.logger.info(`✅ Created GitLab MR: ${result.url}`);\n } catch (error: unknown) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n context.logger.error(`❌ Failed to create MR: ${errorMessage}`);\n throw error;\n }\n });\n }\n\n private async validateReleases(context: Context): Promise<void> {\n const { changedPackages, versions, logger } = context;\n if (!versions) return;\n\n const token = this.options.token || process.env.GITLAB_TOKEN;\n if (!token) return;\n\n const host = this.options.host || process.env.GITLAB_HOST || 'https://gitlab.com';\n let projectId: string | number;\n try {\n projectId = this.getProjectId(context.rootPath);\n } catch {\n return;\n }\n\n const tagFormat = this.options.tagFormat ?? '{name}@{version}';\n const existing: string[] = [];\n\n for (const pkg of changedPackages) {\n const version = versions[pkg.name];\n /* c8 ignore start -- defensive: version always present for changedPackages */\n if (!version) continue;\n /* c8 ignore stop */\n const tag = tagFormat.replace('{name}', pkg.name).replace('{version}', version);\n if (await this.ops.releaseExists(token, host, projectId, tag)) {\n existing.push(tag);\n }\n }\n\n if (existing.length > 0) {\n logger.error(`❌ GitLab releases already exist: ${existing.join(', ')}`);\n throw new Error(\n `Cannot release: GitLab releases already exist (${existing.join(', ')}). Delete them first or bump to a new version.`,\n );\n }\n }\n\n private getProjectId(rootPath: string): string | number {\n if (this.options.projectId) {\n return this.options.projectId;\n }\n\n // Try to read from package.json repository field\n try {\n const pkgPath = join(rootPath, 'package.json');\n const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));\n const repoUrl = typeof pkg.repository === 'string' ? pkg.repository : pkg.repository?.url;\n\n if (repoUrl) {\n // Match gitlab.com/group/project or gitlab.com/group/subgroup/project\n const match = repoUrl.match(/gitlab\\.com[:/](.+?)(?:\\.git)?$/);\n if (match) {\n return encodeURIComponent(match[1]);\n }\n }\n } catch {\n // Ignore error\n }\n\n throw new Error(\n 'Could not determine GitLab project. Please set \"repository\" in package.json or provide projectId in plugin options.',\n );\n }\n}\n\nexport {\n defaultGitLabOperations,\n type GitLabMRParams,\n type GitLabMRResult,\n type GitLabOperations,\n type GitLabReleaseParams,\n} from './operations.js';\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bonvoy/plugin-gitlab",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "🚢 GitLab releases plugin for bonvoy",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"bonvoy",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"test": "vitest"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@bonvoy/core": "^0.
|
|
38
|
+
"@bonvoy/core": "^0.4.0",
|
|
39
39
|
"@gitbeaker/rest": "^42.5.0"
|
|
40
40
|
},
|
|
41
41
|
"engines": {
|