@teambit/ci 0.0.2 → 0.0.4
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/commands/merge.cmd.ts +3 -1
- package/commands/pr.cmd.ts +6 -1
- package/dist/ci.main.runtime.d.ts +5 -2
- package/dist/ci.main.runtime.js +56 -9
- package/dist/ci.main.runtime.js.map +1 -1
- package/dist/commands/merge.cmd.d.ts +1 -0
- package/dist/commands/merge.cmd.js +3 -2
- package/dist/commands/merge.cmd.js.map +1 -1
- package/dist/commands/pr.cmd.d.ts +1 -0
- package/dist/commands/pr.cmd.js +6 -3
- package/dist/commands/pr.cmd.js.map +1 -1
- package/dist/{preview-1751991212508.js → preview-1752084552333.js} +1 -1
- package/package.json +2 -2
package/commands/merge.cmd.ts
CHANGED
|
@@ -6,6 +6,7 @@ import { CiMain } from '../ci.main.runtime';
|
|
|
6
6
|
type Options = {
|
|
7
7
|
message?: string;
|
|
8
8
|
build?: boolean;
|
|
9
|
+
strict?: boolean;
|
|
9
10
|
};
|
|
10
11
|
|
|
11
12
|
export class CiMergeCmd implements Command {
|
|
@@ -16,6 +17,7 @@ export class CiMergeCmd implements Command {
|
|
|
16
17
|
options: CommandOptions = [
|
|
17
18
|
['m', 'message <message>', 'If set, use it as the snap message, if not, try and grab from git-commit-message'],
|
|
18
19
|
['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI'],
|
|
20
|
+
['s', 'strict', 'Set to true to fail on warnings as well as errors, false (default) only fails on errors'],
|
|
19
21
|
];
|
|
20
22
|
|
|
21
23
|
constructor(
|
|
@@ -29,6 +31,6 @@ export class CiMergeCmd implements Command {
|
|
|
29
31
|
this.logger.console('🚀 Initializing Merge command');
|
|
30
32
|
if (!this.workspace) throw new OutsideWorkspaceError();
|
|
31
33
|
|
|
32
|
-
return this.ci.mergePr({ message: options.message, build: options.build });
|
|
34
|
+
return this.ci.mergePr({ message: options.message, build: options.build, strict: options.strict });
|
|
33
35
|
}
|
|
34
36
|
}
|
package/commands/pr.cmd.ts
CHANGED
|
@@ -7,6 +7,7 @@ type Options = {
|
|
|
7
7
|
message?: string;
|
|
8
8
|
build?: boolean;
|
|
9
9
|
lane?: string;
|
|
10
|
+
strict?: boolean;
|
|
10
11
|
};
|
|
11
12
|
|
|
12
13
|
export class CiPrCmd implements Command {
|
|
@@ -18,6 +19,7 @@ export class CiPrCmd implements Command {
|
|
|
18
19
|
['m', 'message <message>', 'If set, set it as the snap message, if not, try and grab from git-commit-message'],
|
|
19
20
|
['l', 'lane <lane>', 'If set, use as the lane name, if not available, grab from git-branch name'],
|
|
20
21
|
['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI'],
|
|
22
|
+
['s', 'strict', 'Set to true to fail on warnings as well as errors, false (default) only fails on errors'],
|
|
21
23
|
];
|
|
22
24
|
|
|
23
25
|
constructor(
|
|
@@ -43,7 +45,9 @@ export class CiPrCmd implements Command {
|
|
|
43
45
|
if (!currentBranch) {
|
|
44
46
|
throw new Error('Failed to get branch name');
|
|
45
47
|
}
|
|
46
|
-
branch
|
|
48
|
+
// Sanitize branch name to make it valid for Bit lane IDs by replacing slashes with dashes
|
|
49
|
+
const sanitizedBranch = currentBranch.replace(/\//g, '-');
|
|
50
|
+
branch = `${this.workspace.defaultScope}/${sanitizedBranch}`;
|
|
47
51
|
}
|
|
48
52
|
|
|
49
53
|
if (options.message) {
|
|
@@ -60,6 +64,7 @@ export class CiPrCmd implements Command {
|
|
|
60
64
|
branch,
|
|
61
65
|
message,
|
|
62
66
|
build: options.build,
|
|
67
|
+
strict: options.strict,
|
|
63
68
|
});
|
|
64
69
|
}
|
|
65
70
|
}
|
|
@@ -36,6 +36,7 @@ export declare class CiMain {
|
|
|
36
36
|
CheckoutMain
|
|
37
37
|
]): Promise<CiMain>;
|
|
38
38
|
getBranchName(): Promise<string>;
|
|
39
|
+
getDefaultBranchName(): Promise<string>;
|
|
39
40
|
getGitCommitMessage(): Promise<string | null>;
|
|
40
41
|
private verifyWorkspaceStatusInternal;
|
|
41
42
|
private switchToLane;
|
|
@@ -43,17 +44,19 @@ export declare class CiMain {
|
|
|
43
44
|
code: number;
|
|
44
45
|
data: string;
|
|
45
46
|
}>;
|
|
46
|
-
snapPrCommit({ branch, message, build }: {
|
|
47
|
+
snapPrCommit({ branch, message, build, strict, }: {
|
|
47
48
|
branch: string;
|
|
48
49
|
message: string;
|
|
49
50
|
build: boolean | undefined;
|
|
51
|
+
strict: boolean | undefined;
|
|
50
52
|
}): Promise<string | {
|
|
51
53
|
code: number;
|
|
52
54
|
data: string;
|
|
53
55
|
}>;
|
|
54
|
-
mergePr({ message: argMessage, build }: {
|
|
56
|
+
mergePr({ message: argMessage, build, strict }: {
|
|
55
57
|
message?: string;
|
|
56
58
|
build?: boolean;
|
|
59
|
+
strict?: boolean;
|
|
57
60
|
}): Promise<{
|
|
58
61
|
code: number;
|
|
59
62
|
data: string;
|
package/dist/ci.main.runtime.js
CHANGED
|
@@ -166,6 +166,25 @@ class CiMain {
|
|
|
166
166
|
throw new Error(`Unable to read branch: ${e.toString()}`);
|
|
167
167
|
}
|
|
168
168
|
}
|
|
169
|
+
async getDefaultBranchName() {
|
|
170
|
+
try {
|
|
171
|
+
// Try to get the default branch from git symbolic-ref
|
|
172
|
+
const result = await _git().git.raw(['symbolic-ref', 'refs/remotes/origin/HEAD']);
|
|
173
|
+
const defaultBranch = result.trim().split('/').pop();
|
|
174
|
+
return defaultBranch || 'master';
|
|
175
|
+
} catch (e) {
|
|
176
|
+
// Fallback to common default branch names
|
|
177
|
+
try {
|
|
178
|
+
const branches = await _git().git.branch(['-r']);
|
|
179
|
+
if (branches.all.includes('origin/main')) return 'main';
|
|
180
|
+
if (branches.all.includes('origin/master')) return 'master';
|
|
181
|
+
return 'master'; // Final fallback
|
|
182
|
+
} catch {
|
|
183
|
+
this.logger.console(_chalk().default.yellow(`Unable to detect default branch, using 'master': ${e.toString()}`));
|
|
184
|
+
return 'master';
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
169
188
|
async getGitCommitMessage() {
|
|
170
189
|
try {
|
|
171
190
|
const commit = await _git().git.log({
|
|
@@ -183,15 +202,35 @@ class CiMain {
|
|
|
183
202
|
throw new Error(`Unable to read commit message: ${e.toString()}`);
|
|
184
203
|
}
|
|
185
204
|
}
|
|
186
|
-
async verifyWorkspaceStatusInternal() {
|
|
205
|
+
async verifyWorkspaceStatusInternal(strict = false) {
|
|
187
206
|
this.logger.console('📊 Workspace Status');
|
|
188
207
|
this.logger.console(_chalk().default.blue('Verifying status of workspace'));
|
|
189
208
|
const status = await this.status.status({
|
|
190
209
|
lanes: true,
|
|
191
210
|
ignoreCircularDependencies: false
|
|
192
211
|
});
|
|
193
|
-
|
|
194
|
-
|
|
212
|
+
|
|
213
|
+
// Check for blocking issues (errors) vs warnings
|
|
214
|
+
const componentsWithErrors = status.componentsWithIssues.filter(({
|
|
215
|
+
issues
|
|
216
|
+
}) => issues.hasTagBlockerIssues());
|
|
217
|
+
const componentsWithWarnings = status.componentsWithIssues.filter(({
|
|
218
|
+
issues
|
|
219
|
+
}) => !issues.hasTagBlockerIssues());
|
|
220
|
+
if (componentsWithWarnings.length > 0) {
|
|
221
|
+
if (strict) {
|
|
222
|
+
this.logger.console(_chalk().default.red(`Found ${componentsWithWarnings.length} components with warnings (strict mode), run 'bit status' to see the warnings.`));
|
|
223
|
+
return {
|
|
224
|
+
code: 1,
|
|
225
|
+
data: '',
|
|
226
|
+
status
|
|
227
|
+
};
|
|
228
|
+
} else {
|
|
229
|
+
this.logger.console(_chalk().default.yellow(`Found ${componentsWithWarnings.length} components with warnings, run 'bit status' to see the warnings.`));
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
if (componentsWithErrors.length > 0) {
|
|
233
|
+
this.logger.console(_chalk().default.red(`Found ${componentsWithErrors.length} components with errors, run 'bit status' to see the errors.`));
|
|
195
234
|
return {
|
|
196
235
|
code: 1,
|
|
197
236
|
data: '',
|
|
@@ -243,7 +282,8 @@ class CiMain {
|
|
|
243
282
|
async snapPrCommit({
|
|
244
283
|
branch,
|
|
245
284
|
message,
|
|
246
|
-
build
|
|
285
|
+
build,
|
|
286
|
+
strict
|
|
247
287
|
}) {
|
|
248
288
|
this.logger.console(_chalk().default.blue(`Branch name: ${branch}`));
|
|
249
289
|
const originalLane = await this.lanes.getCurrentLane();
|
|
@@ -258,7 +298,7 @@ class CiMain {
|
|
|
258
298
|
const {
|
|
259
299
|
code,
|
|
260
300
|
data
|
|
261
|
-
} = await this.verifyWorkspaceStatusInternal();
|
|
301
|
+
} = await this.verifyWorkspaceStatusInternal(strict);
|
|
262
302
|
if (code !== 0) return {
|
|
263
303
|
code,
|
|
264
304
|
data
|
|
@@ -321,7 +361,12 @@ class CiMain {
|
|
|
321
361
|
unmodified: false
|
|
322
362
|
});
|
|
323
363
|
if (!results) {
|
|
324
|
-
|
|
364
|
+
this.logger.console(_chalk().default.yellow('No changes detected, nothing to snap'));
|
|
365
|
+
this.logger.console(_chalk().default.green('Lane is up to date'));
|
|
366
|
+
return {
|
|
367
|
+
code: 0,
|
|
368
|
+
data: 'No changes detected, nothing to snap'
|
|
369
|
+
};
|
|
325
370
|
}
|
|
326
371
|
const {
|
|
327
372
|
snappedComponents,
|
|
@@ -385,7 +430,8 @@ class CiMain {
|
|
|
385
430
|
}
|
|
386
431
|
async mergePr({
|
|
387
432
|
message: argMessage,
|
|
388
|
-
build
|
|
433
|
+
build,
|
|
434
|
+
strict
|
|
389
435
|
}) {
|
|
390
436
|
let message;
|
|
391
437
|
if (argMessage) {
|
|
@@ -425,7 +471,7 @@ class CiMain {
|
|
|
425
471
|
code,
|
|
426
472
|
data,
|
|
427
473
|
status
|
|
428
|
-
} = await this.verifyWorkspaceStatusInternal();
|
|
474
|
+
} = await this.verifyWorkspaceStatusInternal(strict);
|
|
429
475
|
if (code !== 0) return {
|
|
430
476
|
code,
|
|
431
477
|
data
|
|
@@ -454,7 +500,8 @@ class CiMain {
|
|
|
454
500
|
await _git().git.commit('chore: update .bitmap and pnpm-lock.yaml');
|
|
455
501
|
|
|
456
502
|
// Push the commit to the remote repository
|
|
457
|
-
await
|
|
503
|
+
const defaultBranch = await this.getDefaultBranchName();
|
|
504
|
+
await _git().git.push('origin', defaultBranch);
|
|
458
505
|
this.logger.console(_chalk().default.green('Merged PR'));
|
|
459
506
|
if (currentLane) {
|
|
460
507
|
this.logger.console('🗑️ Lane Cleanup');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_cli","data","require","_logger","_workspace","_builder","_status","_lanes","_snapping","_export","_importer","_checkout","_legacy","_chalk","_interopRequireDefault","_ci","_ci2","_verify","_pr","_merge","_git","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CiMain","constructor","workspace","builder","status","lanes","snapping","exporter","importer","checkout","logger","provider","cli","loggerAspect","createLogger","CiAspect","id","ci","ciCmd","CiCmd","commands","CiVerifyCmd","CiPrCmd","CiMergeCmd","register","getBranchName","process","env","GITHUB_HEAD_REF","branch","git","current","Error","toString","getGitCommitMessage","commit","log","maxCount","latest","message","body","verifyWorkspaceStatusInternal","console","chalk","blue","ignoreCircularDependencies","componentsWithIssues","red","code","green","switchToLane","laneName","options","switchLanes","forceOurs","head","workspaceOnly","catch","includes","yellow","verifyWorkspaceStatus","components","list","build","throwErrorsIfExist","snapPrCommit","originalLane","getCurrentLane","laneId","parseLaneId","import","ids","installNpmPackages","writeConfigFiles","availableLanesInScope","getLanes","remote","scope","newLaneExists","find","lane","name","importLaneObject","consumer","setCurrentLane","laneIds","toComponentIds","compId","bitMap","updateComponentId","write","importCurrentObjects","createdLane","createLane","forkLaneNewScope","currentLane","results","snap","exitOnFirstFailedTask","unmodified","snappedComponents","autoSnappedResults","warnings","newComponents","removedComponents","changedComponents","component","searchWithoutVersion","addedComponents","autoTaggedCount","warningsOutput","join","compInBold","version","hasVersion","bold","toStringWithoutVersion","outputComponents","comps","map","componentOutput","autoTag","result","triggeredBy","autoTagComp","a","AUTO_SNAPPED_MSG","outputIfExists","label","explanation","underline","laneStr","export","outputIdsIfExists","mergePr","argMessage","commitMessage","skipNpmInstall","skipDependencyInstallation","main","mergeStrategy","hasSoftTaggedComponents","softTaggedComponents","tag","all","failFast","persist","addConfig","add","archiveLane","removeLanes","exports","MainRuntime","CLIAspect","WorkspaceAspect","LoggerAspect","BuilderAspect","StatusAspect","LanesAspect","SnappingAspect","ExportAspect","ImporterAspect","CheckoutAspect","addRuntime"],"sources":["ci.main.runtime.ts"],"sourcesContent":["import type { RuntimeDefinition } from '@teambit/harmony';\nimport { CLIAspect, type CLIMain, MainRuntime } from '@teambit/cli';\nimport { LoggerAspect, type LoggerMain, type Logger } from '@teambit/logger';\nimport { WorkspaceAspect, type Workspace } from '@teambit/workspace';\nimport { BuilderAspect, type BuilderMain } from '@teambit/builder';\nimport { StatusAspect, type StatusMain } from '@teambit/status';\nimport { LanesAspect, type LanesMain } from '@teambit/lanes';\nimport { SnappingAspect, SnapResults, type SnappingMain } from '@teambit/snapping';\nimport { ExportAspect, type ExportMain } from '@teambit/export';\nimport { ImporterAspect, type ImporterMain } from '@teambit/importer';\nimport { CheckoutAspect, type CheckoutMain } from '@teambit/checkout';\nimport { ComponentID } from '@teambit/component-id';\nimport { ConsumerComponent } from '@teambit/legacy.consumer-component';\nimport { AUTO_SNAPPED_MSG } from '@teambit/legacy.constants';\nimport { outputIdsIfExists } from '@teambit/snapping';\nimport { SwitchLaneOptions } from '@teambit/lanes';\nimport chalk from 'chalk';\nimport { CiAspect } from './ci.aspect';\nimport { CiCmd } from './ci.cmd';\nimport { CiVerifyCmd } from './commands/verify.cmd';\nimport { CiPrCmd } from './commands/pr.cmd';\nimport { CiMergeCmd } from './commands/merge.cmd';\nimport { git } from './git';\n\nexport class CiMain {\n static runtime = MainRuntime as RuntimeDefinition;\n\n static dependencies: any = [\n CLIAspect,\n WorkspaceAspect,\n LoggerAspect,\n BuilderAspect,\n StatusAspect,\n LanesAspect,\n SnappingAspect,\n ExportAspect,\n ImporterAspect,\n CheckoutAspect,\n ];\n\n static slots: any = [];\n\n constructor(\n private workspace: Workspace,\n\n private builder: BuilderMain,\n\n private status: StatusMain,\n\n private lanes: LanesMain,\n\n private snapping: SnappingMain,\n\n private exporter: ExportMain,\n\n private importer: ImporterMain,\n\n private checkout: CheckoutMain,\n\n private logger: Logger\n ) {}\n\n static async provider([\n cli,\n workspace,\n loggerAspect,\n builder,\n status,\n lanes,\n snapping,\n exporter,\n importer,\n checkout,\n ]: [\n CLIMain,\n Workspace,\n LoggerMain,\n BuilderMain,\n StatusMain,\n LanesMain,\n SnappingMain,\n ExportMain,\n ImporterMain,\n CheckoutMain,\n ]) {\n const logger = loggerAspect.createLogger(CiAspect.id);\n\n const ci = new CiMain(workspace, builder, status, lanes, snapping, exporter, importer, checkout, logger);\n\n const ciCmd = new CiCmd(workspace, logger);\n\n ciCmd.commands = [\n new CiVerifyCmd(workspace, logger, ci),\n new CiPrCmd(workspace, logger, ci),\n new CiMergeCmd(workspace, logger, ci),\n ];\n\n cli.register(ciCmd);\n return ci;\n }\n\n async getBranchName() {\n try {\n // if we are running on github, use the GITHUB_HEAD_REF env var\n if (process.env.GITHUB_HEAD_REF) return process.env.GITHUB_HEAD_REF;\n\n const branch = await git.branch();\n return branch.current;\n } catch (e: any) {\n throw new Error(`Unable to read branch: ${e.toString()}`);\n }\n }\n\n async getGitCommitMessage() {\n try {\n const commit = await git.log({\n maxCount: 1,\n });\n if (!commit.latest) {\n return null;\n }\n const { message, body } = commit.latest;\n return body ? `${message}\\n\\n${body}` : message;\n } catch (e: any) {\n throw new Error(`Unable to read commit message: ${e.toString()}`);\n }\n }\n\n private async verifyWorkspaceStatusInternal() {\n this.logger.console('📊 Workspace Status');\n this.logger.console(chalk.blue('Verifying status of workspace'));\n const status = await this.status.status({\n lanes: true,\n ignoreCircularDependencies: false,\n });\n\n if (status.componentsWithIssues.length > 0) {\n this.logger.console(\n chalk.red(\n `Found ${status.componentsWithIssues.length} components with issues, run 'bit status' to see the issues.`\n )\n );\n return { code: 1, data: '', status };\n }\n\n this.logger.console(chalk.green('Workspace status is correct'));\n return { code: 0, data: '', status };\n }\n\n private async switchToLane(laneName: string, options: SwitchLaneOptions = {}) {\n this.logger.console(chalk.blue(`Switching to ${laneName}`));\n await this.lanes\n .switchLanes(laneName, {\n forceOurs: true,\n head: true,\n workspaceOnly: true,\n ...options,\n })\n .catch((e) => {\n if (e.toString().includes('already checked out')) {\n this.logger.console(chalk.yellow(`Lane ${laneName} already checked out, skipping checkout`));\n return true;\n }\n this.logger.console(chalk.red(`Failed to checkout lane ${laneName}: ${e.toString()}`));\n return null;\n });\n }\n\n async verifyWorkspaceStatus() {\n const { code, data } = await this.verifyWorkspaceStatusInternal();\n if (code !== 0) return { code, data };\n\n this.logger.console('🔨 Build Process');\n const components = await this.workspace.list();\n\n this.logger.console(chalk.blue(`Building ${components.length} components`));\n\n const build = await this.builder.build(components);\n\n build.throwErrorsIfExist();\n\n this.logger.console(chalk.green('Components built'));\n\n return { code: 0, data: '' };\n }\n\n async snapPrCommit({ branch, message, build }: { branch: string; message: string; build: boolean | undefined }) {\n this.logger.console(chalk.blue(`Branch name: ${branch}`));\n\n const originalLane = await this.lanes.getCurrentLane();\n\n const laneId = await this.lanes.parseLaneId(branch);\n\n if (!laneId) {\n this.logger.console(chalk.yellow(`No lane found for branch ${branch}`));\n return { code: 1, data: '' };\n }\n\n const { code, data } = await this.verifyWorkspaceStatusInternal();\n if (code !== 0) return { code, data };\n\n await this.importer\n .import({\n ids: [],\n installNpmPackages: false,\n writeConfigFiles: false,\n })\n .catch((e) => {\n throw new Error(`Failed to import components: ${e.toString()}`);\n });\n\n try {\n this.logger.console('🔄 Lane Management');\n const availableLanesInScope = await this.lanes\n .getLanes({\n remote: laneId.scope,\n })\n .catch((e) => {\n throw new Error(`Failed to get lanes in scope ${laneId.scope}: ${e.toString()}`);\n });\n\n const newLaneExists = availableLanesInScope.find((lane) => lane.id.name === laneId.name);\n\n if (newLaneExists) {\n const lane = await this.lanes.importLaneObject(laneId, true);\n this.workspace.consumer.setCurrentLane(laneId, true);\n const laneIds = lane.toComponentIds();\n laneIds.forEach((compId) => this.workspace.consumer.bitMap.updateComponentId(compId));\n await this.workspace.bitMap.write();\n await this.importer.importCurrentObjects();\n\n this.logger.console(chalk.green(`Imported lane ${laneId.toString()}`));\n } else {\n this.logger.console(chalk.blue(`Creating lane ${laneId.toString()}`));\n\n const createdLane = await this.lanes\n .createLane(laneId.name, {\n scope: laneId.scope,\n forkLaneNewScope: true,\n })\n .catch((e) => {\n if (e.toString().includes('already exists')) {\n this.logger.console(chalk.yellow(`Lane ${laneId.toString()} already exists, skipping creation`));\n return true;\n }\n this.logger.console(chalk.red(`Failed to create lane ${laneId.toString()}: ${e.toString()}`));\n return null;\n });\n\n if (!createdLane) {\n return { code: 1, data: '' };\n }\n }\n\n const currentLane = await this.lanes.getCurrentLane();\n\n this.logger.console(chalk.blue(`Current lane: ${currentLane?.name ?? 'main'}`));\n\n if (currentLane?.name === laneId.name) {\n this.logger.console(chalk.yellow(`Current lane is already ${laneId.name}, skipping switch`));\n } else {\n await this.switchToLane(laneId.toString());\n }\n\n this.logger.console('📦 Snapping Components');\n const results = await this.snapping.snap({\n message,\n build,\n exitOnFirstFailedTask: true,\n unmodified: false,\n });\n\n if (!results) {\n throw new Error('No snap results found');\n }\n\n const {\n snappedComponents,\n autoSnappedResults,\n warnings,\n newComponents,\n laneName,\n removedComponents,\n }: SnapResults = results;\n const changedComponents = snappedComponents.filter((component) => {\n return (\n !newComponents.searchWithoutVersion(component.id) && !removedComponents?.searchWithoutVersion(component.id)\n );\n });\n const addedComponents = snappedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoSnappedResults ? autoSnappedResults.length : 0;\n\n const warningsOutput = warnings?.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n\n const compInBold = (id: ComponentID) => {\n const version = id.hasVersion() ? `@${id.version}` : '';\n return `${chalk.bold(id.toStringWithoutVersion())}${version}`;\n };\n\n const outputComponents = (comps: ConsumerComponent[]) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${compInBold(component.id)}`;\n const autoTag = autoSnappedResults.filter((result) =>\n result.triggeredBy.searchWithoutVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) =>\n // @ts-ignore\n compInBold(a.component.id)\n );\n componentOutput += `\\n ${AUTO_SNAPPED_MSG} (${autoTagComp.length} total):\n ${autoTagComp.join('\\n ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n\n const laneStr = laneName ? ` on \"${laneName}\" lane` : '';\n\n this.logger.console(chalk.blue(`Exporting ${snappedComponents.length} components`));\n\n await this.exporter.export();\n\n this.logger.console(chalk.green(`Exported ${snappedComponents.length} components`));\n\n // Switch back to main\n await this.switchToLane('main');\n\n return (\n outputIfExists('new components', 'first version for components', addedComponents) +\n outputIfExists('changed components', 'components that got a version bump', changedComponents) +\n outputIdsIfExists('removed components', removedComponents) +\n warningsOutput +\n chalk.green(`\\n${snappedComponents.length + autoTaggedCount} component(s) snapped${laneStr}`)\n );\n } catch (e: any) {\n throw new Error(`Unhandled error: ${e.toString()}`);\n } finally {\n // Whatever happens, switch back to the original lane\n this.logger.console('🔄 Cleanup');\n this.logger.console(chalk.blue(`Switching back to ${originalLane?.name ?? 'main'}`));\n const lane = await this.lanes.getCurrentLane();\n if (!lane) {\n await this.lanes.checkout.checkout({\n head: true,\n });\n } else {\n await this.switchToLane(originalLane?.name ?? 'main');\n }\n }\n }\n\n async mergePr({ message: argMessage, build }: { message?: string; build?: boolean }) {\n let message: string;\n\n if (argMessage) {\n message = argMessage;\n } else {\n const commitMessage = await this.getGitCommitMessage();\n if (!commitMessage) {\n return { code: 1, data: 'Failed to get commit message' };\n }\n message = commitMessage;\n }\n\n const currentLane = await this.lanes.getCurrentLane();\n\n await this.lanes.checkout.checkout({\n forceOurs: true,\n head: true,\n skipNpmInstall: true,\n });\n\n if (currentLane) {\n this.logger.console(chalk.blue(`Currently on lane ${currentLane.name}, switching to main`));\n await this.switchToLane('main', { skipDependencyInstallation: true });\n this.logger.console(chalk.green('Switched to main'));\n }\n\n await this.checkout.checkout({\n forceOurs: true,\n head: true,\n main: true,\n mergeStrategy: 'ours',\n workspaceOnly: true,\n skipNpmInstall: true,\n });\n\n const { code, data, status } = await this.verifyWorkspaceStatusInternal();\n if (code !== 0) return { code, data };\n\n const hasSoftTaggedComponents = status.softTaggedComponents.length > 0;\n\n this.logger.console('📦 Component Operations');\n this.logger.console(chalk.blue('Tagging components'));\n await this.snapping.tag({\n all: true,\n message,\n build,\n failFast: true,\n persist: hasSoftTaggedComponents,\n });\n this.logger.console(chalk.green('Tagged components'));\n\n this.logger.console(chalk.blue('Exporting components'));\n await this.exporter.export();\n this.logger.console(chalk.green('Exported components'));\n\n this.logger.console('🔄 Git Operations');\n // Set user.email and user.name\n await git.addConfig('user.email', 'bit-ci[bot]@bit.cloud');\n await git.addConfig('user.name', 'Bit CI');\n\n // Commit the .bitmap and pnpm-lock.yaml files using Git\n await git.add(['.bitmap', 'pnpm-lock.yaml']);\n await git.commit('chore: update .bitmap and pnpm-lock.yaml');\n\n // Push the commit to the remote repository\n await git.push('origin', 'main');\n\n this.logger.console(chalk.green('Merged PR'));\n\n if (currentLane) {\n this.logger.console('🗑️ Lane Cleanup');\n const laneId = currentLane.id;\n this.logger.console(chalk.blue(`Archiving lane ${laneId.toString()}`));\n const archiveLane = await this.lanes.removeLanes([laneId()]);\n if (archiveLane) {\n this.logger.console(chalk.green('Lane archived'));\n } else {\n this.logger.console(chalk.yellow('Failed to archive lane'));\n }\n }\n\n return { code: 0, data: '' };\n }\n}\n\n// @ts-ignore\nCiAspect.addRuntime(CiMain);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_cli","data","require","_logger","_workspace","_builder","_status","_lanes","_snapping","_export","_importer","_checkout","_legacy","_chalk","_interopRequireDefault","_ci","_ci2","_verify","_pr","_merge","_git","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CiMain","constructor","workspace","builder","status","lanes","snapping","exporter","importer","checkout","logger","provider","cli","loggerAspect","createLogger","CiAspect","id","ci","ciCmd","CiCmd","commands","CiVerifyCmd","CiPrCmd","CiMergeCmd","register","getBranchName","process","env","GITHUB_HEAD_REF","branch","git","current","Error","toString","getDefaultBranchName","result","raw","defaultBranch","trim","split","pop","branches","all","includes","console","chalk","yellow","getGitCommitMessage","commit","log","maxCount","latest","message","body","verifyWorkspaceStatusInternal","strict","blue","ignoreCircularDependencies","componentsWithErrors","componentsWithIssues","issues","hasTagBlockerIssues","componentsWithWarnings","red","code","green","switchToLane","laneName","options","switchLanes","forceOurs","head","workspaceOnly","catch","verifyWorkspaceStatus","components","list","build","throwErrorsIfExist","snapPrCommit","originalLane","getCurrentLane","laneId","parseLaneId","import","ids","installNpmPackages","writeConfigFiles","availableLanesInScope","getLanes","remote","scope","newLaneExists","find","lane","name","importLaneObject","consumer","setCurrentLane","laneIds","toComponentIds","compId","bitMap","updateComponentId","write","importCurrentObjects","createdLane","createLane","forkLaneNewScope","currentLane","results","snap","exitOnFirstFailedTask","unmodified","snappedComponents","autoSnappedResults","warnings","newComponents","removedComponents","changedComponents","component","searchWithoutVersion","addedComponents","autoTaggedCount","warningsOutput","join","compInBold","version","hasVersion","bold","toStringWithoutVersion","outputComponents","comps","map","componentOutput","autoTag","triggeredBy","autoTagComp","a","AUTO_SNAPPED_MSG","outputIfExists","label","explanation","underline","laneStr","export","outputIdsIfExists","mergePr","argMessage","commitMessage","skipNpmInstall","skipDependencyInstallation","main","mergeStrategy","hasSoftTaggedComponents","softTaggedComponents","tag","failFast","persist","addConfig","add","archiveLane","removeLanes","exports","MainRuntime","CLIAspect","WorkspaceAspect","LoggerAspect","BuilderAspect","StatusAspect","LanesAspect","SnappingAspect","ExportAspect","ImporterAspect","CheckoutAspect","addRuntime"],"sources":["ci.main.runtime.ts"],"sourcesContent":["import type { RuntimeDefinition } from '@teambit/harmony';\nimport { CLIAspect, type CLIMain, MainRuntime } from '@teambit/cli';\nimport { LoggerAspect, type LoggerMain, type Logger } from '@teambit/logger';\nimport { WorkspaceAspect, type Workspace } from '@teambit/workspace';\nimport { BuilderAspect, type BuilderMain } from '@teambit/builder';\nimport { StatusAspect, type StatusMain } from '@teambit/status';\nimport { LanesAspect, type LanesMain } from '@teambit/lanes';\nimport { SnappingAspect, SnapResults, type SnappingMain } from '@teambit/snapping';\nimport { ExportAspect, type ExportMain } from '@teambit/export';\nimport { ImporterAspect, type ImporterMain } from '@teambit/importer';\nimport { CheckoutAspect, type CheckoutMain } from '@teambit/checkout';\nimport { ComponentID } from '@teambit/component-id';\nimport { ConsumerComponent } from '@teambit/legacy.consumer-component';\nimport { AUTO_SNAPPED_MSG } from '@teambit/legacy.constants';\nimport { outputIdsIfExists } from '@teambit/snapping';\nimport { SwitchLaneOptions } from '@teambit/lanes';\nimport chalk from 'chalk';\nimport { CiAspect } from './ci.aspect';\nimport { CiCmd } from './ci.cmd';\nimport { CiVerifyCmd } from './commands/verify.cmd';\nimport { CiPrCmd } from './commands/pr.cmd';\nimport { CiMergeCmd } from './commands/merge.cmd';\nimport { git } from './git';\n\nexport class CiMain {\n static runtime = MainRuntime as RuntimeDefinition;\n\n static dependencies: any = [\n CLIAspect,\n WorkspaceAspect,\n LoggerAspect,\n BuilderAspect,\n StatusAspect,\n LanesAspect,\n SnappingAspect,\n ExportAspect,\n ImporterAspect,\n CheckoutAspect,\n ];\n\n static slots: any = [];\n\n constructor(\n private workspace: Workspace,\n\n private builder: BuilderMain,\n\n private status: StatusMain,\n\n private lanes: LanesMain,\n\n private snapping: SnappingMain,\n\n private exporter: ExportMain,\n\n private importer: ImporterMain,\n\n private checkout: CheckoutMain,\n\n private logger: Logger\n ) {}\n\n static async provider([\n cli,\n workspace,\n loggerAspect,\n builder,\n status,\n lanes,\n snapping,\n exporter,\n importer,\n checkout,\n ]: [\n CLIMain,\n Workspace,\n LoggerMain,\n BuilderMain,\n StatusMain,\n LanesMain,\n SnappingMain,\n ExportMain,\n ImporterMain,\n CheckoutMain,\n ]) {\n const logger = loggerAspect.createLogger(CiAspect.id);\n\n const ci = new CiMain(workspace, builder, status, lanes, snapping, exporter, importer, checkout, logger);\n\n const ciCmd = new CiCmd(workspace, logger);\n\n ciCmd.commands = [\n new CiVerifyCmd(workspace, logger, ci),\n new CiPrCmd(workspace, logger, ci),\n new CiMergeCmd(workspace, logger, ci),\n ];\n\n cli.register(ciCmd);\n return ci;\n }\n\n async getBranchName() {\n try {\n // if we are running on github, use the GITHUB_HEAD_REF env var\n if (process.env.GITHUB_HEAD_REF) return process.env.GITHUB_HEAD_REF;\n\n const branch = await git.branch();\n return branch.current;\n } catch (e: any) {\n throw new Error(`Unable to read branch: ${e.toString()}`);\n }\n }\n\n async getDefaultBranchName() {\n try {\n // Try to get the default branch from git symbolic-ref\n const result = await git.raw(['symbolic-ref', 'refs/remotes/origin/HEAD']);\n const defaultBranch = result.trim().split('/').pop();\n return defaultBranch || 'master';\n } catch (e: any) {\n // Fallback to common default branch names\n try {\n const branches = await git.branch(['-r']);\n if (branches.all.includes('origin/main')) return 'main';\n if (branches.all.includes('origin/master')) return 'master';\n return 'master'; // Final fallback\n } catch {\n this.logger.console(chalk.yellow(`Unable to detect default branch, using 'master': ${e.toString()}`));\n return 'master';\n }\n }\n }\n\n async getGitCommitMessage() {\n try {\n const commit = await git.log({\n maxCount: 1,\n });\n if (!commit.latest) {\n return null;\n }\n const { message, body } = commit.latest;\n return body ? `${message}\\n\\n${body}` : message;\n } catch (e: any) {\n throw new Error(`Unable to read commit message: ${e.toString()}`);\n }\n }\n\n private async verifyWorkspaceStatusInternal(strict: boolean = false) {\n this.logger.console('📊 Workspace Status');\n this.logger.console(chalk.blue('Verifying status of workspace'));\n const status = await this.status.status({\n lanes: true,\n ignoreCircularDependencies: false,\n });\n\n // Check for blocking issues (errors) vs warnings\n const componentsWithErrors = status.componentsWithIssues.filter(({ issues }) => issues.hasTagBlockerIssues());\n\n const componentsWithWarnings = status.componentsWithIssues.filter(({ issues }) => !issues.hasTagBlockerIssues());\n\n if (componentsWithWarnings.length > 0) {\n if (strict) {\n this.logger.console(\n chalk.red(\n `Found ${componentsWithWarnings.length} components with warnings (strict mode), run 'bit status' to see the warnings.`\n )\n );\n return { code: 1, data: '', status };\n } else {\n this.logger.console(\n chalk.yellow(\n `Found ${componentsWithWarnings.length} components with warnings, run 'bit status' to see the warnings.`\n )\n );\n }\n }\n\n if (componentsWithErrors.length > 0) {\n this.logger.console(\n chalk.red(`Found ${componentsWithErrors.length} components with errors, run 'bit status' to see the errors.`)\n );\n return { code: 1, data: '', status };\n }\n\n this.logger.console(chalk.green('Workspace status is correct'));\n return { code: 0, data: '', status };\n }\n\n private async switchToLane(laneName: string, options: SwitchLaneOptions = {}) {\n this.logger.console(chalk.blue(`Switching to ${laneName}`));\n await this.lanes\n .switchLanes(laneName, {\n forceOurs: true,\n head: true,\n workspaceOnly: true,\n ...options,\n })\n .catch((e) => {\n if (e.toString().includes('already checked out')) {\n this.logger.console(chalk.yellow(`Lane ${laneName} already checked out, skipping checkout`));\n return true;\n }\n this.logger.console(chalk.red(`Failed to checkout lane ${laneName}: ${e.toString()}`));\n return null;\n });\n }\n\n async verifyWorkspaceStatus() {\n const { code, data } = await this.verifyWorkspaceStatusInternal();\n if (code !== 0) return { code, data };\n\n this.logger.console('🔨 Build Process');\n const components = await this.workspace.list();\n\n this.logger.console(chalk.blue(`Building ${components.length} components`));\n\n const build = await this.builder.build(components);\n\n build.throwErrorsIfExist();\n\n this.logger.console(chalk.green('Components built'));\n\n return { code: 0, data: '' };\n }\n\n async snapPrCommit({\n branch,\n message,\n build,\n strict,\n }: {\n branch: string;\n message: string;\n build: boolean | undefined;\n strict: boolean | undefined;\n }) {\n this.logger.console(chalk.blue(`Branch name: ${branch}`));\n\n const originalLane = await this.lanes.getCurrentLane();\n\n const laneId = await this.lanes.parseLaneId(branch);\n\n if (!laneId) {\n this.logger.console(chalk.yellow(`No lane found for branch ${branch}`));\n return { code: 1, data: '' };\n }\n\n const { code, data } = await this.verifyWorkspaceStatusInternal(strict);\n if (code !== 0) return { code, data };\n\n await this.importer\n .import({\n ids: [],\n installNpmPackages: false,\n writeConfigFiles: false,\n })\n .catch((e) => {\n throw new Error(`Failed to import components: ${e.toString()}`);\n });\n\n try {\n this.logger.console('🔄 Lane Management');\n const availableLanesInScope = await this.lanes\n .getLanes({\n remote: laneId.scope,\n })\n .catch((e) => {\n throw new Error(`Failed to get lanes in scope ${laneId.scope}: ${e.toString()}`);\n });\n\n const newLaneExists = availableLanesInScope.find((lane) => lane.id.name === laneId.name);\n\n if (newLaneExists) {\n const lane = await this.lanes.importLaneObject(laneId, true);\n this.workspace.consumer.setCurrentLane(laneId, true);\n const laneIds = lane.toComponentIds();\n laneIds.forEach((compId) => this.workspace.consumer.bitMap.updateComponentId(compId));\n await this.workspace.bitMap.write();\n await this.importer.importCurrentObjects();\n\n this.logger.console(chalk.green(`Imported lane ${laneId.toString()}`));\n } else {\n this.logger.console(chalk.blue(`Creating lane ${laneId.toString()}`));\n\n const createdLane = await this.lanes\n .createLane(laneId.name, {\n scope: laneId.scope,\n forkLaneNewScope: true,\n })\n .catch((e) => {\n if (e.toString().includes('already exists')) {\n this.logger.console(chalk.yellow(`Lane ${laneId.toString()} already exists, skipping creation`));\n return true;\n }\n this.logger.console(chalk.red(`Failed to create lane ${laneId.toString()}: ${e.toString()}`));\n return null;\n });\n\n if (!createdLane) {\n return { code: 1, data: '' };\n }\n }\n\n const currentLane = await this.lanes.getCurrentLane();\n\n this.logger.console(chalk.blue(`Current lane: ${currentLane?.name ?? 'main'}`));\n\n if (currentLane?.name === laneId.name) {\n this.logger.console(chalk.yellow(`Current lane is already ${laneId.name}, skipping switch`));\n } else {\n await this.switchToLane(laneId.toString());\n }\n\n this.logger.console('📦 Snapping Components');\n const results = await this.snapping.snap({\n message,\n build,\n exitOnFirstFailedTask: true,\n unmodified: false,\n });\n\n if (!results) {\n this.logger.console(chalk.yellow('No changes detected, nothing to snap'));\n this.logger.console(chalk.green('Lane is up to date'));\n return { code: 0, data: 'No changes detected, nothing to snap' };\n }\n\n const {\n snappedComponents,\n autoSnappedResults,\n warnings,\n newComponents,\n laneName,\n removedComponents,\n }: SnapResults = results;\n const changedComponents = snappedComponents.filter((component) => {\n return (\n !newComponents.searchWithoutVersion(component.id) && !removedComponents?.searchWithoutVersion(component.id)\n );\n });\n const addedComponents = snappedComponents.filter((component) => newComponents.searchWithoutVersion(component.id));\n const autoTaggedCount = autoSnappedResults ? autoSnappedResults.length : 0;\n\n const warningsOutput = warnings?.length ? `${chalk.yellow(warnings.join('\\n'))}\\n\\n` : '';\n\n const compInBold = (id: ComponentID) => {\n const version = id.hasVersion() ? `@${id.version}` : '';\n return `${chalk.bold(id.toStringWithoutVersion())}${version}`;\n };\n\n const outputComponents = (comps: ConsumerComponent[]) => {\n return comps\n .map((component) => {\n let componentOutput = ` > ${compInBold(component.id)}`;\n const autoTag = autoSnappedResults.filter((result) =>\n result.triggeredBy.searchWithoutVersion(component.id)\n );\n if (autoTag.length) {\n const autoTagComp = autoTag.map((a) =>\n // @ts-ignore\n compInBold(a.component.id)\n );\n componentOutput += `\\n ${AUTO_SNAPPED_MSG} (${autoTagComp.length} total):\n ${autoTagComp.join('\\n ')}`;\n }\n return componentOutput;\n })\n .join('\\n');\n };\n\n const outputIfExists = (label, explanation, components) => {\n if (!components.length) return '';\n return `\\n${chalk.underline(label)}\\n(${explanation})\\n${outputComponents(components)}\\n`;\n };\n\n const laneStr = laneName ? ` on \"${laneName}\" lane` : '';\n\n this.logger.console(chalk.blue(`Exporting ${snappedComponents.length} components`));\n\n await this.exporter.export();\n\n this.logger.console(chalk.green(`Exported ${snappedComponents.length} components`));\n\n // Switch back to main\n await this.switchToLane('main');\n\n return (\n outputIfExists('new components', 'first version for components', addedComponents) +\n outputIfExists('changed components', 'components that got a version bump', changedComponents) +\n outputIdsIfExists('removed components', removedComponents) +\n warningsOutput +\n chalk.green(`\\n${snappedComponents.length + autoTaggedCount} component(s) snapped${laneStr}`)\n );\n } catch (e: any) {\n throw new Error(`Unhandled error: ${e.toString()}`);\n } finally {\n // Whatever happens, switch back to the original lane\n this.logger.console('🔄 Cleanup');\n this.logger.console(chalk.blue(`Switching back to ${originalLane?.name ?? 'main'}`));\n const lane = await this.lanes.getCurrentLane();\n if (!lane) {\n await this.lanes.checkout.checkout({\n head: true,\n });\n } else {\n await this.switchToLane(originalLane?.name ?? 'main');\n }\n }\n }\n\n async mergePr({ message: argMessage, build, strict }: { message?: string; build?: boolean; strict?: boolean }) {\n let message: string;\n\n if (argMessage) {\n message = argMessage;\n } else {\n const commitMessage = await this.getGitCommitMessage();\n if (!commitMessage) {\n return { code: 1, data: 'Failed to get commit message' };\n }\n message = commitMessage;\n }\n\n const currentLane = await this.lanes.getCurrentLane();\n\n await this.lanes.checkout.checkout({\n forceOurs: true,\n head: true,\n skipNpmInstall: true,\n });\n\n if (currentLane) {\n this.logger.console(chalk.blue(`Currently on lane ${currentLane.name}, switching to main`));\n await this.switchToLane('main', { skipDependencyInstallation: true });\n this.logger.console(chalk.green('Switched to main'));\n }\n\n await this.checkout.checkout({\n forceOurs: true,\n head: true,\n main: true,\n mergeStrategy: 'ours',\n workspaceOnly: true,\n skipNpmInstall: true,\n });\n\n const { code, data, status } = await this.verifyWorkspaceStatusInternal(strict);\n if (code !== 0) return { code, data };\n\n const hasSoftTaggedComponents = status.softTaggedComponents.length > 0;\n\n this.logger.console('📦 Component Operations');\n this.logger.console(chalk.blue('Tagging components'));\n await this.snapping.tag({\n all: true,\n message,\n build,\n failFast: true,\n persist: hasSoftTaggedComponents,\n });\n this.logger.console(chalk.green('Tagged components'));\n\n this.logger.console(chalk.blue('Exporting components'));\n await this.exporter.export();\n this.logger.console(chalk.green('Exported components'));\n\n this.logger.console('🔄 Git Operations');\n // Set user.email and user.name\n await git.addConfig('user.email', 'bit-ci[bot]@bit.cloud');\n await git.addConfig('user.name', 'Bit CI');\n\n // Commit the .bitmap and pnpm-lock.yaml files using Git\n await git.add(['.bitmap', 'pnpm-lock.yaml']);\n await git.commit('chore: update .bitmap and pnpm-lock.yaml');\n\n // Push the commit to the remote repository\n const defaultBranch = await this.getDefaultBranchName();\n await git.push('origin', defaultBranch);\n\n this.logger.console(chalk.green('Merged PR'));\n\n if (currentLane) {\n this.logger.console('🗑️ Lane Cleanup');\n const laneId = currentLane.id;\n this.logger.console(chalk.blue(`Archiving lane ${laneId.toString()}`));\n const archiveLane = await this.lanes.removeLanes([laneId()]);\n if (archiveLane) {\n this.logger.console(chalk.green('Lane archived'));\n } else {\n this.logger.console(chalk.yellow('Failed to archive lane'));\n }\n }\n\n return { code: 0, data: '' };\n }\n}\n\n// @ts-ignore\nCiAspect.addRuntime(CiMain);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,7 +22,7 @@ class CiMergeCmd {
|
|
|
22
22
|
_defineProperty(this, "name", 'merge');
|
|
23
23
|
_defineProperty(this, "description", 'Merges a PR');
|
|
24
24
|
_defineProperty(this, "group", 'collaborate');
|
|
25
|
-
_defineProperty(this, "options", [['m', 'message <message>', 'If set, use it as the snap message, if not, try and grab from git-commit-message'], ['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI']]);
|
|
25
|
+
_defineProperty(this, "options", [['m', 'message <message>', 'If set, use it as the snap message, if not, try and grab from git-commit-message'], ['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI'], ['s', 'strict', 'Set to true to fail on warnings as well as errors, false (default) only fails on errors']]);
|
|
26
26
|
}
|
|
27
27
|
async report(args, options) {
|
|
28
28
|
this.logger.console('\n\n');
|
|
@@ -30,7 +30,8 @@ class CiMergeCmd {
|
|
|
30
30
|
if (!this.workspace) throw new (_workspace().OutsideWorkspaceError)();
|
|
31
31
|
return this.ci.mergePr({
|
|
32
32
|
message: options.message,
|
|
33
|
-
build: options.build
|
|
33
|
+
build: options.build,
|
|
34
|
+
strict: options.strict
|
|
34
35
|
});
|
|
35
36
|
}
|
|
36
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_workspace","data","require","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CiMergeCmd","constructor","workspace","logger","ci","report","args","options","console","OutsideWorkspaceError","mergePr","message","build","exports"],"sources":["merge.cmd.ts"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport type { Logger } from '@teambit/logger';\nimport { OutsideWorkspaceError, type Workspace } from '@teambit/workspace';\nimport { CiMain } from '../ci.main.runtime';\n\ntype Options = {\n message?: string;\n build?: boolean;\n};\n\nexport class CiMergeCmd implements Command {\n name = 'merge';\n description = 'Merges a PR';\n group = 'collaborate';\n\n options: CommandOptions = [\n ['m', 'message <message>', 'If set, use it as the snap message, if not, try and grab from git-commit-message'],\n ['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI'],\n ];\n\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private ci: CiMain\n ) {}\n\n async report(args: unknown, options: Options) {\n this.logger.console('\\n\\n');\n this.logger.console('🚀 Initializing Merge command');\n if (!this.workspace) throw new OutsideWorkspaceError();\n\n return this.ci.mergePr({ message: options.message, build: options.build });\n }\n}\n"],"mappings":";;;;;;AAEA,SAAAA,WAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,UAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA2E,SAAAE,gBAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAD,CAAA,GAAAI,MAAA,CAAAC,cAAA,CAAAL,CAAA,EAAAC,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAT,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAG,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAb,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAAc,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;
|
|
1
|
+
{"version":3,"names":["_workspace","data","require","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CiMergeCmd","constructor","workspace","logger","ci","report","args","options","console","OutsideWorkspaceError","mergePr","message","build","strict","exports"],"sources":["merge.cmd.ts"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport type { Logger } from '@teambit/logger';\nimport { OutsideWorkspaceError, type Workspace } from '@teambit/workspace';\nimport { CiMain } from '../ci.main.runtime';\n\ntype Options = {\n message?: string;\n build?: boolean;\n strict?: boolean;\n};\n\nexport class CiMergeCmd implements Command {\n name = 'merge';\n description = 'Merges a PR';\n group = 'collaborate';\n\n options: CommandOptions = [\n ['m', 'message <message>', 'If set, use it as the snap message, if not, try and grab from git-commit-message'],\n ['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI'],\n ['s', 'strict', 'Set to true to fail on warnings as well as errors, false (default) only fails on errors'],\n ];\n\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private ci: CiMain\n ) {}\n\n async report(args: unknown, options: Options) {\n this.logger.console('\\n\\n');\n this.logger.console('🚀 Initializing Merge command');\n if (!this.workspace) throw new OutsideWorkspaceError();\n\n return this.ci.mergePr({ message: options.message, build: options.build, strict: options.strict });\n }\n}\n"],"mappings":";;;;;;AAEA,SAAAA,WAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,UAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA2E,SAAAE,gBAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAD,CAAA,GAAAI,MAAA,CAAAC,cAAA,CAAAL,CAAA,EAAAC,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAT,CAAA,CAAAC,CAAA,IAAAC,CAAA,EAAAF,CAAA;AAAA,SAAAG,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAb,CAAA,QAAAU,CAAA,GAAAV,CAAA,CAAAc,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AASpE,MAAMgB,UAAU,CAAoB;EAWzCC,WAAWA,CACDC,SAAoB,EACpBC,MAAc,EACdC,EAAU,EAClB;IAAA,KAHQF,SAAoB,GAApBA,SAAoB;IAAA,KACpBC,MAAc,GAAdA,MAAc;IAAA,KACdC,EAAU,GAAVA,EAAU;IAAAvB,eAAA,eAbb,OAAO;IAAAA,eAAA,sBACA,aAAa;IAAAA,eAAA,gBACnB,aAAa;IAAAA,eAAA,kBAEK,CACxB,CAAC,GAAG,EAAE,mBAAmB,EAAE,kFAAkF,CAAC,EAC9G,CAAC,GAAG,EAAE,OAAO,EAAE,+EAA+E,CAAC,EAC/F,CAAC,GAAG,EAAE,QAAQ,EAAE,yFAAyF,CAAC,CAC3G;EAME;EAEH,MAAMwB,MAAMA,CAACC,IAAa,EAAEC,OAAgB,EAAE;IAC5C,IAAI,CAACJ,MAAM,CAACK,OAAO,CAAC,MAAM,CAAC;IAC3B,IAAI,CAACL,MAAM,CAACK,OAAO,CAAC,+BAA+B,CAAC;IACpD,IAAI,CAAC,IAAI,CAACN,SAAS,EAAE,MAAM,KAAIO,kCAAqB,EAAC,CAAC;IAEtD,OAAO,IAAI,CAACL,EAAE,CAACM,OAAO,CAAC;MAAEC,OAAO,EAAEJ,OAAO,CAACI,OAAO;MAAEC,KAAK,EAAEL,OAAO,CAACK,KAAK;MAAEC,MAAM,EAAEN,OAAO,CAACM;IAAO,CAAC,CAAC;EACpG;AACF;AAACC,OAAA,CAAAd,UAAA,GAAAA,UAAA","ignoreList":[]}
|
package/dist/commands/pr.cmd.js
CHANGED
|
@@ -22,7 +22,7 @@ class CiPrCmd {
|
|
|
22
22
|
_defineProperty(this, "name", 'pr');
|
|
23
23
|
_defineProperty(this, "description", 'This command is meant to run when a PR was open/updated and meant to export a lane to bit-cloud.');
|
|
24
24
|
_defineProperty(this, "group", 'collaborate');
|
|
25
|
-
_defineProperty(this, "options", [['m', 'message <message>', 'If set, set it as the snap message, if not, try and grab from git-commit-message'], ['l', 'lane <lane>', 'If set, use as the lane name, if not available, grab from git-branch name'], ['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI']]);
|
|
25
|
+
_defineProperty(this, "options", [['m', 'message <message>', 'If set, set it as the snap message, if not, try and grab from git-commit-message'], ['l', 'lane <lane>', 'If set, use as the lane name, if not available, grab from git-branch name'], ['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI'], ['s', 'strict', 'Set to true to fail on warnings as well as errors, false (default) only fails on errors']]);
|
|
26
26
|
}
|
|
27
27
|
async report(args, options) {
|
|
28
28
|
this.logger.console('\n\n');
|
|
@@ -39,7 +39,9 @@ class CiPrCmd {
|
|
|
39
39
|
if (!currentBranch) {
|
|
40
40
|
throw new Error('Failed to get branch name');
|
|
41
41
|
}
|
|
42
|
-
branch
|
|
42
|
+
// Sanitize branch name to make it valid for Bit lane IDs by replacing slashes with dashes
|
|
43
|
+
const sanitizedBranch = currentBranch.replace(/\//g, '-');
|
|
44
|
+
branch = `${this.workspace.defaultScope}/${sanitizedBranch}`;
|
|
43
45
|
}
|
|
44
46
|
if (options.message) {
|
|
45
47
|
message = options.message;
|
|
@@ -53,7 +55,8 @@ class CiPrCmd {
|
|
|
53
55
|
return this.ci.snapPrCommit({
|
|
54
56
|
branch,
|
|
55
57
|
message,
|
|
56
|
-
build: options.build
|
|
58
|
+
build: options.build,
|
|
59
|
+
strict: options.strict
|
|
57
60
|
});
|
|
58
61
|
}
|
|
59
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_workspace","data","require","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CiPrCmd","constructor","workspace","logger","ci","report","args","options","console","OutsideWorkspaceError","branch","message","lane","currentBranch","getBranchName","catch","Error","toString","defaultScope","commitMessage","getGitCommitMessage","snapPrCommit","build","exports"],"sources":["pr.cmd.ts"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport type { Logger } from '@teambit/logger';\nimport { OutsideWorkspaceError, type Workspace } from '@teambit/workspace';\nimport type { CiMain } from '../ci.main.runtime';\n\ntype Options = {\n message?: string;\n build?: boolean;\n lane?: string;\n};\n\nexport class CiPrCmd implements Command {\n name = 'pr';\n description = 'This command is meant to run when a PR was open/updated and meant to export a lane to bit-cloud.';\n group = 'collaborate';\n\n options: CommandOptions = [\n ['m', 'message <message>', 'If set, set it as the snap message, if not, try and grab from git-commit-message'],\n ['l', 'lane <lane>', 'If set, use as the lane name, if not available, grab from git-branch name'],\n ['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI'],\n ];\n\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private ci: CiMain\n ) {}\n\n async report(args: unknown, options: Options) {\n this.logger.console('\\n\\n');\n this.logger.console('🚀 Initializing PR command');\n if (!this.workspace) throw new OutsideWorkspaceError();\n\n let branch: string;\n let message: string;\n\n if (options.lane) {\n branch = options.lane;\n } else {\n const currentBranch = await this.ci.getBranchName().catch((e) => {\n throw new Error(`Failed to get branch name from Git: ${e.toString()}`);\n });\n if (!currentBranch) {\n throw new Error('Failed to get branch name');\n }\n branch = `${this.workspace.defaultScope}/${
|
|
1
|
+
{"version":3,"names":["_workspace","data","require","_defineProperty","e","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","CiPrCmd","constructor","workspace","logger","ci","report","args","options","console","OutsideWorkspaceError","branch","message","lane","currentBranch","getBranchName","catch","Error","toString","sanitizedBranch","replace","defaultScope","commitMessage","getGitCommitMessage","snapPrCommit","build","strict","exports"],"sources":["pr.cmd.ts"],"sourcesContent":["import type { Command, CommandOptions } from '@teambit/cli';\nimport type { Logger } from '@teambit/logger';\nimport { OutsideWorkspaceError, type Workspace } from '@teambit/workspace';\nimport type { CiMain } from '../ci.main.runtime';\n\ntype Options = {\n message?: string;\n build?: boolean;\n lane?: string;\n strict?: boolean;\n};\n\nexport class CiPrCmd implements Command {\n name = 'pr';\n description = 'This command is meant to run when a PR was open/updated and meant to export a lane to bit-cloud.';\n group = 'collaborate';\n\n options: CommandOptions = [\n ['m', 'message <message>', 'If set, set it as the snap message, if not, try and grab from git-commit-message'],\n ['l', 'lane <lane>', 'If set, use as the lane name, if not available, grab from git-branch name'],\n ['b', 'build', 'Set to true to build the app locally, false (default) will build on Ripple CI'],\n ['s', 'strict', 'Set to true to fail on warnings as well as errors, false (default) only fails on errors'],\n ];\n\n constructor(\n private workspace: Workspace,\n private logger: Logger,\n private ci: CiMain\n ) {}\n\n async report(args: unknown, options: Options) {\n this.logger.console('\\n\\n');\n this.logger.console('🚀 Initializing PR command');\n if (!this.workspace) throw new OutsideWorkspaceError();\n\n let branch: string;\n let message: string;\n\n if (options.lane) {\n branch = options.lane;\n } else {\n const currentBranch = await this.ci.getBranchName().catch((e) => {\n throw new Error(`Failed to get branch name from Git: ${e.toString()}`);\n });\n if (!currentBranch) {\n throw new Error('Failed to get branch name');\n }\n // Sanitize branch name to make it valid for Bit lane IDs by replacing slashes with dashes\n const sanitizedBranch = currentBranch.replace(/\\//g, '-');\n branch = `${this.workspace.defaultScope}/${sanitizedBranch}`;\n }\n\n if (options.message) {\n message = options.message;\n } else {\n const commitMessage = await this.ci.getGitCommitMessage();\n if (!commitMessage) {\n throw new Error('Failed to get commit message');\n }\n message = commitMessage;\n }\n\n return this.ci.snapPrCommit({\n branch,\n message,\n build: options.build,\n strict: options.strict,\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
;
|
|
2
|
-
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.git_ci@0.0.
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.git_ci@0.0.4/dist/ci.docs.mdx';
|
|
3
3
|
|
|
4
4
|
export const compositions = [];
|
|
5
5
|
export const overview = [overview_0];
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/ci",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/git/ci",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.git",
|
|
8
8
|
"name": "ci",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.4"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"chalk": "4.1.2",
|