@lizard-build/cli 4.0.73 → 4.0.75

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.
@@ -12,6 +12,9 @@ const CATALOG = [
12
12
  { name: "s3", label: "S3 Bucket", description: "S3-compatible object storage" },
13
13
  ];
14
14
  async function detectPortFromDockerfile(repo) {
15
+ // A Lizard Git repository: the build detects the port itself (never ask GitHub about a namesake).
16
+ if (repo.startsWith("lizard:") || /lizard\.build\/git\/|git\.lizard\.build\//.test(repo))
17
+ return undefined;
15
18
  const repoPath = repo.startsWith("http") ? repo.replace(/^https?:\/\/github\.com\//, "") : repo;
16
19
  for (const branch of ["main", "master"]) {
17
20
  try {
@@ -113,7 +116,7 @@ export function registerAdd(program) {
113
116
  .description("Add a database, service, or repo to the project")
114
117
  .option("-a, --addon <type...>", "Add one or more managed addons (multi-add: -a postgres -a redis -a s3)")
115
118
  .option("-s, --service <name>", "Create an empty service with this name")
116
- .option("-r, --repo <repo>", "Create a service from a GitHub repo (owner/repo)")
119
+ .option("-r, --repo <repo>", "Create a service from a repo: owner/repo on GitHub, or lizard:owner/repo on Lizard Git")
117
120
  .option("-v, --variables <kv>", "KEY=value pair to seed the service. Repeat for multiple: -v K1=v1 -v K2=v2. Ignored for managed addons.", (val, prev) => [...prev, val], [])
118
121
  .option("-n, --name <name>", "Name used in ${{<name>.KEY}} templates and shown in the dashboard. Renaming it later breaks those refs.")
119
122
  .option("--instance-name <name>", "(deprecated) alias for --name")
@@ -232,9 +235,12 @@ async function runAdd(input) {
232
235
  info(`Detected port ${chalk.bold(detectedPort)} from Dockerfile`);
233
236
  const app = await api.post(withScope(`/api/projects/${projectId}/apps`, scope), {
234
237
  name: serviceName,
238
+ // lizard:owner/repo: a Lizard Git repository (pushes to it deploy the service).
235
239
  repoUrl: opts.repo.startsWith("http")
236
240
  ? opts.repo
237
- : `https://github.com/${opts.repo}`,
241
+ : opts.repo.startsWith("lizard:")
242
+ ? `https://lizard.build/git/${opts.repo.slice("lizard:".length)}`
243
+ : `https://github.com/${opts.repo}`,
238
244
  region,
239
245
  envVars: variables,
240
246
  ...(detectedPort ? { containerPort: detectedPort } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
@@ -74,13 +74,18 @@ export function checkoutStatus() {
74
74
  const c = wc.loadCheckout(root);
75
75
  const ch = wc.changesOf(c, wc.scanWorking(root, c));
76
76
  const unpushed = (c.pending?.commits ?? []).map((x) => ({ message: x.message.trim(), time: x.time, files: x.files.length }));
77
- out({ repo: c.repo, branch: c.branch, commit: c.base, sparse: c.sparse, ...ch, unpushed }, () => {
77
+ out({ repo: c.repo, branch: c.branch, commit: c.base, sparse: c.sparse, ...ch, unpushed, conflicts: c.conflicts ?? [] }, () => {
78
78
  info(`${chalk.bold(c.repo)} on ${chalk.cyan(c.branch)} at ${c.base.slice(0, 12)}${c.sparse ? chalk.dim(` (sparse: ${c.sparse.join(", ")})`) : ""}`);
79
79
  if (unpushed.length) {
80
80
  info(`${chalk.yellow(`${unpushed.length} commit${unpushed.length === 1 ? "" : "s"} not pushed`)} ${chalk.dim("(lizard git push)")}`);
81
81
  for (const u of unpushed)
82
82
  info(` ${chalk.dim("•")} ${u.message.split("\n")[0]}`);
83
83
  }
84
+ if (c.conflicts?.length) {
85
+ info(chalk.red(`${c.conflicts.length} conflict${c.conflicts.length === 1 ? "" : "s"} to fix`));
86
+ for (const x of c.conflicts)
87
+ info(` ${chalk.red("conflict")} ${x.path} ${chalk.dim(x.reason)}`);
88
+ }
84
89
  const n = ch.added.length + ch.modified.length + ch.deleted.length;
85
90
  if (!n)
86
91
  return info(chalk.dim("no changes"));
@@ -162,6 +167,26 @@ export function registerLizardGit(git) {
162
167
  const extra = r.sync.updated.length + r.sync.removed.length;
163
168
  return `Pushed ${r.shas.length} commit${r.shas.length === 1 ? "" : "s"} to ${r.branch}: ${r.sha.slice(0, 12)}${r.uploaded ? chalk.dim(` (${r.uploaded} file(s) uploaded)`) : ""}${extra ? chalk.dim(` · ${extra} file(s) from others' commits updated`) : ""}`;
164
169
  };
170
+ // A sync's merges and conflicts, for people.
171
+ const showMerge = (s) => {
172
+ for (const p of s.merged ?? [])
173
+ info(` ${chalk.green("merged")} ${p}`);
174
+ for (const x of s.conflicts ?? [])
175
+ info(` ${chalk.red("conflict")} ${x.path} ${chalk.dim(x.reason)}`);
176
+ };
177
+ // Push, or after a conflict: what was merged and what to fix (exit status 1).
178
+ const reportPush = (r) => {
179
+ if (r.pushed)
180
+ return done(r, pushed(r));
181
+ out(r, () => {
182
+ info(chalk.yellow(`Not pushed: ${r.branch} has commits that change the same places.`));
183
+ info(chalk.dim(`Your ${r.messages?.length ?? 0} commit(s) are changes in your files again, merged with ${r.branch}:`));
184
+ showMerge(r.sync);
185
+ const msg = (r.messages ?? []).map((m) => m.split("\n")[0]).join("; ");
186
+ info(`Fix the marked places, then: lizard git commit --push -m ${JSON.stringify(msg || "...")}`);
187
+ });
188
+ process.exitCode = 1;
189
+ };
165
190
  git
166
191
  .command("commit")
167
192
  .description("Commit your changes here (lizard git push sends them); --push sends at once")
@@ -169,14 +194,13 @@ export function registerLizardGit(git) {
169
194
  .requiredOption("-m, --message <text>", "Commit message")
170
195
  .option("-b, --branch <name>", "Commit to a new branch, starting at this checkout's commit (and switch to it)")
171
196
  .option("--push", "Push right after committing")
197
+ .option("--force", "Commit even with conflict markers left in a file")
172
198
  .action(async (paths, opts) => {
173
199
  const root = needCheckout();
174
200
  const c = wc.loadCheckout(root);
175
- const r = wc.commitLocal(root, c, opts.message.endsWith("\n") ? opts.message : opts.message + "\n", paths, opts.branch);
176
- if (opts.push) {
177
- const p = await wc.push(root, c);
178
- return done(p, pushed(p));
179
- }
201
+ const r = wc.commitLocal(root, c, opts.message.endsWith("\n") ? opts.message : opts.message + "\n", paths, opts.branch, !!opts.force);
202
+ if (opts.push)
203
+ return reportPush(await wc.push(root, c));
180
204
  done(r, `Committed ${r.files} file(s) on ${r.branch} ${chalk.dim(`(${r.pending} not pushed: lizard git push)`)}`);
181
205
  });
182
206
  git
@@ -185,8 +209,7 @@ export function registerLizardGit(git) {
185
209
  .action(async () => {
186
210
  const root = needCheckout();
187
211
  const c = wc.loadCheckout(root);
188
- const r = await wc.push(root, c);
189
- done(r, pushed(r));
212
+ reportPush(await wc.push(root, c));
190
213
  });
191
214
  git
192
215
  .command("uncommit")
@@ -205,8 +228,15 @@ export function registerLizardGit(git) {
205
228
  const root = needCheckout();
206
229
  const c = wc.loadCheckout(root);
207
230
  const r = await wc.sync(root, c);
208
- done(r, r.from === r.to ? `Already at ${c.branch}'s latest (${r.to.slice(0, 12)})` :
209
- `${c.branch}: ${r.from.slice(0, 12)} -> ${r.to.slice(0, 12)} (${r.updated.length} updated, ${r.removed.length} removed)`);
231
+ out(r, () => {
232
+ info(r.from === r.to ? `Already at ${c.branch}'s latest (${r.to.slice(0, 12)})` :
233
+ `${c.branch}: ${r.from.slice(0, 12)} -> ${r.to.slice(0, 12)} (${r.updated.length} updated, ${r.removed.length} removed)`);
234
+ showMerge(r);
235
+ if (r.conflicts?.length)
236
+ info(chalk.dim(`Fix the marked places, then commit and push them.`));
237
+ });
238
+ if (r.conflicts?.length)
239
+ process.exitCode = 1;
210
240
  });
211
241
  git
212
242
  .command("switch")
@@ -279,14 +309,15 @@ export function registerLizardGit(git) {
279
309
  .option("-d, --description <text>")
280
310
  .option("--readme", "Start with a README (otherwise empty)")
281
311
  .option("--default-branch <name>", "Default branch (main)")
312
+ .option("-w, --workspace <slug>", "Workspace whose members become its collaborators (default: your personal one)")
282
313
  .action(async (name, opts) => {
283
314
  const r = await lg.post("/api/repos", {
284
- name, private: !!opts.private, description: opts.description, readme: !!opts.readme, defaultBranch: opts.defaultBranch,
315
+ name, private: !!opts.private, description: opts.description, readme: !!opts.readme, defaultBranch: opts.defaultBranch, workspace: opts.workspace,
285
316
  });
286
317
  const full = `${r.owner}/${r.name}`;
287
318
  out({ ...r, url: `${gitURL()}/${full}` }, () => {
288
319
  success(`Created ${chalk.bold(full)} ${link(`${gitURL()}/${full}`)}`);
289
- info(chalk.dim(` Check out: lizard git clone ${full} then: lizard git commit -m "..."`));
320
+ info(chalk.dim(` Check out: lizard git clone ${full} then: lizard git commit -m "..." && lizard git push`));
290
321
  });
291
322
  });
292
323
  repoOpt(repo.command("view").description("A repository's details").argument("[repo]"))
@@ -295,6 +326,8 @@ export function registerLizardGit(git) {
295
326
  const m = await lg.get(repoPath(r));
296
327
  out(m, () => {
297
328
  info(`${chalk.bold(r)} ${m.repo.private ? "private" : "public"} ${chalk.dim(`you: ${m.role || "reader"}`)}`);
329
+ if (m.workspace)
330
+ info(chalk.dim(`workspace: ${m.workspace.name} (${m.workspace.slug}): its members are collaborators`));
298
331
  if (m.repo.description)
299
332
  info(m.repo.description);
300
333
  if (m.forkOf)
@@ -303,16 +336,18 @@ export function registerLizardGit(git) {
303
336
  info(`${link(`${gitURL()}/${r}`)}\ncheck out: lizard git clone ${r}`);
304
337
  });
305
338
  });
306
- repoOpt(repo.command("edit").description("Change name, description, visibility or default branch").argument("[repo]"))
339
+ repoOpt(repo.command("edit").description("Change name, description, visibility, default branch or workspace").argument("[repo]"))
307
340
  .option("--name <name>")
308
341
  .option("-d, --description <text>")
309
342
  .option("--private").option("--public")
310
343
  .option("--default-branch <name>")
344
+ .option("-w, --workspace <slug>", "Attach to a workspace you're in: its members become collaborators (\"none\" detaches; owner only)")
311
345
  .action(async (arg, opts) => {
312
346
  const r = await resolveRepo(arg ?? opts.repo);
313
347
  await lg.patch(repoPath(r), {
314
348
  name: opts.name, description: opts.description, defaultBranch: opts.defaultBranch,
315
349
  private: opts.private ? true : opts.public ? false : undefined,
350
+ workspace: opts.workspace === undefined ? undefined : opts.workspace === "none" ? "" : opts.workspace,
316
351
  });
317
352
  done({ ok: true, repo: opts.name ? `${r.split("/")[0]}/${opts.name}` : r }, `Updated ${r}`);
318
353
  });
@@ -1008,7 +1043,7 @@ export function registerLizardGit(git) {
1008
1043
  const r = await resolveRepo(opts.repo);
1009
1044
  const c = await lg.get(`${repoPath(r)}/collaborators`);
1010
1045
  out(c, () => {
1011
- c.collaborators.length ? table(["LOGIN", "ROLE", "SINCE"], c.collaborators.map((x) => [x.login, x.role, ago(x.createdAt)])) : info("No collaborators.");
1046
+ c.collaborators.length ? table(["LOGIN", "ROLE", "SINCE", "VIA"], c.collaborators.map((x) => [x.login, x.role, ago(x.createdAt), x.fromWorkspace ? "workspace" : ""])) : info("No collaborators.");
1012
1047
  if (c.invitations?.length) {
1013
1048
  info("\nInvited:");
1014
1049
  table(["ID", "LOGIN", "ROLE", "BY"], c.invitations.map((x) => [String(x.id), x.login, x.role, x.inviter]));