hub-launch 1.20.0 → 1.22.0
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/CHANGELOG.md +22 -0
- package/README.md +69 -14
- package/dist/commands/init.d.ts +21 -2
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +121 -38
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/launch.d.ts +91 -0
- package/dist/commands/launch.d.ts.map +1 -1
- package/dist/commands/launch.js +885 -144
- package/dist/commands/launch.js.map +1 -1
- package/dist/commands/login.d.ts +38 -0
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +107 -11
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/upload.d.ts +9 -2
- package/dist/commands/upload.d.ts.map +1 -1
- package/dist/commands/upload.js +16 -6
- package/dist/commands/upload.js.map +1 -1
- package/dist/scripts/launch-run.d.ts +6 -0
- package/dist/scripts/launch-run.d.ts.map +1 -1
- package/dist/scripts/launch-run.js +70 -9
- package/dist/scripts/launch-run.js.map +1 -1
- package/dist/services/api/HulaApiClient.d.ts +53 -0
- package/dist/services/api/HulaApiClient.d.ts.map +1 -1
- package/dist/services/api/HulaApiClient.js +18 -0
- package/dist/services/api/HulaApiClient.js.map +1 -1
- package/dist/services/git/FilePublishService.d.ts +9 -1
- package/dist/services/git/FilePublishService.d.ts.map +1 -1
- package/dist/services/git/FilePublishService.js +13 -3
- package/dist/services/git/FilePublishService.js.map +1 -1
- package/dist/services/git/GitService.d.ts +19 -0
- package/dist/services/git/GitService.d.ts.map +1 -1
- package/dist/services/git/GitService.js +56 -31
- package/dist/services/git/GitService.js.map +1 -1
- package/dist/services/git/WorktreeService.d.ts +9 -0
- package/dist/services/git/WorktreeService.d.ts.map +1 -1
- package/dist/services/git/WorktreeService.js +6 -3
- package/dist/services/git/WorktreeService.js.map +1 -1
- package/dist/services/group/GroupLaunchService.d.ts +230 -0
- package/dist/services/group/GroupLaunchService.d.ts.map +1 -0
- package/dist/services/group/GroupLaunchService.js +282 -0
- package/dist/services/group/GroupLaunchService.js.map +1 -0
- package/dist/templates/skills/hula-help/SKILL.md +1 -1
- package/dist/templates/skills/hula-launch/SKILL.md +38 -1
- package/dist/templates/skills/hula-schedule/SKILL.md +3 -3
- package/dist/utils/config-file-edit.d.ts +23 -0
- package/dist/utils/config-file-edit.d.ts.map +1 -0
- package/dist/utils/config-file-edit.js +37 -0
- package/dist/utils/config-file-edit.js.map +1 -0
- package/dist/utils/ephemeral-credentials.d.ts +8 -0
- package/dist/utils/ephemeral-credentials.d.ts.map +1 -1
- package/dist/utils/ephemeral-credentials.js +2 -1
- package/dist/utils/ephemeral-credentials.js.map +1 -1
- package/dist/utils/github-cli.d.ts +1 -1
- package/dist/utils/github-cli.d.ts.map +1 -1
- package/dist/utils/github-cli.js +15 -7
- package/dist/utils/github-cli.js.map +1 -1
- package/dist/utils/project-resolver.d.ts +1 -1
- package/dist/utils/project-resolver.d.ts.map +1 -1
- package/dist/utils/project-resolver.js +2 -2
- package/dist/utils/project-resolver.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launch-run.d.ts","sourceRoot":"","sources":["../../src/scripts/launch-run.ts"],"names":[],"mappings":"AAGA
|
|
1
|
+
{"version":3,"file":"launch-run.d.ts","sourceRoot":"","sources":["../../src/scripts/launch-run.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA+IpD"}
|
|
@@ -5,6 +5,12 @@ import { emitJson, fail, logStderr, runScript } from './lib/io.js';
|
|
|
5
5
|
* Invoked as:
|
|
6
6
|
* `hula script launch-run -- <plan-path> <branch-name> [--handoff <username>] [--test] [--skip-regression] [--kill] [--kill-and-relaunch]`
|
|
7
7
|
* `hula script launch-run -- <branch-name> --kill` (cancel only; no plan path)
|
|
8
|
+
* `hula script launch-run -- <branch-name> --folder <path> [--group-id <id>] [--plan <repo>=<path> ...]`
|
|
9
|
+
*
|
|
10
|
+
* NOTE: this `--folder` (a PARENT directory that contains sibling repos) is
|
|
11
|
+
* DIFFERENT from /hula-plan's `--folder` (a plans SUBDIRECTORY). In folder mode
|
|
12
|
+
* the plan path is resolved per repository, so the positional plan path is not
|
|
13
|
+
* used — a single positional is the branch name (mirrors the --kill re-homing).
|
|
8
14
|
*
|
|
9
15
|
* Performs: hula launch (which handles plan upload automatically).
|
|
10
16
|
* Emits structured JSON to stdout; all other output goes to stderr.
|
|
@@ -22,6 +28,9 @@ export function main(args) {
|
|
|
22
28
|
let skipRegression = false;
|
|
23
29
|
let kill = false;
|
|
24
30
|
let killAndRelaunch = false;
|
|
31
|
+
let folder = '';
|
|
32
|
+
let groupId = '';
|
|
33
|
+
const planOverrides = [];
|
|
25
34
|
for (let i = 0; i < args.length; i++) {
|
|
26
35
|
const a = args[i];
|
|
27
36
|
if (a === '--handoff') {
|
|
@@ -42,6 +51,24 @@ export function main(args) {
|
|
|
42
51
|
else if (a === '--kill-and-relaunch') {
|
|
43
52
|
killAndRelaunch = true;
|
|
44
53
|
}
|
|
54
|
+
else if (a === '--folder') {
|
|
55
|
+
folder = args[++i] ?? '';
|
|
56
|
+
}
|
|
57
|
+
else if (a.startsWith('--folder=')) {
|
|
58
|
+
folder = a.slice('--folder='.length);
|
|
59
|
+
}
|
|
60
|
+
else if (a === '--group-id') {
|
|
61
|
+
groupId = args[++i] ?? '';
|
|
62
|
+
}
|
|
63
|
+
else if (a.startsWith('--group-id=')) {
|
|
64
|
+
groupId = a.slice('--group-id='.length);
|
|
65
|
+
}
|
|
66
|
+
else if (a === '--plan') {
|
|
67
|
+
planOverrides.push(args[++i] ?? '');
|
|
68
|
+
}
|
|
69
|
+
else if (a.startsWith('--plan=')) {
|
|
70
|
+
planOverrides.push(a.slice('--plan='.length));
|
|
71
|
+
}
|
|
45
72
|
else if (!planPath) {
|
|
46
73
|
planPath = a;
|
|
47
74
|
}
|
|
@@ -55,15 +82,17 @@ export function main(args) {
|
|
|
55
82
|
if (kill && killAndRelaunch) {
|
|
56
83
|
fail(1, '--kill and --kill-and-relaunch cannot be used together');
|
|
57
84
|
}
|
|
58
|
-
if (kill) {
|
|
59
|
-
// kill
|
|
60
|
-
// landed in planPath, so re-home it as the branch
|
|
85
|
+
if (folder || kill) {
|
|
86
|
+
// Folder mode and bare --kill both need ONLY the branch name; if a single
|
|
87
|
+
// positional was given it landed in planPath, so re-home it as the branch.
|
|
61
88
|
if (!branchName) {
|
|
62
89
|
branchName = planPath;
|
|
63
90
|
planPath = '';
|
|
64
91
|
}
|
|
65
92
|
if (!branchName) {
|
|
66
|
-
fail(1,
|
|
93
|
+
fail(1, folder
|
|
94
|
+
? 'Usage: hula script launch-run -- <branch-name> --folder <path>'
|
|
95
|
+
: 'Usage: hula script launch-run -- <branch-name> --kill');
|
|
67
96
|
}
|
|
68
97
|
}
|
|
69
98
|
else if (!planPath || !branchName) {
|
|
@@ -74,17 +103,37 @@ export function main(args) {
|
|
|
74
103
|
fail(1, `Invalid plan path (path traversal not allowed): ${planPath}`);
|
|
75
104
|
}
|
|
76
105
|
// ── Step 4: Run hula launch ───────────────────────────────────────────
|
|
77
|
-
if (kill) {
|
|
106
|
+
if (folder && kill) {
|
|
107
|
+
logStderr(`🛑 Stopping in-flight tasks for group under: ${folder}`);
|
|
108
|
+
}
|
|
109
|
+
else if (folder) {
|
|
110
|
+
logStderr(`🚀 Launching feature group under: ${folder}`);
|
|
111
|
+
}
|
|
112
|
+
else if (kill) {
|
|
78
113
|
logStderr(`🛑 Stopping in-flight task for branch: ${branchName}`);
|
|
79
114
|
}
|
|
80
115
|
else {
|
|
81
116
|
logStderr(`🚀 Launching issue from plan: ${planPath}`);
|
|
82
117
|
}
|
|
83
118
|
// Branch name is always first; the plan path is a positional appended only
|
|
84
|
-
// when present (a bare --kill
|
|
119
|
+
// when present (folder mode and a bare --kill send no plan path).
|
|
85
120
|
const launchArgs = ['launch', branchName];
|
|
86
|
-
if (planPath && !kill)
|
|
121
|
+
if (planPath && !kill && !folder)
|
|
87
122
|
launchArgs.push(planPath);
|
|
123
|
+
if (folder)
|
|
124
|
+
launchArgs.push('--folder', folder);
|
|
125
|
+
// The CLI runs here as a piped subprocess (never a TTY). --yes opts the
|
|
126
|
+
// group launch into plan auto-resolve without requiring a --plan override
|
|
127
|
+
// per repo, and skips the interactive confirmation (the roster stays in
|
|
128
|
+
// cliOutput as the record). Explicit --plan overrides still win.
|
|
129
|
+
if (folder && !kill)
|
|
130
|
+
launchArgs.push('--yes');
|
|
131
|
+
if (groupId)
|
|
132
|
+
launchArgs.push('--group-id', groupId);
|
|
133
|
+
for (const override of planOverrides) {
|
|
134
|
+
if (override)
|
|
135
|
+
launchArgs.push('--plan', override);
|
|
136
|
+
}
|
|
88
137
|
if (handoff)
|
|
89
138
|
launchArgs.push('--handoff', handoff);
|
|
90
139
|
if (test)
|
|
@@ -100,9 +149,19 @@ export function main(args) {
|
|
|
100
149
|
if (launch.code !== 0) {
|
|
101
150
|
fail(2, `Launch failed: ${launchOutput}`);
|
|
102
151
|
}
|
|
103
|
-
// Extract issue number from CLI output (e.g. "Created issue #42").
|
|
104
|
-
|
|
152
|
+
// Extract issue number from CLI output (e.g. "Created issue #42"). In folder
|
|
153
|
+
// mode issue numbers are per-repo, so this is left empty and the skill
|
|
154
|
+
// renders the group summary from cliOutput instead.
|
|
155
|
+
const match = folder ? null : launchOutput.match(/#[0-9]+/);
|
|
105
156
|
const issueNumber = match ? match[0].replace('#', '') : '';
|
|
157
|
+
// In folder mode the group id is either supplied or generated by the CLI;
|
|
158
|
+
// recover the generated id from the CLI's roster line ("Feature group: <id>").
|
|
159
|
+
let resolvedGroupId = groupId;
|
|
160
|
+
if (folder && !resolvedGroupId) {
|
|
161
|
+
const gm = launchOutput.match(/Feature group: ([A-Za-z0-9_-]{1,64})/);
|
|
162
|
+
if (gm)
|
|
163
|
+
resolvedGroupId = gm[1];
|
|
164
|
+
}
|
|
106
165
|
// ── Output result ─────────────────────────────────────────────────────
|
|
107
166
|
emitJson({
|
|
108
167
|
status: 'success',
|
|
@@ -110,6 +169,8 @@ export function main(args) {
|
|
|
110
169
|
branchName,
|
|
111
170
|
planPath,
|
|
112
171
|
handoff,
|
|
172
|
+
folder,
|
|
173
|
+
groupId: resolvedGroupId,
|
|
113
174
|
cliOutput: launchOutput,
|
|
114
175
|
});
|
|
115
176
|
}, args);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"launch-run.js","sourceRoot":"","sources":["../../src/scripts/launch-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEnE
|
|
1
|
+
{"version":3,"file":"launch-run.js","sourceRoot":"","sources":["../../src/scripts/launch-run.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,6 +47,44 @@ export interface TrackPlanRequest {
|
|
|
47
47
|
planPath?: string;
|
|
48
48
|
copilotAssigned?: boolean;
|
|
49
49
|
}
|
|
50
|
+
/**
|
|
51
|
+
* One plan entry in a feature-group status response (hula-server PR #505,
|
|
52
|
+
* `GET /api/v1/groups/:groupId`).
|
|
53
|
+
*/
|
|
54
|
+
export interface GroupPlanEntry {
|
|
55
|
+
id: string;
|
|
56
|
+
trackingName: string;
|
|
57
|
+
trackingStatus: string;
|
|
58
|
+
prNumber: number | null;
|
|
59
|
+
prUrl: string | null;
|
|
60
|
+
prMerged: boolean;
|
|
61
|
+
deploymentStatus: string | null;
|
|
62
|
+
prConflictStatus: string | null;
|
|
63
|
+
githubState: string | null;
|
|
64
|
+
issueNumber: number | null;
|
|
65
|
+
githubUrl: string | null;
|
|
66
|
+
updatedAt: string;
|
|
67
|
+
project: {
|
|
68
|
+
owner: string;
|
|
69
|
+
name: string;
|
|
70
|
+
fullName: string;
|
|
71
|
+
};
|
|
72
|
+
latestTask: {
|
|
73
|
+
id: string;
|
|
74
|
+
status: string;
|
|
75
|
+
startedAt: string | null;
|
|
76
|
+
completedAt: string | null;
|
|
77
|
+
} | null;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Combined status for a feature group (hula-server PR #505).
|
|
81
|
+
*/
|
|
82
|
+
export interface GroupStatusResponse {
|
|
83
|
+
groupId: string;
|
|
84
|
+
total: number;
|
|
85
|
+
completed: number;
|
|
86
|
+
plans: GroupPlanEntry[];
|
|
87
|
+
}
|
|
50
88
|
export interface ListPlansResponse {
|
|
51
89
|
plans: ApiTrackedPlan[];
|
|
52
90
|
total: number;
|
|
@@ -140,6 +178,21 @@ export declare class HulaApiClient {
|
|
|
140
178
|
project: string;
|
|
141
179
|
lines?: number;
|
|
142
180
|
}): Promise<Record<string, string | null>>;
|
|
181
|
+
/**
|
|
182
|
+
* Fetch combined status for a feature group (hula-server PR #505).
|
|
183
|
+
* Calls GET /api/v1/groups/:groupId.
|
|
184
|
+
*
|
|
185
|
+
* The endpoint is scoped by the caller's project membership (not by the API
|
|
186
|
+
* key's project), so any member repo's key works. A 404 is intentionally
|
|
187
|
+
* ambiguous server-side — it means either the group does not exist OR the
|
|
188
|
+
* caller is not a member of any of its projects (the caller cannot
|
|
189
|
+
* distinguish the two). A 404 can also mean the server predates feature
|
|
190
|
+
* groups; callers surface that possibility in the user-facing message.
|
|
191
|
+
*
|
|
192
|
+
* @param groupId - The opaque group id (validated `^[A-Za-z0-9_-]{1,64}$`).
|
|
193
|
+
* @returns The group's `total`/`completed` counts and per-plan entries.
|
|
194
|
+
*/
|
|
195
|
+
fetchGroupStatus(groupId: string): Promise<GroupStatusResponse>;
|
|
143
196
|
/**
|
|
144
197
|
* Check the authenticated user's subscription plan.
|
|
145
198
|
* Calls GET /api/v1/user/subscription.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HulaApiClient.d.ts","sourceRoot":"","sources":["../../../src/services/api/HulaApiClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HulaApiClient.d.ts","sourceRoot":"","sources":["../../../src/services/api/HulaApiClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -137,6 +137,24 @@ export class HulaApiClient {
|
|
|
137
137
|
const response = await this.client.get(`/api/v1/info/${encodeURIComponent(planName)}`, { params, headers: { Accept: 'application/json' } });
|
|
138
138
|
return response.data;
|
|
139
139
|
}
|
|
140
|
+
/**
|
|
141
|
+
* Fetch combined status for a feature group (hula-server PR #505).
|
|
142
|
+
* Calls GET /api/v1/groups/:groupId.
|
|
143
|
+
*
|
|
144
|
+
* The endpoint is scoped by the caller's project membership (not by the API
|
|
145
|
+
* key's project), so any member repo's key works. A 404 is intentionally
|
|
146
|
+
* ambiguous server-side — it means either the group does not exist OR the
|
|
147
|
+
* caller is not a member of any of its projects (the caller cannot
|
|
148
|
+
* distinguish the two). A 404 can also mean the server predates feature
|
|
149
|
+
* groups; callers surface that possibility in the user-facing message.
|
|
150
|
+
*
|
|
151
|
+
* @param groupId - The opaque group id (validated `^[A-Za-z0-9_-]{1,64}$`).
|
|
152
|
+
* @returns The group's `total`/`completed` counts and per-plan entries.
|
|
153
|
+
*/
|
|
154
|
+
async fetchGroupStatus(groupId) {
|
|
155
|
+
const response = await this.client.get(`/api/v1/groups/${encodeURIComponent(groupId)}`);
|
|
156
|
+
return response.data;
|
|
157
|
+
}
|
|
140
158
|
/**
|
|
141
159
|
* Check the authenticated user's subscription plan.
|
|
142
160
|
* Calls GET /api/v1/user/subscription.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HulaApiClient.js","sourceRoot":"","sources":["../../../src/services/api/HulaApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAoC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"HulaApiClient.js","sourceRoot":"","sources":["../../../src/services/api/HulaApiClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,7 +34,15 @@ export interface FilePublishOptions {
|
|
|
34
34
|
*/
|
|
35
35
|
export declare class FilePublishService {
|
|
36
36
|
private readonly config;
|
|
37
|
-
|
|
37
|
+
private readonly cwd?;
|
|
38
|
+
/**
|
|
39
|
+
* @param config - Loaded config (worktree base path, upload branch).
|
|
40
|
+
* @param cwd - Optional repository working directory. When supplied
|
|
41
|
+
* (multi-repo `--folder` fan-out) every top-level git command and the repo
|
|
42
|
+
* info lookup run against this directory. Undefined preserves the historical
|
|
43
|
+
* process-cwd behavior for every existing caller.
|
|
44
|
+
*/
|
|
45
|
+
constructor(config: Config, cwd?: string);
|
|
38
46
|
/**
|
|
39
47
|
* Default branch this service publishes to.
|
|
40
48
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePublishService.d.ts","sourceRoot":"","sources":["../../../src/services/git/FilePublishService.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAgCnD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGpD;AASD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;
|
|
1
|
+
{"version":3,"file":"FilePublishService.d.ts","sourceRoot":"","sources":["../../../src/services/git/FilePublishService.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAgCnD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAGpD;AASD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAS;IAE9B;;;;;;OAMG;gBACS,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;IAKxC;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAiBtB;;;OAGG;YACW,uBAAuB;IAQrC;;;;OAIG;YACW,YAAY;IAsG1B;;;;;;OAMG;IACG,WAAW,CACf,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC,IAAI,CAAC;IAWhB;;;;;OAKG;IACG,UAAU,CACd,YAAY,EAAE,MAAM,EACpB,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC,IAAI,CAAC;CAWjB"}
|
|
@@ -63,8 +63,17 @@ function sleep(ms) {
|
|
|
63
63
|
*/
|
|
64
64
|
export class FilePublishService {
|
|
65
65
|
config;
|
|
66
|
-
|
|
66
|
+
cwd;
|
|
67
|
+
/**
|
|
68
|
+
* @param config - Loaded config (worktree base path, upload branch).
|
|
69
|
+
* @param cwd - Optional repository working directory. When supplied
|
|
70
|
+
* (multi-repo `--folder` fan-out) every top-level git command and the repo
|
|
71
|
+
* info lookup run against this directory. Undefined preserves the historical
|
|
72
|
+
* process-cwd behavior for every existing caller.
|
|
73
|
+
*/
|
|
74
|
+
constructor(config, cwd) {
|
|
67
75
|
this.config = config;
|
|
76
|
+
this.cwd = cwd;
|
|
68
77
|
}
|
|
69
78
|
/**
|
|
70
79
|
* Default branch this service publishes to.
|
|
@@ -96,7 +105,7 @@ export class FilePublishService {
|
|
|
96
105
|
*/
|
|
97
106
|
async resolveWorktreeBasePath() {
|
|
98
107
|
const rawBasePath = this.config.worktreeBasePath ?? '.hula-worktrees';
|
|
99
|
-
const repoRoot = await getRepoRoot();
|
|
108
|
+
const repoRoot = this.cwd ?? (await getRepoRoot());
|
|
100
109
|
return isAbsolute(rawBasePath)
|
|
101
110
|
? rawBasePath
|
|
102
111
|
: resolve(repoRoot, rawBasePath);
|
|
@@ -109,10 +118,11 @@ export class FilePublishService {
|
|
|
109
118
|
async withWorktree(type, branch, commitMessage, operation) {
|
|
110
119
|
this.validateBranch(branch);
|
|
111
120
|
const worktreeBasePath = await this.resolveWorktreeBasePath();
|
|
112
|
-
const repoInfo = await getRepoInfo();
|
|
121
|
+
const repoInfo = await getRepoInfo(this.cwd);
|
|
113
122
|
const worktreeService = new WorktreeService({
|
|
114
123
|
basePath: worktreeBasePath,
|
|
115
124
|
repoName: repoInfo.name,
|
|
125
|
+
cwd: this.cwd,
|
|
116
126
|
});
|
|
117
127
|
// Timestamp-based identifier to avoid collisions between concurrent publishes.
|
|
118
128
|
const identifier = `${Date.now()}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePublishService.js","sourceRoot":"","sources":["../../../src/services/git/FilePublishService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD;;;GAGG;AACH,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAE5B;;;;GAIG;AACH,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B;;;;;GAKG;AACH,MAAM,eAAe,GAAG;IACtB,iBAAiB;IACjB,0BAA0B;IAC1B,mBAAmB;IACnB,aAAa;IACb,kBAAkB;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAChC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAYD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAS;
|
|
1
|
+
{"version":3,"file":"FilePublishService.js","sourceRoot":"","sources":["../../../src/services/git/FilePublishService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD;;;GAGG;AACH,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAE5B;;;;GAIG;AACH,MAAM,eAAe,GAAG,GAAG,CAAC;AAE5B;;;;;GAKG;AACH,MAAM,eAAe,GAAG;IACtB,iBAAiB;IACjB,0BAA0B;IAC1B,mBAAmB;IACnB,aAAa;IACb,kBAAkB;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,MAAM,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAChC,OAAO,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC;AAYD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,kBAAkB;IACZ,MAAM,CAAS;IACf,GAAG,CAAU;IAE9B;;;;;;OAMG;IACH,YAAY,MAAc,EAAE,GAAY;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,aAAa;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC;IAC5C,CAAC;IAED;;;OAGG;IACK,cAAc,CAAC,MAAc;QACnC,IACE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACrB,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EACpB,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,uBAAuB;QACnC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,iBAAiB,CAAC;QACtE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC;QACnD,OAAO,UAAU,CAAC,WAAW,CAAC;YAC5B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,YAAY,CACxB,IAAY,EACZ,MAAc,EACd,aAAqB,EACrB,SAAyC;QAEzC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAE5B,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC;YAC1C,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ,EAAE,QAAQ,CAAC,IAAI;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG;SACd,CAAC,CAAC;QAEH,+EAA+E;QAC/E,MAAM,UAAU,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAEtE,IAAI,eAAe,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,eAAe,CAAC,gBAAgB,CACpC,YAAY,EACZ,UAAU,MAAM,EAAE,EAClB,IAAI,CACL,CAAC;YACF,eAAe,GAAG,IAAI,CAAC;YAEvB,SAAS,CAAC,YAAY,CAAC,CAAC;YAExB,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;YACpE,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,eAAe,CAAC,eAAe,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YAC7D,CAAC;YAED,mEAAmE;YACnE,kEAAkE;YAClE,gEAAgE;YAChE,uEAAuE;YACvE,sEAAsE;YACtE,oEAAoE;YACpE,2EAA2E;YAC3E,IAAI,SAAkB,CAAC;YACvB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,iBAAiB,EAAE,OAAO,EAAE,EAAE,CAAC;gBAC9D,IAAI,CAAC;oBACH,MAAM,eAAe,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,MAAM,EAAE,CAAC,CAAC;oBAC7D,SAAS,GAAG,SAAS,CAAC;oBACtB,MAAM,CAAC,sBAAsB;gBAC/B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,SAAS,GAAG,KAAK,CAAC;oBAClB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAEvE,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC1B,MAAM,KAAK,CAAC,CAAC,yCAAyC;oBACxD,CAAC;oBAED,IAAI,OAAO,KAAK,iBAAiB,EAAE,CAAC;wBAClC,MAAM,CAAC,sDAAsD;oBAC/D,CAAC;oBAED,MAAM,OAAO,GAAG,eAAe,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;oBACrD,MAAM,CAAC,IAAI,CACT,UAAU,MAAM,gDAAgD;wBAC9D,iBAAiB,OAAO,GAAG,CAAC,IAAI,iBAAiB,MAAM,CAC1D,CAAC;oBACF,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;oBAErB,iEAAiE;oBACjE,qEAAqE;oBACrE,oDAAoD;oBACpD,MAAM,eAAe,CAAC,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC;YAED,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CACb,4BAA4B,MAAM,UAAU,iBAAiB,GAAG;oBAC9D,oBAAoB,MAAM,gCAAgC;oBAC1D,+DAA+D;oBAC/D,kBAAkB;oBAClB,CAAC,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CACvE,CAAC;YACJ,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,CAAC;oBACH,MAAM,eAAe,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;gBACvD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,OAAO,CACZ,gCAAgC,YAAY,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC1G,CAAC;oBACF,MAAM,CAAC,IAAI,CACT,yDAAyD,YAAY,WAAW,CACjF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,CACf,YAAoB,EACpB,OAAe,EACf,IAAyB;QAEzB,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACpD,MAAM,aAAa,GAAG,IAAI,EAAE,aAAa,IAAI,8BAA8B,CAAC;QAE5E,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,YAAY,EAAE,EAAE;YACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAClD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAClD,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CACd,YAAoB,EACpB,IAAyB;QAEzB,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;QACpD,MAAM,aAAa,GAAG,IAAI,EAAE,aAAa,IAAI,6BAA6B,CAAC;QAE3E,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,YAAY,EAAE,EAAE;YACzE,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAClD,yEAAyE;YACzE,wCAAwC;YACxC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,8 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Service for Git operations
|
|
3
3
|
* Single Responsibility: Local git repository operations
|
|
4
|
+
*
|
|
5
|
+
* An optional `cwd` may be supplied to the constructor to run every git command
|
|
6
|
+
* in a specific repository directory (used by multi-repo `--folder` fan-out).
|
|
7
|
+
* When omitted (the default for every existing caller) commands run in the
|
|
8
|
+
* process working directory exactly as before.
|
|
4
9
|
*/
|
|
5
10
|
export declare class GitService {
|
|
11
|
+
private readonly cwd?;
|
|
12
|
+
/**
|
|
13
|
+
* @param cwd - Optional working directory for all git commands. Undefined
|
|
14
|
+
* preserves the historical process-cwd behavior.
|
|
15
|
+
*/
|
|
16
|
+
constructor(cwd?: string | undefined);
|
|
17
|
+
/**
|
|
18
|
+
* Run a git command in this service's configured working directory.
|
|
19
|
+
*/
|
|
20
|
+
private run;
|
|
21
|
+
/**
|
|
22
|
+
* Run a git command (returning the full result) in this service's cwd.
|
|
23
|
+
*/
|
|
24
|
+
private runDetailed;
|
|
6
25
|
/**
|
|
7
26
|
* Get current git branch
|
|
8
27
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GitService.d.ts","sourceRoot":"","sources":["../../../src/services/git/GitService.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GitService.d.ts","sourceRoot":"","sources":["../../../src/services/git/GitService.ts"],"names":[],"mappings":"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"}
|