alpic 0.0.0-dev.664c88e → 0.0.0-dev.6684d89

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.
@@ -1,13 +1,10 @@
1
- import { randomUUID } from "node:crypto";
2
- import { mkdirSync, rmSync, writeFileSync } from "node:fs";
3
- import { cp, mkdtemp, readFile } from "node:fs/promises";
4
- import { tmpdir } from "node:os";
5
- import { dirname, join } from "node:path";
6
- import { fileURLToPath } from "node:url";
1
+ import { rmSync } from "node:fs";
2
+ import { readFile } from "node:fs/promises";
3
+ import { join } from "node:path";
7
4
  import { afterEach, beforeEach, describe, expect, it } from "vitest";
8
5
  import { MockApiServer } from "./mock-server";
6
+ import { buildMockProject, createConfigFile, expectSuccessfulApiCall, setupTestDirectory } from "./utils";
9
7
  import { cliSession } from "./utils";
10
- const __dirname = dirname(fileURLToPath(import.meta.url));
11
8
  describe("alpic deploy (E2E)", () => {
12
9
  let mockServer;
13
10
  let serverUrl;
@@ -139,61 +136,6 @@ describe("alpic deploy (E2E)", () => {
139
136
  });
140
137
  });
141
138
  }, 15_000);
142
- function buildMockProject(params) {
143
- const { projectId, teamId, projectName, environmentId, environmentName } = params;
144
- const mcpServerUrl = `https://mcp-${projectId}.alpic.ai`;
145
- return {
146
- id: projectId,
147
- name: projectName,
148
- teamId,
149
- environments: [
150
- {
151
- id: environmentId,
152
- name: environmentName,
153
- sourceBranch: null,
154
- mcpServerUrl,
155
- createdAt: new Date(),
156
- projectId,
157
- latestDeployment: null,
158
- },
159
- ],
160
- productionEnvironment: {
161
- id: environmentId,
162
- name: environmentName,
163
- mcpServerUrl,
164
- latestDeployment: null,
165
- },
166
- sourceRepository: null,
167
- runtime: "node24",
168
- transport: null,
169
- rootDirectory: null,
170
- buildCommand: null,
171
- buildOutputDir: null,
172
- installCommand: null,
173
- startCommand: null,
174
- createdAt: new Date(),
175
- };
176
- }
177
- async function setupTestDirectory() {
178
- const uniqueId = randomUUID();
179
- const cwd = await mkdtemp(join(tmpdir(), `alpic-cli-e2e-${uniqueId}-`));
180
- const fixturePath = join(__dirname, "fixtures", "demo-project");
181
- await cp(fixturePath, cwd, { recursive: true });
182
- const binPath = join(process.cwd(), "bin", "dev.js");
183
- return { cwd, binPath };
184
- }
185
- function createConfigFile(cwd, projectId, teamId, projectName, environmentId, environmentName) {
186
- const configDir = join(cwd, ".alpic");
187
- mkdirSync(configDir, { recursive: true });
188
- const configPath = join(configDir, "project.json");
189
- writeFileSync(configPath, JSON.stringify({
190
- projectId,
191
- teamId,
192
- projectName,
193
- environmentId,
194
- environmentName,
195
- }));
196
- }
197
139
  async function verifyConfigFile(cwd, output, expected) {
198
140
  const cfgPath = join(cwd, ".alpic", "project.json");
199
141
  const cfg = await readFile(cfgPath, "utf8");
@@ -240,11 +182,4 @@ async function verifyDeploymentFlow(cli, mockServer) {
240
182
  const envCall = mockServer.getLastCall("GET", /\/v1\/environments\/.*/);
241
183
  expectSuccessfulApiCall(envCall);
242
184
  }
243
- function expectSuccessfulApiCall(call, customAssertions) {
244
- expect(call).toBeDefined();
245
- expect(call?.responseStatus).toBe(200);
246
- if (customAssertions && call) {
247
- customAssertions(call);
248
- }
249
- }
250
185
  //# sourceMappingURL=deploy.e2e.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.e2e.test.js","sourceRoot":"","sources":["../../src/__tests__/deploy.e2e.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.e2e.test.js","sourceRoot":"","sources":["../../src/__tests__/deploy.e2e.test.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,33 @@
1
- import { execFileSync } from "node:child_process";
2
- import { randomUUID } from "node:crypto";
3
- import { mkdirSync, rmSync, writeFileSync } from "node:fs";
4
- import { cp, mkdtemp } from "node:fs/promises";
5
- import { tmpdir } from "node:os";
6
- import { dirname, join } from "node:path";
7
- import { fileURLToPath } from "node:url";
1
+ import { rmSync } from "node:fs";
2
+ import { join } from "node:path";
8
3
  import { afterEach, beforeEach, describe, expect, it } from "vitest";
9
4
  import { MockApiServer } from "./mock-server";
10
- import { cliSession } from "./utils";
11
- const __dirname = dirname(fileURLToPath(import.meta.url));
5
+ import { buildMockProject, cliSession, createConfigFile, expectSuccessfulApiCall, runGit, setupTestDirectory, } from "./utils";
12
6
  describe("alpic git connect/disconnect (E2E)", () => {
13
7
  let mockServer;
14
8
  let serverUrl;
15
9
  let cwd;
16
10
  let binPath;
11
+ const projectId = "project-id";
12
+ const teamId = "team-id";
13
+ const environmentId = "env-id";
14
+ function setupProject(overrides) {
15
+ mockServer.addProject(buildMockProject({
16
+ projectId,
17
+ teamId,
18
+ projectName: "demo",
19
+ environmentId,
20
+ environmentName: "production",
21
+ sourceRepository: null,
22
+ sourceBranch: "main",
23
+ ...overrides,
24
+ }));
25
+ createConfigFile(cwd, projectId, teamId, "demo", environmentId, "production");
26
+ }
17
27
  beforeEach(async () => {
18
28
  mockServer = new MockApiServer();
19
29
  serverUrl = await mockServer.start();
20
- const setup = await setupGitTestDirectory();
30
+ const setup = await setupTestDirectory({ prefix: "alpic-cli-e2e-git", initGit: true });
21
31
  cwd = setup.cwd;
22
32
  binPath = setup.binPath;
23
33
  });
@@ -28,18 +38,7 @@ describe("alpic git connect/disconnect (E2E)", () => {
28
38
  }
29
39
  });
30
40
  it("connects using selected remote source when multiple remotes are available", async () => {
31
- const projectId = "project-id";
32
- const teamId = "team-id";
33
- const environmentId = "env-id";
34
- mockServer.addProject(buildMockProject({
35
- projectId,
36
- teamId,
37
- projectName: "demo",
38
- environmentId,
39
- environmentName: "production",
40
- sourceRepository: null,
41
- }));
42
- createConfigFile(cwd, projectId, teamId, "demo", environmentId, "production");
41
+ setupProject();
43
42
  const { exitCode, output } = await cliSession(process.execPath, [binPath, "git", "connect"], {
44
43
  cwd,
45
44
  env: {
@@ -80,18 +79,7 @@ describe("alpic git connect/disconnect (E2E)", () => {
80
79
  expect(output).toContain("This directory is not linked to an Alpic project. Link it first using `alpic deploy`.");
81
80
  });
82
81
  it("shows git setup instructions when directory is not a git repository", async () => {
83
- const projectId = "project-id";
84
- const teamId = "team-id";
85
- const environmentId = "env-id";
86
- mockServer.addProject(buildMockProject({
87
- projectId,
88
- teamId,
89
- projectName: "demo",
90
- environmentId,
91
- environmentName: "production",
92
- sourceRepository: null,
93
- }));
94
- createConfigFile(cwd, projectId, teamId, "demo", environmentId, "production");
82
+ setupProject();
95
83
  rmSync(join(cwd, ".git"), { recursive: true, force: true });
96
84
  const { output } = await cliSession(process.execPath, [binPath, "git", "connect"], {
97
85
  cwd,
@@ -110,18 +98,7 @@ describe("alpic git connect/disconnect (E2E)", () => {
110
98
  expect(output).toContain("git init");
111
99
  });
112
100
  it("shows git setup instructions when repository has no remotes", async () => {
113
- const projectId = "project-id";
114
- const teamId = "team-id";
115
- const environmentId = "env-id";
116
- mockServer.addProject(buildMockProject({
117
- projectId,
118
- teamId,
119
- projectName: "demo",
120
- environmentId,
121
- environmentName: "production",
122
- sourceRepository: null,
123
- }));
124
- createConfigFile(cwd, projectId, teamId, "demo", environmentId, "production");
101
+ setupProject();
125
102
  runGit(["remote", "remove", "origin"], cwd);
126
103
  runGit(["remote", "remove", "upstream"], cwd);
127
104
  const { output } = await cliSession(process.execPath, [binPath, "git", "connect"], {
@@ -140,19 +117,44 @@ describe("alpic git connect/disconnect (E2E)", () => {
140
117
  expect(output).toContain("To set up a git repository");
141
118
  expect(output).toContain("git init");
142
119
  });
120
+ it("when project is already connected, prompts to link another and exits if user declines", async () => {
121
+ setupProject({ sourceRepository: "acme/backend" });
122
+ const { exitCode, output } = await cliSession(process.execPath, [binPath, "git", "connect"], {
123
+ cwd,
124
+ env: {
125
+ ALPIC_API_BASE_URL: serverUrl,
126
+ ALPIC_FRONTEND_BASE_URL: "http://mocked.frontend.url",
127
+ ALPIC_API_KEY: "test-api-key",
128
+ },
129
+ }, async (cli) => {
130
+ await cli.expect(/Project .*demo.* is already connected to .*acme\/backend.*\./);
131
+ await cli.expect("Do you want to link another repository?");
132
+ await cli.send(""); // accept default (No)
133
+ await cli.expect("Git connect cancelled");
134
+ });
135
+ expect(exitCode).toBe(1);
136
+ expect(output).toMatch(/Project .*demo.* is already connected to .*acme\/backend.*\./);
137
+ expect(output).toContain("Git connect cancelled");
138
+ expect(mockServer.getCalls("PATCH", "/v1/projects/")).toHaveLength(0);
139
+ });
140
+ it("disconnect fails with clear message when project is not connected", async () => {
141
+ setupProject(); // sourceRepository is null by default
142
+ const { exitCode, output } = await cliSession(process.execPath, [binPath, "git", "disconnect"], {
143
+ cwd,
144
+ env: {
145
+ ALPIC_API_BASE_URL: serverUrl,
146
+ ALPIC_FRONTEND_BASE_URL: "http://mocked.frontend.url",
147
+ ALPIC_API_KEY: "test-api-key",
148
+ },
149
+ }, async (cli) => {
150
+ await cli.expect(/Project .*demo.* is not connected to any repository\./);
151
+ });
152
+ expect(exitCode).toBe(1);
153
+ expect(output).toMatch(/Project .*demo.* is not connected to any repository\./);
154
+ expect(mockServer.getCalls("PATCH", "/v1/projects/")).toHaveLength(0);
155
+ });
143
156
  it("disconnects an already connected project repository", async () => {
144
- const projectId = "project-id";
145
- const teamId = "team-id";
146
- const environmentId = "env-id";
147
- mockServer.addProject(buildMockProject({
148
- projectId,
149
- teamId,
150
- projectName: "demo",
151
- environmentId,
152
- environmentName: "production",
153
- sourceRepository: "acme/frontend",
154
- }));
155
- createConfigFile(cwd, projectId, teamId, "demo", environmentId, "production");
157
+ setupProject({ sourceRepository: "acme/frontend" });
156
158
  const { exitCode, output } = await cliSession(process.execPath, [binPath, "git", "disconnect"], {
157
159
  cwd,
158
160
  env: {
@@ -162,6 +164,7 @@ describe("alpic git connect/disconnect (E2E)", () => {
162
164
  },
163
165
  }, async (cli) => {
164
166
  await cli.expect(/Are you sure you want to disconnect .*acme\/frontend.* from project .*demo.*\?/);
167
+ await cli.send("\u001B[A"); // arrow up to select Yes
165
168
  await cli.send("");
166
169
  await cli.expect(/Disconnected .*acme\/frontend.* from project .*demo.*\./);
167
170
  });
@@ -176,75 +179,4 @@ describe("alpic git connect/disconnect (E2E)", () => {
176
179
  });
177
180
  });
178
181
  }, 20_000);
179
- function buildMockProject(params) {
180
- const { projectId, teamId, projectName, environmentId, environmentName, sourceRepository } = params;
181
- const mcpServerUrl = `https://mcp-${projectId}.alpic.ai`;
182
- return {
183
- id: projectId,
184
- name: projectName,
185
- teamId,
186
- environments: [
187
- {
188
- id: environmentId,
189
- name: environmentName,
190
- sourceBranch: "main",
191
- mcpServerUrl,
192
- createdAt: new Date(),
193
- projectId,
194
- latestDeployment: null,
195
- },
196
- ],
197
- productionEnvironment: {
198
- id: environmentId,
199
- name: environmentName,
200
- mcpServerUrl,
201
- latestDeployment: null,
202
- },
203
- sourceRepository,
204
- runtime: "node24",
205
- transport: null,
206
- rootDirectory: null,
207
- buildCommand: null,
208
- buildOutputDir: null,
209
- installCommand: null,
210
- startCommand: null,
211
- createdAt: new Date(),
212
- };
213
- }
214
- async function setupGitTestDirectory() {
215
- const uniqueId = randomUUID();
216
- const cwd = await mkdtemp(join(tmpdir(), `alpic-cli-e2e-git-${uniqueId}-`));
217
- const fixturePath = join(__dirname, "fixtures", "demo-project");
218
- await cp(fixturePath, cwd, { recursive: true });
219
- runGit(["init"], cwd);
220
- runGit(["remote", "add", "origin", "git@github.com:acme/frontend.git"], cwd);
221
- runGit(["remote", "add", "upstream", "https://github.com/acme/backend.git"], cwd);
222
- const binPath = join(process.cwd(), "bin", "dev.js");
223
- return { cwd, binPath };
224
- }
225
- function createConfigFile(cwd, projectId, teamId, projectName, environmentId, environmentName) {
226
- const configDir = join(cwd, ".alpic");
227
- mkdirSync(configDir, { recursive: true });
228
- const configPath = join(configDir, "project.json");
229
- writeFileSync(configPath, JSON.stringify({
230
- projectId,
231
- teamId,
232
- projectName,
233
- environmentId,
234
- environmentName,
235
- }));
236
- }
237
- function runGit(args, cwd) {
238
- execFileSync("git", args, {
239
- cwd,
240
- stdio: ["ignore", "pipe", "pipe"],
241
- });
242
- }
243
- function expectSuccessfulApiCall(call, customAssertions) {
244
- expect(call).toBeDefined();
245
- expect(call?.responseStatus).toBe(200);
246
- if (customAssertions && call) {
247
- customAssertions(call);
248
- }
249
- }
250
182
  //# sourceMappingURL=git.e2e.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"git.e2e.test.js","sourceRoot":"","sources":["../../src/__tests__/git.e2e.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git.e2e.test.js","sourceRoot":"","sources":["../../src/__tests__/git.e2e.test.ts"],"names":[],"mappings":"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"}
@@ -45,6 +45,50 @@ export class MockApiServer {
45
45
  });
46
46
  this.app.use(express.json());
47
47
  const router = implement(contract).router({
48
+ teams: {
49
+ list: {
50
+ v1: implement(contract.teams.list.v1).handler(async () => {
51
+ return [
52
+ {
53
+ id: "mock-team-id",
54
+ name: "Mock Team",
55
+ createdAt: new Date(),
56
+ hasStripeAccount: false,
57
+ hasActiveSubscription: false,
58
+ },
59
+ ];
60
+ }),
61
+ },
62
+ },
63
+ analytics: {
64
+ get: {
65
+ v1: implement(contract.analytics.get.v1).handler(async ({ input }) => {
66
+ const project = this.mockData.projects.get(input.projectId);
67
+ if (!project) {
68
+ throw new ORPCError("NOT_FOUND", { message: "Project not found" });
69
+ }
70
+ const emptyTimeSeries = {
71
+ sessions_count: [],
72
+ requests_count: [],
73
+ requests_latency_mean: [],
74
+ tool_errors: [],
75
+ mcp_errors: [],
76
+ output_token_mean: [],
77
+ task_count: [],
78
+ };
79
+ return {
80
+ metadata: {
81
+ startTimestamp: input.startTimestamp,
82
+ endTimestamp: input.endTimestamp,
83
+ timeZone: input.timeZone,
84
+ startDate: new Date(input.startTimestamp),
85
+ interval: "1h",
86
+ },
87
+ timeSeries: emptyTimeSeries,
88
+ };
89
+ }),
90
+ },
91
+ },
48
92
  projects: {
49
93
  list: {
50
94
  v1: implement(contract.projects.list.v1).handler(async () => {
@@ -140,12 +184,11 @@ export class MockApiServer {
140
184
  if (!project) {
141
185
  throw new ORPCError("NOT_FOUND", { message: "Project not found" });
142
186
  }
143
- let nextProject = project;
144
187
  if (input.sourceRepository !== undefined) {
145
- nextProject.sourceRepository = input.sourceRepository;
188
+ project.sourceRepository = input.sourceRepository;
146
189
  }
147
- this.mockData.projects.set(input.projectId, nextProject);
148
- return nextProject;
190
+ this.mockData.projects.set(input.projectId, project);
191
+ return project;
149
192
  }),
150
193
  },
151
194
  },
@@ -227,6 +270,19 @@ export class MockApiServer {
227
270
  },
228
271
  },
229
272
  deployments: {
273
+ list: {
274
+ v1: implement(contract.deployments.list.v1).handler(async ({ input }) => {
275
+ const project = this.mockData.projects.get(input.projectId);
276
+ if (!project) {
277
+ throw new ORPCError("NOT_FOUND", { message: "Project not found" });
278
+ }
279
+ return Array.from(this.mockData.deployments.values()).map((deployment) => ({
280
+ ...deployment,
281
+ isCurrent: deployment.status === "deployed",
282
+ environmentId: project.productionEnvironment?.id ?? "",
283
+ }));
284
+ }),
285
+ },
230
286
  get: {
231
287
  v1: implement(contract.deployments.get.v1).handler(async ({ input }) => {
232
288
  const deployment = this.mockData.deployments.get(input.deploymentId);
@@ -245,6 +301,18 @@ export class MockApiServer {
245
301
  return deployment;
246
302
  }),
247
303
  },
304
+ getLogs: {
305
+ v1: implement(contract.deployments.getLogs.v1).handler(async ({ input }) => {
306
+ const deployment = this.mockData.deployments.get(input.deploymentId);
307
+ if (!deployment) {
308
+ throw new ORPCError("NOT_FOUND", { message: "Deployment not found" });
309
+ }
310
+ return {
311
+ logs: [{ timestamp: new Date(), content: "Mock log entry" }],
312
+ hasMoreLogs: false,
313
+ };
314
+ }),
315
+ },
248
316
  uploadArtifact: {
249
317
  v1: implement(contract.deployments.uploadArtifact.v1).handler(async () => {
250
318
  const token = randomUUID();
@@ -1 +1 @@
1
- {"version":3,"file":"mock-server.js","sourceRoot":"","sources":["../../src/__tests__/mock-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mock-server.js","sourceRoot":"","sources":["../../src/__tests__/mock-server.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,7 @@
1
+ import type { RouterOutput } from "@alpic-ai/api";
2
+ import { type ApiCall } from "./mock-server";
1
3
  type Expectable = string | RegExp;
4
+ type ProjectGetV1 = RouterOutput["projects"]["get"]["v1"];
2
5
  export type CliSessionOptions = {
3
6
  cwd?: string;
4
7
  env?: Record<string, string | undefined>;
@@ -26,4 +29,27 @@ export declare function cliSession(cmd: string, args: string[], options: CliSess
26
29
  exitCode: number | null;
27
30
  output: string;
28
31
  }>;
32
+ export type BuildMockProjectParams = {
33
+ projectId: string;
34
+ teamId: string;
35
+ projectName: string;
36
+ environmentId: string;
37
+ environmentName: string;
38
+ sourceRepository?: string | null;
39
+ sourceBranch?: string | null;
40
+ };
41
+ export declare function buildMockProject(params: BuildMockProjectParams): ProjectGetV1;
42
+ export type SetupTestDirectoryOptions = {
43
+ /** Temp directory prefix (default: "alpic-cli-e2e") */
44
+ prefix?: string;
45
+ /** If true, run git init and add origin/upstream remotes */
46
+ initGit?: boolean;
47
+ };
48
+ export declare function setupTestDirectory(options?: SetupTestDirectoryOptions): Promise<{
49
+ cwd: string;
50
+ binPath: string;
51
+ }>;
52
+ export declare function createConfigFile(cwd: string, projectId: string, teamId: string, projectName: string, environmentId: string, environmentName: string): void;
53
+ export declare function runGit(args: string[], cwd: string): void;
54
+ export declare function expectSuccessfulApiCall(call: ApiCall | undefined, customAssertions?: (call: ApiCall) => void): asserts call is ApiCall;
29
55
  export {};
@@ -1,4 +1,14 @@
1
1
  import pty from "node-pty";
2
+ import { execFileSync } from "node:child_process";
3
+ import { randomUUID } from "node:crypto";
4
+ import { mkdirSync, writeFileSync } from "node:fs";
5
+ import { cp, mkdtemp } from "node:fs/promises";
6
+ import { tmpdir } from "node:os";
7
+ import { dirname, join } from "node:path";
8
+ import { fileURLToPath } from "node:url";
9
+ import { expect } from "vitest";
10
+ import {} from "./mock-server";
11
+ const __testDirname = dirname(fileURLToPath(import.meta.url));
2
12
  export async function cliSession(cmd, args, options, fn) {
3
13
  const { cwd, env, cols = 100, rows = 30, timeoutMs = 8000 } = options;
4
14
  const mergedEnv = {
@@ -57,6 +67,7 @@ export async function cliSession(cmd, args, options, fn) {
57
67
  await fn(controller);
58
68
  }
59
69
  finally {
70
+ await Promise.race([exitPromise, sleep(1500)]);
60
71
  controller.stop();
61
72
  await Promise.race([exitPromise, sleep(200)]);
62
73
  }
@@ -86,4 +97,78 @@ function patternToString(p) {
86
97
  function sleep(ms) {
87
98
  return new Promise((r) => setTimeout(r, ms));
88
99
  }
100
+ export function buildMockProject(params) {
101
+ const { projectId, teamId, projectName, environmentId, environmentName, sourceRepository = null, sourceBranch = null, } = params;
102
+ const mcpServerUrl = `https://mcp-${projectId}.alpic.ai`;
103
+ return {
104
+ id: projectId,
105
+ name: projectName,
106
+ teamId,
107
+ environments: [
108
+ {
109
+ id: environmentId,
110
+ name: environmentName,
111
+ sourceBranch,
112
+ mcpServerUrl,
113
+ createdAt: new Date(),
114
+ projectId,
115
+ latestDeployment: null,
116
+ },
117
+ ],
118
+ productionEnvironment: {
119
+ id: environmentId,
120
+ name: environmentName,
121
+ mcpServerUrl,
122
+ latestDeployment: null,
123
+ },
124
+ sourceRepository,
125
+ runtime: "node24",
126
+ transport: null,
127
+ rootDirectory: null,
128
+ buildCommand: null,
129
+ buildOutputDir: null,
130
+ installCommand: null,
131
+ startCommand: null,
132
+ createdAt: new Date(),
133
+ };
134
+ }
135
+ export async function setupTestDirectory(options = {}) {
136
+ const { prefix = "alpic-cli-e2e", initGit = false } = options;
137
+ const uniqueId = randomUUID();
138
+ const cwd = await mkdtemp(join(tmpdir(), `${prefix}-${uniqueId}-`));
139
+ const fixturePath = join(__testDirname, "fixtures", "demo-project");
140
+ await cp(fixturePath, cwd, { recursive: true });
141
+ if (initGit) {
142
+ runGit(["init"], cwd);
143
+ runGit(["remote", "add", "origin", "git@github.com:acme/frontend.git"], cwd);
144
+ runGit(["remote", "add", "upstream", "https://github.com/acme/backend.git"], cwd);
145
+ }
146
+ const binPath = join(process.cwd(), "bin", "dev.js");
147
+ return { cwd, binPath };
148
+ }
149
+ export function createConfigFile(cwd, projectId, teamId, projectName, environmentId, environmentName) {
150
+ const configDir = join(cwd, ".alpic");
151
+ mkdirSync(configDir, { recursive: true });
152
+ const configPath = join(configDir, "project.json");
153
+ writeFileSync(configPath, JSON.stringify({
154
+ projectId,
155
+ teamId,
156
+ projectName,
157
+ environmentId,
158
+ environmentName,
159
+ }));
160
+ }
161
+ export function runGit(args, cwd) {
162
+ execFileSync("git", args, {
163
+ cwd,
164
+ stdio: ["ignore", "pipe", "pipe"],
165
+ });
166
+ }
167
+ export function expectSuccessfulApiCall(call, customAssertions) {
168
+ expect(call).toBeDefined();
169
+ expect(call?.responseStatus).toBe(200);
170
+ if (customAssertions && call) {
171
+ customAssertions(call);
172
+ }
173
+ }
89
174
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/__tests__/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/__tests__/utils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Command } from "@oclif/core";
2
- export declare class Deploy extends Command {
1
+ import { AlpicCommand } from "../lib/alpic-command.js";
2
+ export declare class Deploy extends AlpicCommand {
3
3
  static description: string;
4
4
  static examples: string[];
5
5
  static args: {
@@ -3,12 +3,13 @@ import { Args, Command } from "@oclif/core";
3
3
  import chalk from "chalk";
4
4
  import { readFileSync, rmSync } from "node:fs";
5
5
  import { api } from "../api.js";
6
+ import { AlpicCommand } from "../lib/alpic-command.js";
6
7
  import { createTarArchive, getFilesToPack } from "../lib/archive.js";
7
8
  import { ensureApiKey } from "../lib/auth.js";
8
9
  import { deployAndWait, formatElapsed } from "../lib/deployment.js";
9
10
  import { resolveDeployDir, resolveProjectForDeploy } from "../lib/project.js";
10
11
  import { uploadToPresignedUrl } from "../lib/upload.js";
11
- export class Deploy extends Command {
12
+ export class Deploy extends AlpicCommand {
12
13
  static description = "Deploy a project to Alpic";
13
14
  static examples = ["<%= config.bin %> deploy", "<%= config.bin %> deploy ./my-app"];
14
15
  static args = {
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Command } from "@oclif/core";
2
- export default class GitConnect extends Command {
1
+ import { AlpicCommand } from "../../lib/alpic-command.js";
2
+ export default class GitConnect extends AlpicCommand {
3
3
  static description: string;
4
4
  static examples: string[];
5
5
  static args: {
@@ -1,12 +1,14 @@
1
1
  import * as p from "@clack/prompts";
2
2
  import { Args, Command } from "@oclif/core";
3
+ import { ORPCError, isORPCErrorJson } from "@orpc/client";
3
4
  import chalk from "chalk";
4
5
  import { api } from "../../api.js";
6
+ import { AlpicCommand } from "../../lib/alpic-command.js";
5
7
  import { ensureApiKey } from "../../lib/auth.js";
6
8
  import { config } from "../../lib/config.js";
7
- import { isGitRepository, listGitRemotes } from "../../lib/git.js";
9
+ import { confirmLinkAnotherIfAlreadyConnected, isGitRepository, listGithubRemotes, selectRemoteSourceRepository, showGitSetupInstructions, } from "../../lib/git.js";
8
10
  import { resolveDeployDir } from "../../lib/project.js";
9
- export default class GitConnect extends Command {
11
+ export default class GitConnect extends AlpicCommand {
10
12
  static description = "Connect a linked Alpic project to a git remote source";
11
13
  static examples = ["<%= config.bin %> git connect", "<%= config.bin %> git connect ./my-app"];
12
14
  static args = {
@@ -29,69 +31,28 @@ export default class GitConnect extends Command {
29
31
  this.exit(1);
30
32
  return;
31
33
  }
32
- const showGitInstructions = () => p.note([
33
- `Run ${chalk.cyan("git init")} in this directory`,
34
- `Add a remote: ${chalk.cyan("git remote add origin <your-repo-url>")}`,
35
- `Then run ${chalk.cyan("alpic git connect")} again`,
36
- ].join("\n"), "To set up a git repository:", { format: (line) => line });
37
34
  if (!isGitRepository(deployDir)) {
38
35
  p.log.message("This directory is not a git repository.");
39
- showGitInstructions();
36
+ showGitSetupInstructions();
40
37
  this.exit(1);
41
38
  return;
42
39
  }
43
- const remotes = listGitRemotes(deployDir);
40
+ const remotes = listGithubRemotes(deployDir);
44
41
  if (remotes.length === 0) {
45
42
  p.log.message("This git repository has no remotes configured.");
46
- showGitInstructions();
43
+ showGitSetupInstructions();
47
44
  this.exit(1);
48
45
  return;
49
46
  }
50
- const remoteSources = remotes
51
- .filter((remote) => remote.sourceRepository)
52
- .map((remote) => ({
53
- name: remote.name,
54
- url: remote.url,
55
- sourceRepository: remote.sourceRepository,
56
- }))
57
- .filter((remote, index, all) => all.findIndex((candidate) => candidate.sourceRepository === remote.sourceRepository) === index);
58
- if (remoteSources.length === 0) {
59
- p.cancel("No GitHub remote source found. Only GitHub remotes can be connected to Alpic.");
47
+ const project = await api.projects.get.v1({ projectId: linkedConfig.projectId });
48
+ if (!(await confirmLinkAnotherIfAlreadyConnected(project))) {
60
49
  this.exit(1);
61
50
  return;
62
51
  }
63
- const project = await api.projects.get.v1({ projectId: linkedConfig.projectId });
64
- if (project.sourceRepository) {
65
- p.log.info(`Project "${project.name}" is already connected to "${project.sourceRepository}".`);
66
- const confirm = await p.confirm({
67
- message: chalk.bold("Do you want to link another repository?"),
68
- initialValue: false,
69
- });
70
- if (p.isCancel(confirm) || !confirm) {
71
- p.cancel("Git connect cancelled");
72
- this.exit(1);
73
- return;
74
- }
75
- }
76
- let selectedSourceRepository;
77
- if (remoteSources.length === 1) {
78
- selectedSourceRepository = remoteSources[0].sourceRepository;
79
- }
80
- else {
81
- const selected = await p.select({
82
- message: chalk.bold("Choose the remote source to connect"),
83
- options: remoteSources.map((remote) => ({
84
- value: remote.sourceRepository,
85
- label: `${remote.sourceRepository} (${remote.name})`,
86
- hint: remote.url,
87
- })),
88
- });
89
- if (p.isCancel(selected)) {
90
- p.cancel("Git connect cancelled");
91
- this.exit(1);
92
- return;
93
- }
94
- selectedSourceRepository = selected;
52
+ const selectedSourceRepository = await selectRemoteSourceRepository(remotes);
53
+ if (selectedSourceRepository === null) {
54
+ this.exit(1);
55
+ return;
95
56
  }
96
57
  await api.projects.update.v1({
97
58
  projectId: linkedConfig.projectId,
@@ -1 +1 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/commands/git/connect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,OAAO;IAC7C,MAAM,CAAU,WAAW,GAAG,uDAAuD,CAAC;IAEtF,MAAM,CAAU,QAAQ,GAAG,CAAC,+BAA+B,EAAE,wCAAwC,CAAC,CAAC;IAEvG,MAAM,CAAU,IAAI,GAAG;QACrB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;YACrB,WAAW,EAAE,mDAAmD;YAChE,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC9C,CAAC,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAE9C,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,CAAC,CAAC,MAAM,CAAC,uFAAuF,CAAC,CAAC;YAClG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,mBAAmB,GAAG,GAAG,EAAE,CAC/B,CAAC,CAAC,IAAI,CACJ;YACE,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB;YACjD,iBAAiB,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,EAAE;YACtE,YAAY,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ;SACpD,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,6BAA6B,EAC7B,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAC3B,CAAC;QACJ,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;YAChC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;YACzD,mBAAmB,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,gDAAgD,CAAC,CAAC;YAChE,mBAAmB,EAAE,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,OAAO;aAC1B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC;aAC3C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAChB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,gBAAgB,EAAE,MAAM,CAAC,gBAAiB;SAC3C,CAAC,CAAC;aACF,MAAM,CACL,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CACrB,GAAG,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,gBAAgB,KAAK,MAAM,CAAC,gBAAgB,CAAC,KAAK,KAAK,CACjG,CAAC;QAEJ,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,CAAC,CAAC,MAAM,CAAC,+EAA+E,CAAC,CAAC;YAC1F,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;QACjF,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC7B,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,IAAI,8BAA8B,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC;YAC/F,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;gBAC9B,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,yCAAyC,CAAC;gBAC9D,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;YACH,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACpC,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACb,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,wBAAgC,CAAC;QACrC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,wBAAwB,GAAG,aAAa,CAAC,CAAC,CAAE,CAAC,gBAAgB,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,MAAM,CAAS;gBACtC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC;gBAC1D,OAAO,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBACtC,KAAK,EAAE,MAAM,CAAC,gBAAgB;oBAC9B,KAAK,EAAE,GAAG,MAAM,CAAC,gBAAgB,KAAK,MAAM,CAAC,IAAI,GAAG;oBACpD,IAAI,EAAE,MAAM,CAAC,GAAG;iBACjB,CAAC,CAAC;aACJ,CAAC,CAAC;YACH,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACb,OAAO;YACT,CAAC;YACD,wBAAwB,GAAG,QAAQ,CAAC;QACtC,CAAC;QAED,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,SAAS,EAAE,YAAY,CAAC,SAAS;YACjC,gBAAgB,EAAE,wBAAwB;SAC3C,CAAC,CAAC;QAEH,CAAC,CAAC,GAAG,CAAC,IAAI,CACR,oHAAoH,CACrH,CAAC;QACF,CAAC,CAAC,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,eAAe,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzG,CAAC"}
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/commands/git/connect.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { Command } from "@oclif/core";
2
- export default class GitDisconnect extends Command {
1
+ import { AlpicCommand } from "../../lib/alpic-command.js";
2
+ export default class GitDisconnect extends AlpicCommand {
3
3
  static description: string;
4
4
  static examples: string[];
5
5
  static args: {
@@ -2,11 +2,12 @@ import * as p from "@clack/prompts";
2
2
  import { Args, Command } from "@oclif/core";
3
3
  import chalk from "chalk";
4
4
  import { api } from "../../api.js";
5
+ import { AlpicCommand } from "../../lib/alpic-command.js";
5
6
  import { ensureApiKey } from "../../lib/auth.js";
6
7
  import { config } from "../../lib/config.js";
7
- import { isGitRepository, listGitRemotes } from "../../lib/git.js";
8
+ import { isGitRepository, listGithubRemotes } from "../../lib/git.js";
8
9
  import { resolveDeployDir } from "../../lib/project.js";
9
- export default class GitDisconnect extends Command {
10
+ export default class GitDisconnect extends AlpicCommand {
10
11
  static description = "Disconnect a linked Alpic project from its git remote source";
11
12
  static examples = ["<%= config.bin %> git disconnect", "<%= config.bin %> git disconnect ./my-app"];
12
13
  static args = {
@@ -29,17 +30,6 @@ export default class GitDisconnect extends Command {
29
30
  this.exit(1);
30
31
  return;
31
32
  }
32
- if (!isGitRepository(deployDir)) {
33
- p.cancel("This directory is not a git repository.");
34
- this.exit(1);
35
- return;
36
- }
37
- const remotes = listGitRemotes(deployDir);
38
- if (remotes.length === 0) {
39
- p.cancel("This git repository has no remotes configured.");
40
- this.exit(1);
41
- return;
42
- }
43
33
  const project = await api.projects.get.v1({ projectId: linkedConfig.projectId });
44
34
  if (!project.sourceRepository) {
45
35
  p.cancel(`Project "${project.name}" is not connected to any repository.`);
@@ -47,8 +37,8 @@ export default class GitDisconnect extends Command {
47
37
  return;
48
38
  }
49
39
  const confirm = await p.confirm({
50
- message: chalk.bold(`Are you sure you want to disconnect ${chalk.bold(project.sourceRepository)} from project ${chalk.bold(project.name)}?`),
51
- initialValue: true,
40
+ message: `Are you sure you want to disconnect ${chalk.bold(project.sourceRepository)} from project ${chalk.bold(project.name)}?`,
41
+ initialValue: false,
52
42
  });
53
43
  if (p.isCancel(confirm) || !confirm) {
54
44
  p.cancel("Git disconnect cancelled");
@@ -1 +1 @@
1
- {"version":3,"file":"disconnect.js","sourceRoot":"","sources":["../../../src/commands/git/disconnect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"disconnect.js","sourceRoot":"","sources":["../../../src/commands/git/disconnect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,YAAY;IACrD,MAAM,CAAU,WAAW,GAAG,8DAA8D,CAAC;IAE7F,MAAM,CAAU,QAAQ,GAAG,CAAC,kCAAkC,EAAE,2CAA2C,CAAC,CAAC;IAE7G,MAAM,CAAU,IAAI,GAAG;QACrB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC;YACrB,WAAW,EAAE,sDAAsD;YACnE,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACjD,CAAC,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAEnD,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,CAAC,CAAC,MAAM,CAAC,uFAAuF,CAAC,CAAC;YAClG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;QACjF,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;YAC9B,CAAC,CAAC,MAAM,CAAC,YAAY,OAAO,CAAC,IAAI,uCAAuC,CAAC,CAAC;YAC1E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;YAC9B,OAAO,EAAE,uCAAuC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;YAChI,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,CAAC,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,SAAS,EAAE,YAAY,CAAC,SAAS;YACjC,gBAAgB,EAAE,IAAI;SACvB,CAAC,CAAC;QAEH,CAAC,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9G,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Command } from "@oclif/core";
2
+ export declare abstract class AlpicCommand extends Command {
3
+ catch(error: unknown): Promise<void>;
4
+ }
@@ -0,0 +1,20 @@
1
+ import * as p from "@clack/prompts";
2
+ import { Command } from "@oclif/core";
3
+ import { ORPCError } from "@orpc/client";
4
+ export class AlpicCommand extends Command {
5
+ async catch(error) {
6
+ if (error instanceof ORPCError) {
7
+ p.cancel(`An error occurred while connecting to Alpic: ${error.message}`);
8
+ this.exit(1);
9
+ return;
10
+ }
11
+ if (error instanceof Error) {
12
+ p.cancel(error.message);
13
+ this.exit(1);
14
+ return;
15
+ }
16
+ p.cancel(String(error));
17
+ this.exit(1);
18
+ }
19
+ }
20
+ //# sourceMappingURL=alpic-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alpic-command.js","sourceRoot":"","sources":["../../src/lib/alpic-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,OAAgB,YAAa,SAAQ,OAAO;IACvC,KAAK,CAAC,KAAK,CAAC,KAAc;QACjC,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,CAAC,CAAC,MAAM,CAAC,gDAAgD,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QACD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACf,CAAC;CACF"}
@@ -1 +1 @@
1
- export declare function ensureApiKey(): string | null;
1
+ export declare function ensureApiKey(): boolean;
package/dist/lib/auth.js CHANGED
@@ -3,8 +3,8 @@ export function ensureApiKey() {
3
3
  const apiKey = process.env.ALPIC_API_KEY;
4
4
  if (!apiKey) {
5
5
  p.cancel("ALPIC_API_KEY environment variable is required. Get your API key from Team settings in the Alpic dashboard.");
6
- return null;
6
+ return false;
7
7
  }
8
- return apiKey;
8
+ return true;
9
9
  }
10
10
  //# sourceMappingURL=auth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AAEpC,MAAM,UAAU,YAAY;IAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,CAAC,CAAC,MAAM,CACN,6GAA6G,CAC9G,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/lib/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AAEpC,MAAM,UAAU,YAAY;IAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACzC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,CAAC,CAAC,MAAM,CACN,6GAA6G,CAC9G,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
package/dist/lib/git.d.ts CHANGED
@@ -1,8 +1,14 @@
1
1
  export type GitRemote = {
2
2
  name: string;
3
3
  url: string;
4
- sourceRepository: string | null;
4
+ sourceRepository: string;
5
5
  };
6
6
  export declare function isGitRepository(cwd: string): boolean;
7
- export declare function getCurrentBranch(cwd: string): string | null;
8
- export declare function listGitRemotes(cwd: string): GitRemote[];
7
+ export declare function listGithubRemotes(cwd: string): GitRemote[];
8
+ export type ProjectWithSourceRepository = {
9
+ name: string;
10
+ sourceRepository: string | null;
11
+ };
12
+ export declare function confirmLinkAnotherIfAlreadyConnected(project: ProjectWithSourceRepository): Promise<boolean>;
13
+ export declare function selectRemoteSourceRepository(remotes: GitRemote[]): Promise<string | null>;
14
+ export declare function showGitSetupInstructions(): void;
package/dist/lib/git.js CHANGED
@@ -1,3 +1,5 @@
1
+ import * as p from "@clack/prompts";
2
+ import chalk from "chalk";
1
3
  import { execFileSync } from "node:child_process";
2
4
  function runGit(args, cwd) {
3
5
  return execFileSync("git", args, {
@@ -14,16 +16,7 @@ export function isGitRepository(cwd) {
14
16
  return false;
15
17
  }
16
18
  }
17
- export function getCurrentBranch(cwd) {
18
- try {
19
- const branch = runGit(["symbolic-ref", "--short", "HEAD"], cwd);
20
- return branch || null;
21
- }
22
- catch {
23
- return null;
24
- }
25
- }
26
- export function listGitRemotes(cwd) {
19
+ export function listGithubRemotes(cwd) {
27
20
  let output;
28
21
  try {
29
22
  output = runGit(["remote", "-v"], cwd);
@@ -44,14 +37,58 @@ export function listGitRemotes(cwd) {
44
37
  if (kind !== "fetch")
45
38
  continue;
46
39
  const key = `${name}:${url}`;
47
- remotes.set(key, {
48
- name,
49
- url,
50
- sourceRepository: parseGitHubSourceRepository(url),
51
- });
40
+ const sourceRepository = parseGitHubSourceRepository(url);
41
+ if (sourceRepository) {
42
+ remotes.set(key, {
43
+ name,
44
+ url,
45
+ sourceRepository,
46
+ });
47
+ }
52
48
  }
53
49
  return [...remotes.values()];
54
50
  }
51
+ export async function confirmLinkAnotherIfAlreadyConnected(project) {
52
+ if (!project.sourceRepository) {
53
+ return true;
54
+ }
55
+ p.log.info(`Project "${project.name}" is already connected to "${project.sourceRepository}".`);
56
+ const confirm = await p.confirm({
57
+ message: chalk.bold("Do you want to link another repository?"),
58
+ initialValue: false,
59
+ });
60
+ if (p.isCancel(confirm) || !confirm) {
61
+ p.cancel("Git connect cancelled");
62
+ return false;
63
+ }
64
+ return true;
65
+ }
66
+ export async function selectRemoteSourceRepository(remotes) {
67
+ if (remotes.length === 1) {
68
+ p.log.info(`Using remote source repository "${remotes[0].sourceRepository}" (${remotes[0].name}).`);
69
+ return remotes[0].sourceRepository;
70
+ }
71
+ const selected = await p.select({
72
+ message: chalk.bold("Choose the remote source to connect"),
73
+ options: remotes.map((remote) => ({
74
+ value: remote.sourceRepository,
75
+ label: `${remote.sourceRepository} (${remote.name})`,
76
+ hint: remote.url,
77
+ })),
78
+ });
79
+ if (p.isCancel(selected)) {
80
+ p.cancel("Git connect cancelled");
81
+ return null;
82
+ }
83
+ return selected;
84
+ }
85
+ export function showGitSetupInstructions() {
86
+ p.note([
87
+ `Run ${chalk.cyan("git init")} in this directory`,
88
+ `Add a remote: ${chalk.cyan("git remote add origin <your-repo-url>")}`,
89
+ `Then run ${chalk.cyan("alpic git connect")} again`,
90
+ ].join("\n"), "To set up a git repository:", { format: (line) => line });
91
+ }
55
92
  function parseGitHubSourceRepository(url) {
56
93
  const patterns = [
57
94
  /^git@github\.com:([^/\s]+\/[^/\s]+?)(?:\.git)?$/,
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/lib/git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAQlD,SAAS,MAAM,CAAC,IAAc,EAAE,GAAW;IACzC,OAAO,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE;QAC/B,GAAG;QACH,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;KAClC,CAAC,CAAC,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,CAAC,WAAW,EAAE,uBAAuB,CAAC,EAAE,GAAG,CAAC,KAAK,MAAM,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC;QAChE,OAAO,MAAM,IAAI,IAAI,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,EAAqB,CAAC;IAC7C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QAC/D,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI;YAAE,SAAS;QACrC,IAAI,IAAI,KAAK,OAAO;YAAE,SAAS;QAE/B,MAAM,GAAG,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE;YACf,IAAI;YACJ,GAAG;YACH,gBAAgB,EAAE,2BAA2B,CAAC,GAAG,CAAC;SACnD,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,2BAA2B,CAAC,GAAW;IAC9C,MAAM,QAAQ,GAAG;QACf,iDAAiD;QACjD,2DAA2D;QAC3D,6DAA6D;KAC9D,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACjC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/lib/git.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "alpic",
3
- "version": "0.0.0-dev.664c88e",
3
+ "version": "0.0.0-dev.6684d89",
4
4
  "description": "The command-line interface for Alpic",
5
5
  "homepage": "https://alpic.ai",
6
6
  "preferGlobal": true,
@@ -34,7 +34,7 @@
34
34
  "ci-info": "^4.4.0",
35
35
  "posthog-node": "^5.24.11",
36
36
  "tar": "^7.4.0",
37
- "@alpic-ai/api": "0.0.0-dev.664c88e"
37
+ "@alpic-ai/api": "0.0.0-dev.6684d89"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@orpc/openapi": "^1.13.4",