rangutopia 0.0.9 → 0.0.10
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/README.md +96 -1
- package/dist/commands/client/deploy/action.d.ts +2 -0
- package/dist/commands/client/deploy/action.d.ts.map +1 -0
- package/dist/commands/client/deploy/action.js +7 -0
- package/dist/commands/client/deploy/action.js.map +1 -0
- package/dist/commands/client/deploy/helpers.d.ts +19 -0
- package/dist/commands/client/deploy/helpers.d.ts.map +1 -0
- package/dist/commands/client/deploy/helpers.js +33 -0
- package/dist/commands/client/deploy/helpers.js.map +1 -0
- package/dist/commands/client/deploy/mod.d.ts +2 -0
- package/dist/commands/client/deploy/mod.d.ts.map +1 -0
- package/dist/commands/client/deploy/mod.js +2 -0
- package/dist/commands/client/deploy/mod.js.map +1 -0
- package/dist/commands/client/deploy/options.d.ts +11 -0
- package/dist/commands/client/deploy/options.d.ts.map +1 -0
- package/dist/commands/client/deploy/options.js +11 -0
- package/dist/commands/client/deploy/options.js.map +1 -0
- package/dist/commands/client/deploy/orchestrator.d.ts +10 -0
- package/dist/commands/client/deploy/orchestrator.d.ts.map +1 -0
- package/dist/commands/client/deploy/orchestrator.js +98 -0
- package/dist/commands/client/deploy/orchestrator.js.map +1 -0
- package/dist/commands/client/deploy/types.d.ts +4 -0
- package/dist/commands/client/deploy/types.d.ts.map +1 -0
- package/dist/commands/client/deploy/types.js +2 -0
- package/dist/commands/client/deploy/types.js.map +1 -0
- package/dist/commands/client/mod.d.ts.map +1 -1
- package/dist/commands/client/mod.js +20 -2
- package/dist/commands/client/mod.js.map +1 -1
- package/dist/commands/library/mod.d.ts.map +1 -1
- package/dist/commands/library/mod.js +17 -7
- package/dist/commands/library/mod.js.map +1 -1
- package/dist/commands/library/publish/helpers.d.ts.map +1 -1
- package/dist/commands/library/publish/helpers.js +71 -86
- package/dist/commands/library/publish/helpers.js.map +1 -1
- package/dist/constants.d.ts +2 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +8 -3
- package/dist/constants.js.map +1 -1
- package/dist/main.js +1 -1
- package/dist/main.js.map +1 -1
- package/dist/modules/vercel/buildOutput.d.ts +26 -0
- package/dist/modules/vercel/buildOutput.d.ts.map +1 -0
- package/dist/modules/vercel/buildOutput.js +58 -0
- package/dist/modules/vercel/buildOutput.js.map +1 -0
- package/dist/modules/vercel/config.d.ts +9 -0
- package/dist/modules/vercel/config.d.ts.map +1 -0
- package/dist/modules/vercel/config.js +19 -0
- package/dist/modules/vercel/config.js.map +1 -0
- package/dist/modules/vercel/constants.d.ts +11 -0
- package/dist/modules/vercel/constants.d.ts.map +1 -0
- package/dist/modules/vercel/constants.js +18 -0
- package/dist/modules/vercel/constants.js.map +1 -0
- package/dist/modules/vercel/credentials.d.ts +5 -0
- package/dist/modules/vercel/credentials.d.ts.map +1 -0
- package/dist/modules/vercel/credentials.js +22 -0
- package/dist/modules/vercel/credentials.js.map +1 -0
- package/dist/modules/vercel/errors.d.ts +13 -0
- package/dist/modules/vercel/errors.d.ts.map +1 -0
- package/dist/modules/vercel/errors.js +19 -0
- package/dist/modules/vercel/errors.js.map +1 -0
- package/dist/modules/vercel/mod.d.ts +2 -0
- package/dist/modules/vercel/mod.d.ts.map +1 -0
- package/dist/modules/vercel/mod.js +2 -0
- package/dist/modules/vercel/mod.js.map +1 -0
- package/dist/modules/vercel/types.d.ts +27 -0
- package/dist/modules/vercel/types.d.ts.map +1 -0
- package/dist/modules/vercel/types.js +4 -0
- package/dist/modules/vercel/types.js.map +1 -0
- package/dist/modules/vercel/vercel.d.ts +48 -0
- package/dist/modules/vercel/vercel.d.ts.map +1 -0
- package/dist/modules/vercel/vercel.js +117 -0
- package/dist/modules/vercel/vercel.js.map +1 -0
- package/dist/utils/changelog.d.ts +1 -1
- package/dist/utils/changelog.d.ts.map +1 -1
- package/dist/utils/changelog.js.map +1 -1
- package/dist/utils/environment.d.ts +17 -0
- package/dist/utils/environment.d.ts.map +1 -0
- package/dist/utils/environment.js +14 -0
- package/dist/utils/environment.js.map +1 -0
- package/dist/utils/packageJson.d.ts +13 -0
- package/dist/utils/packageJson.d.ts.map +1 -1
- package/dist/utils/packageJson.js +27 -10
- package/dist/utils/packageJson.js.map +1 -1
- package/dist/utils/parse.d.ts +3 -0
- package/dist/utils/parse.d.ts.map +1 -1
- package/dist/utils/parse.js +13 -1
- package/dist/utils/parse.js.map +1 -1
- package/package.json +4 -1
- package/templates/deploy/vercel.json +1 -0
- package/tsconfig.json +1 -1
- package/vitest.config.ts +1 -1
package/README.md
CHANGED
|
@@ -1,4 +1,99 @@
|
|
|
1
1
|
# rangutopia
|
|
2
2
|
|
|
3
|
-
A
|
|
3
|
+
A CLI to manage our scripts across the organization.
|
|
4
4
|
|
|
5
|
+
## client deploy
|
|
6
|
+
|
|
7
|
+
Deploys private workspace packages via a provider plugin. Only the `vercel` provider is implemented today (`--provider <name>`, default `vercel`); passing any other name throws "not implemented" — the dispatch is in place so adding another provider is one new branch, not a rewrite. Works on nx and turborepo monorepos.
|
|
8
|
+
|
|
9
|
+
### Usage
|
|
10
|
+
|
|
11
|
+
rangutopia client deploy --prod
|
|
12
|
+
rangutopia client deploy --next
|
|
13
|
+
rangutopia client deploy --preview
|
|
14
|
+
rangutopia client deploy --next --exclude @scope/a,@scope/b
|
|
15
|
+
rangutopia client deploy --next --vercel-config ./my-vercel.json
|
|
16
|
+
rangutopia client deploy --next --dry-run
|
|
17
|
+
rangutopia client deploy --next --provider vercel
|
|
18
|
+
|
|
19
|
+
Exactly one of `--prod / --next / --preview` is required:
|
|
20
|
+
|
|
21
|
+
| Flag | Vercel target | CLI args used |
|
|
22
|
+
| --- | --- | --- |
|
|
23
|
+
| `--prod` | `production` | `vercel deploy --prebuilt --prod --skip-domain` |
|
|
24
|
+
| `--next` | custom `next` environment | `vercel deploy --prebuilt --target next` |
|
|
25
|
+
| `--preview` | built-in `preview` | `vercel deploy --prebuilt --target preview` |
|
|
26
|
+
|
|
27
|
+
### Required environment variables
|
|
28
|
+
|
|
29
|
+
| Variable | Purpose | Required for |
|
|
30
|
+
| --- | --- | --- |
|
|
31
|
+
| `VERCEL_TOKEN` | Vercel CLI auth token | non-dry-run only |
|
|
32
|
+
| `VERCEL_ORG_ID` | Vercel organization ID | non-dry-run only |
|
|
33
|
+
| `VERCEL_PROJECT_ID_<NAME>` | Per-package project ID | always — see "Project-ID requirement by environment" below |
|
|
34
|
+
|
|
35
|
+
`--dry-run` skips `vercel pull` and `vercel deploy`, so it never reads `VERCEL_TOKEN` / `VERCEL_ORG_ID`.
|
|
36
|
+
|
|
37
|
+
### Project-ID convention
|
|
38
|
+
|
|
39
|
+
For each deployable package, the env var name is derived from the package name:
|
|
40
|
+
|
|
41
|
+
1. Drop the npm scope (`@scope/`).
|
|
42
|
+
2. Uppercase the result.
|
|
43
|
+
3. Replace any character that is not `[A-Z0-9]` with `_`.
|
|
44
|
+
4. Prefix with `VERCEL_PROJECT_ID_`.
|
|
45
|
+
|
|
46
|
+
Examples:
|
|
47
|
+
|
|
48
|
+
| Package | Env var |
|
|
49
|
+
| --- | --- |
|
|
50
|
+
| `@rango-dev/widget-app` | `VERCEL_PROJECT_ID_WIDGET_APP` |
|
|
51
|
+
| `@rango-dev/queue-manager-demo` | `VERCEL_PROJECT_ID_QUEUE_MANAGER_DEMO` |
|
|
52
|
+
| `rango-dapp` | `VERCEL_PROJECT_ID_RANGO_DAPP` |
|
|
53
|
+
|
|
54
|
+
### Per-package requirements
|
|
55
|
+
|
|
56
|
+
A package opts in by being `"private": true` in its `package.json`. The `"main"` field must point to a file inside the build-output directory — its directory will be uploaded to Vercel. Example:
|
|
57
|
+
|
|
58
|
+
{
|
|
59
|
+
"name": "@scope/widget-app",
|
|
60
|
+
"private": true,
|
|
61
|
+
"main": "dist/index.html"
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
If `main` is missing, the deploy command throws `MissingMainError` naming the package.
|
|
65
|
+
|
|
66
|
+
### Project-ID requirement by environment
|
|
67
|
+
|
|
68
|
+
- **`--preview`** is strict. Every selected package must have a configured `VERCEL_PROJECT_ID_<NAME>`. A missing ID throws `MissingVercelProjectIdError` with the expected env var name. Rationale: preview is the deliberate per-package test path, and silent skipping would hide misconfiguration.
|
|
69
|
+
- **`--prod` and `--next`** are lenient. Packages without a project ID are silently skipped — useful for workspaces where only some private packages are deployable apps.
|
|
70
|
+
|
|
71
|
+
### vercel.json
|
|
72
|
+
|
|
73
|
+
Per invocation, the deploy resolves a `vercel.json` for each package in this order:
|
|
74
|
+
|
|
75
|
+
1. **`--vercel-config <path>`** if passed — wins for every package, no per-package override.
|
|
76
|
+
2. **`<pkg.location>/vercel.json`** if it exists — the package ships its own.
|
|
77
|
+
3. **`templates/deploy/vercel.json`** — the shipped default, `{ "rewrites": [{ "source": "/(.*)", "destination": "/" }] }`.
|
|
78
|
+
|
|
79
|
+
Supported keys at the top level of any `vercel.json`: `routes`, `rewrites`, `redirects`, `headers`, `cleanUrls`, `trailingSlash` — the input shape accepted by `@vercel/routing-utils.getTransformedRoutes`. Anything else throws.
|
|
80
|
+
|
|
81
|
+
A fingerprint cache-control rule (`s-maxage=31536000, immutable` for `*.<hash>.{css,js,png,jpg,webp,avif,svg}`) is prepended to the route list before being written to `.vercel/output/config.json`.
|
|
82
|
+
|
|
83
|
+
### Flags
|
|
84
|
+
|
|
85
|
+
- `--provider <name>` — deploy provider. Defaults to `vercel`. Any other value throws "not implemented".
|
|
86
|
+
- `--exclude <names>` — comma-separated package names to skip (e.g. `--exclude @scope/a,@scope/b`).
|
|
87
|
+
- `--vercel-config <path>` — explicit `vercel.json` used for every package, overriding per-package files and the shipped template. Resolved relative to the current working directory.
|
|
88
|
+
- `--dry-run` — runs the filter and produces the build-output artifact at `<pkg.location>/.vercel/output/{static,config.json}`, but skips `vercel pull` and `vercel deploy`. Doesn't need `VERCEL_TOKEN` / `VERCEL_ORG_ID`.
|
|
89
|
+
|
|
90
|
+
### Example GitHub Actions step
|
|
91
|
+
|
|
92
|
+
- name: Deploy
|
|
93
|
+
env:
|
|
94
|
+
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }}
|
|
95
|
+
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
|
|
96
|
+
VERCEL_PROJECT_ID_WIDGET_APP: ${{ secrets.VERCEL_PROJECT_ID_WIDGET_APP }}
|
|
97
|
+
run: |
|
|
98
|
+
yarn global add vercel
|
|
99
|
+
rangutopia client deploy --preview
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../../../src/commands/client/deploy/action.ts"],"names":[],"mappings":"AAGA,wBAAsB,MAAM,CAAC,cAAc,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAGnE"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CommandOptionsSchema } from "./options.js";
|
|
2
|
+
import { runDeploy } from "./orchestrator.js";
|
|
3
|
+
export async function action(commandOptions) {
|
|
4
|
+
const opts = CommandOptionsSchema.parse(commandOptions);
|
|
5
|
+
await runDeploy(opts);
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"action.js","sourceRoot":"","sources":["../../../../src/commands/client/deploy/action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,cAAuB;IAClD,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACxD,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Package } from "../../../utils/packageJson.js";
|
|
2
|
+
import type { Environments } from "../../../utils/environment.js";
|
|
3
|
+
import { Vercel } from "../../../modules/vercel/mod.js";
|
|
4
|
+
/**
|
|
5
|
+
* Returns the subset of `packages` that should be deployed, as `Vercel`
|
|
6
|
+
* instances ready for use by the orchestrator:
|
|
7
|
+
* - private, not excluded.
|
|
8
|
+
* - under `preview`, packages with no `VERCEL_PROJECT_ID_<NAME>` env var
|
|
9
|
+
* throw `MissingVercelProjectIdError` (strict — preview is the deliberate
|
|
10
|
+
* per-package test path; silent skipping would hide misconfiguration).
|
|
11
|
+
* - under any other environment, packages with no project ID are silently
|
|
12
|
+
* skipped (lenient — production/next run across the whole workspace and
|
|
13
|
+
* not every package is a deployable app).
|
|
14
|
+
*/
|
|
15
|
+
export declare function getDeployablePackages(packages: Package[], opts: {
|
|
16
|
+
environment: Environments;
|
|
17
|
+
exclude: Set<string>;
|
|
18
|
+
}): Vercel[];
|
|
19
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/commands/client/deploy/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAGxD;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,OAAO,EAAE,EACnB,IAAI,EAAE;IAAE,WAAW,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAE,GACxD,MAAM,EAAE,CAaV"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Vercel } from "../../../modules/vercel/mod.js";
|
|
2
|
+
import { MissingVercelProjectIdError } from "../../../modules/vercel/errors.js";
|
|
3
|
+
/**
|
|
4
|
+
* Returns the subset of `packages` that should be deployed, as `Vercel`
|
|
5
|
+
* instances ready for use by the orchestrator:
|
|
6
|
+
* - private, not excluded.
|
|
7
|
+
* - under `preview`, packages with no `VERCEL_PROJECT_ID_<NAME>` env var
|
|
8
|
+
* throw `MissingVercelProjectIdError` (strict — preview is the deliberate
|
|
9
|
+
* per-package test path; silent skipping would hide misconfiguration).
|
|
10
|
+
* - under any other environment, packages with no project ID are silently
|
|
11
|
+
* skipped (lenient — production/next run across the whole workspace and
|
|
12
|
+
* not every package is a deployable app).
|
|
13
|
+
*/
|
|
14
|
+
export function getDeployablePackages(packages, opts) {
|
|
15
|
+
const result = [];
|
|
16
|
+
for (const pkg of packages) {
|
|
17
|
+
if (!pkg.private)
|
|
18
|
+
continue;
|
|
19
|
+
if (opts.exclude.has(pkg.name))
|
|
20
|
+
continue;
|
|
21
|
+
try {
|
|
22
|
+
result.push(new Vercel(pkg));
|
|
23
|
+
}
|
|
24
|
+
catch (e) {
|
|
25
|
+
if (!(e instanceof MissingVercelProjectIdError))
|
|
26
|
+
throw e;
|
|
27
|
+
if (opts.environment === "preview")
|
|
28
|
+
throw e;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
return result;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../src/commands/client/deploy/helpers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAEhF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAmB,EACnB,IAAyD;IAEzD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,SAAS;QAC3B,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QACzC,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,CAAC,CAAC,YAAY,2BAA2B,CAAC;gBAAE,MAAM,CAAC,CAAC;YACzD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;gBAAE,MAAM,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/commands/client/deploy/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../../src/commands/client/deploy/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
export declare const CommandOptionsSchema: z.ZodObject<{
|
|
3
|
+
prod: z.ZodBoolean;
|
|
4
|
+
next: z.ZodBoolean;
|
|
5
|
+
preview: z.ZodBoolean;
|
|
6
|
+
provider: z.ZodDefault<z.ZodString>;
|
|
7
|
+
exclude: z.ZodOptional<z.ZodString>;
|
|
8
|
+
vercelConfig: z.ZodOptional<z.ZodString>;
|
|
9
|
+
dryRun: z.ZodBoolean;
|
|
10
|
+
}, z.core.$strip>;
|
|
11
|
+
//# sourceMappingURL=options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../../src/commands/client/deploy/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,eAAO,MAAM,oBAAoB;;;;;;;;iBAU9B,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { z } from "zod/v4";
|
|
2
|
+
import { environmentOptionsSchema } from "../../../utils/environment.js";
|
|
3
|
+
export const CommandOptionsSchema = environmentOptionsSchema
|
|
4
|
+
.extend({
|
|
5
|
+
provider: z.string().default("vercel"),
|
|
6
|
+
exclude: z.string().optional(),
|
|
7
|
+
vercelConfig: z.string().optional(),
|
|
8
|
+
dryRun: z.boolean(),
|
|
9
|
+
})
|
|
10
|
+
.refine((o) => [o.prod, o.next, o.preview].filter(Boolean).length === 1, { message: "Specify exactly one of --prod, --next, --preview" });
|
|
11
|
+
//# sourceMappingURL=options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../../../src/commands/client/deploy/options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAEzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,wBAAwB;KACzD,MAAM,CAAC;IACN,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;IACtC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACnC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;CACpB,CAAC;KACD,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAC/D,EAAE,OAAO,EAAE,kDAAkD,EAAE,CAChE,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { OptionsType } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Dispatches to the configured provider's deploy flow. Only `vercel` is
|
|
4
|
+
* implemented today; any other provider throws. Adding a new provider
|
|
5
|
+
* (Netlify, S3, …) means adding a new `case` here plus a sibling
|
|
6
|
+
* `run<Provider>Deploy` function — no rewrite of action.ts or the
|
|
7
|
+
* cross-provider plumbing.
|
|
8
|
+
*/
|
|
9
|
+
export declare function runDeploy(opts: OptionsType): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=orchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../../src/commands/client/deploy/orchestrator.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAUhE"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { resolve } from "node:path";
|
|
2
|
+
import * as actionCore from "@actions/core";
|
|
3
|
+
import { logger, getMonorepoManager } from "../../../modules/mod.js";
|
|
4
|
+
import { getVercelOrgId, getVercelToken, } from "../../../modules/vercel/credentials.js";
|
|
5
|
+
import { toEnvironment } from "../../../utils/environment.js";
|
|
6
|
+
import { packageNameWithoutScope, workspacePackages } from "../../../utils/packageJson.js";
|
|
7
|
+
import { parseCommaList } from "../../../utils/parse.js";
|
|
8
|
+
import { getDeployablePackages } from "./helpers.js";
|
|
9
|
+
/**
|
|
10
|
+
* Dispatches to the configured provider's deploy flow. Only `vercel` is
|
|
11
|
+
* implemented today; any other provider throws. Adding a new provider
|
|
12
|
+
* (Netlify, S3, …) means adding a new `case` here plus a sibling
|
|
13
|
+
* `run<Provider>Deploy` function — no rewrite of action.ts or the
|
|
14
|
+
* cross-provider plumbing.
|
|
15
|
+
*/
|
|
16
|
+
export async function runDeploy(opts) {
|
|
17
|
+
switch (opts.provider) {
|
|
18
|
+
case "vercel":
|
|
19
|
+
await runVercelDeploy(opts);
|
|
20
|
+
return;
|
|
21
|
+
default:
|
|
22
|
+
throw new Error(`Deploy provider "${opts.provider}" is not implemented. Supported: vercel.`);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
async function runVercelDeploy(opts) {
|
|
26
|
+
logger.githubAction.group("🔍 Checking environments...");
|
|
27
|
+
logger.info(opts);
|
|
28
|
+
const environment = toEnvironment(opts);
|
|
29
|
+
// Dry-run skips `vercel pull` and `vercel deploy`, so it doesn't need
|
|
30
|
+
// VERCEL_TOKEN / VERCEL_ORG_ID. Outside dry-run, fail fast if either is
|
|
31
|
+
// missing instead of failing per-package later inside pull/deploy.
|
|
32
|
+
if (!opts.dryRun) {
|
|
33
|
+
getVercelToken();
|
|
34
|
+
getVercelOrgId();
|
|
35
|
+
}
|
|
36
|
+
logger.githubAction.endGroup();
|
|
37
|
+
logger.githubAction.group("🔍 Selecting deployable packages...");
|
|
38
|
+
const all = await workspacePackages();
|
|
39
|
+
const deployables = getDeployablePackages(all, {
|
|
40
|
+
environment,
|
|
41
|
+
exclude: parseCommaList(opts.exclude),
|
|
42
|
+
});
|
|
43
|
+
if (deployables.length === 0) {
|
|
44
|
+
logger.info("No deployable packages found. Skipping.");
|
|
45
|
+
logger.githubAction.endGroup();
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
logger.info(`Will deploy: ${deployables.map((v) => v.pkg.name).join(", ")}`);
|
|
49
|
+
logger.githubAction.endGroup();
|
|
50
|
+
logger.githubAction.group("🔨 Building deployable packages...");
|
|
51
|
+
await getMonorepoManager().build(deployables.map((v) => v.pkg.name));
|
|
52
|
+
logger.githubAction.endGroup();
|
|
53
|
+
const vercelConfigOverride = opts.vercelConfig
|
|
54
|
+
? resolve(process.cwd(), opts.vercelConfig)
|
|
55
|
+
: undefined;
|
|
56
|
+
logger.githubAction.group(opts.dryRun ? "🚧 Dry-run deploy..." : "🚀 Deploying to Vercel...");
|
|
57
|
+
const results = await Promise.all(deployables.map(async (vercel) => {
|
|
58
|
+
const { pkg } = vercel;
|
|
59
|
+
try {
|
|
60
|
+
if (!opts.dryRun)
|
|
61
|
+
await vercel.pull(environment);
|
|
62
|
+
}
|
|
63
|
+
catch (e) {
|
|
64
|
+
logger.error(`pull failed for ${pkg.name}: ${e.message}`);
|
|
65
|
+
throw e;
|
|
66
|
+
}
|
|
67
|
+
try {
|
|
68
|
+
await vercel.build(vercelConfigOverride);
|
|
69
|
+
}
|
|
70
|
+
catch (e) {
|
|
71
|
+
logger.error(`build failed for ${pkg.name}: ${e.message}`);
|
|
72
|
+
throw e;
|
|
73
|
+
}
|
|
74
|
+
if (opts.dryRun)
|
|
75
|
+
return { pkg, url: undefined };
|
|
76
|
+
try {
|
|
77
|
+
const url = await vercel.deploy(environment);
|
|
78
|
+
return { pkg, url: url };
|
|
79
|
+
}
|
|
80
|
+
catch (e) {
|
|
81
|
+
logger.error(`deploy failed for ${pkg.name}: ${e.message}`);
|
|
82
|
+
throw e;
|
|
83
|
+
}
|
|
84
|
+
}));
|
|
85
|
+
for (const { pkg, url } of results) {
|
|
86
|
+
const tagName = packageNameWithoutScope(pkg.name);
|
|
87
|
+
if (url) {
|
|
88
|
+
actionCore.setOutput(`${tagName}-url`, url);
|
|
89
|
+
logger.info(`${tagName}-url: ${url}`);
|
|
90
|
+
logger.success(`${pkg.name} deployed.`);
|
|
91
|
+
}
|
|
92
|
+
else if (opts.dryRun) {
|
|
93
|
+
logger.info(`[dry-run] ${pkg.name} skipped vercel deploy`);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
logger.githubAction.endGroup();
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=orchestrator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../../src/commands/client/deploy/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/commands/client/deploy/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/commands/client/deploy/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/commands/client/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/commands/client/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,iBAAS,aAAa,CAAC,OAAO,EAAE,OAAO,QAyCtC;AAED,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -1,12 +1,30 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
2
|
function clientCommand(program) {
|
|
3
|
-
const client = program
|
|
4
|
-
|
|
3
|
+
const client = program
|
|
4
|
+
.command("client")
|
|
5
|
+
.description("Actions you need for your client packages");
|
|
6
|
+
client
|
|
7
|
+
.command("init")
|
|
8
|
+
.description("initialize a vite project and add eslint and husky configs")
|
|
5
9
|
.option("--name <name>", "your project name")
|
|
6
10
|
.action(async (options) => {
|
|
7
11
|
const { action } = await import("./init/mod.js");
|
|
8
12
|
action(options);
|
|
9
13
|
});
|
|
14
|
+
client
|
|
15
|
+
.command("deploy")
|
|
16
|
+
.description("Deploy private workspace packages to a configured provider (Vercel only for now)")
|
|
17
|
+
.option("--provider <name>", "Deploy provider — only 'vercel' is implemented", "vercel")
|
|
18
|
+
.option("--prod", "Deploy to the production environment", false)
|
|
19
|
+
.option("--next", "Deploy to the 'next' custom environment", false)
|
|
20
|
+
.option("--preview", "Deploy to the preview environment", false)
|
|
21
|
+
.option("--exclude <names>", "Comma-separated package names to skip")
|
|
22
|
+
.option("--vercel-config <path>", "Path to a vercel.json applied to every deployable package")
|
|
23
|
+
.option("--dry-run", "Run everything except the provider's pull/deploy steps", false)
|
|
24
|
+
.action(async (options) => {
|
|
25
|
+
const { action } = await import("./deploy/mod.js");
|
|
26
|
+
action(options);
|
|
27
|
+
});
|
|
10
28
|
}
|
|
11
29
|
export { clientCommand };
|
|
12
30
|
//# sourceMappingURL=mod.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/commands/client/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/commands/client/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,SAAS,aAAa,CAAC,OAAgB;IACrC,MAAM,MAAM,GAAG,OAAO;SACnB,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,2CAA2C,CAAC,CAAC;IAE5D,MAAM;SACH,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,4DAA4D,CAAC;SACzE,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC;SAC5C,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QACjD,MAAM,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEL,MAAM;SACH,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CACV,kFAAkF,CACnF;SACA,MAAM,CACL,mBAAmB,EACnB,gDAAgD,EAChD,QAAQ,CACT;SACA,MAAM,CAAC,QAAQ,EAAE,sCAAsC,EAAE,KAAK,CAAC;SAC/D,MAAM,CAAC,QAAQ,EAAE,yCAAyC,EAAE,KAAK,CAAC;SAClE,MAAM,CAAC,WAAW,EAAE,mCAAmC,EAAE,KAAK,CAAC;SAC/D,MAAM,CAAC,mBAAmB,EAAE,uCAAuC,CAAC;SACpE,MAAM,CACL,wBAAwB,EACxB,2DAA2D,CAC5D;SACA,MAAM,CACL,WAAW,EACX,wDAAwD,EACxD,KAAK,CACN;SACA,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACnD,MAAM,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/commands/library/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../src/commands/library/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,iBAAS,cAAc,CAAC,OAAO,EAAE,OAAO,QAuDvC;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -1,14 +1,24 @@
|
|
|
1
1
|
import { Command } from "commander";
|
|
2
2
|
function libraryCommand(program) {
|
|
3
|
-
const library = program
|
|
4
|
-
|
|
3
|
+
const library = program
|
|
4
|
+
.command("library")
|
|
5
|
+
.description("Actions you need for your library packages");
|
|
6
|
+
library
|
|
7
|
+
.command("init")
|
|
8
|
+
.description("init whatever")
|
|
9
|
+
.action(async (_options) => {
|
|
5
10
|
throw new Error("not implemented");
|
|
6
11
|
});
|
|
7
|
-
library
|
|
12
|
+
library
|
|
13
|
+
.command("check")
|
|
14
|
+
.description("ensure on target package, everything has setup")
|
|
15
|
+
.action(async (options) => {
|
|
8
16
|
const { action } = await import("./check/mod.js");
|
|
9
17
|
action(options);
|
|
10
18
|
});
|
|
11
|
-
library
|
|
19
|
+
library
|
|
20
|
+
.command("build")
|
|
21
|
+
.description("build your library")
|
|
12
22
|
.option("--inputs <inputs>", "comma separated file paths. e.g. src/main.ts,src/net.ts")
|
|
13
23
|
.option("--external <external>", "Comma separated list. https://esbuild.github.io/api/#external")
|
|
14
24
|
.option("--external-all-except <exception-list>", "When you want to make all the packages external, and only include some specific packages as your library bundle, this will be useful. Comma separated.")
|
|
@@ -20,9 +30,9 @@ function libraryCommand(program) {
|
|
|
20
30
|
library
|
|
21
31
|
.command("publish")
|
|
22
32
|
.description("Update your public packages' versions and changelogs, publish them on NPM, commit changes, and tag the commit")
|
|
23
|
-
.option("--prod", "Enables production flow
|
|
24
|
-
.option("--next", "Enables next flow
|
|
25
|
-
.option("--experimental", "Enables experimental flow
|
|
33
|
+
.option("--prod", "Enables production flow", false)
|
|
34
|
+
.option("--next", "Enables next flow", false)
|
|
35
|
+
.option("--experimental", "Enables experimental flow", false)
|
|
26
36
|
.option("--since-start", "consider all packages in the current branch for publishing", false)
|
|
27
37
|
.action(async (options) => {
|
|
28
38
|
const { action } = await import("./publish/mod.js");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/commands/library/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../../../src/commands/library/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,SAAS,cAAc,CAAC,OAAgB;IACtC,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,4CAA4C,CAAC,CAAC;IAE7D,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,eAAe,CAAC;SAC5B,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IACL,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,gDAAgD,CAAC;SAC7D,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAClD,MAAM,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IACL,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,oBAAoB,CAAC;SACjC,MAAM,CACL,mBAAmB,EACnB,yDAAyD,CAC1D;SACA,MAAM,CACL,uBAAuB,EACvB,+DAA+D,CAChE;SACA,MAAM,CACL,wCAAwC,EACxC,wJAAwJ,CACzJ;SACA,MAAM,CAAC,aAAa,EAAE,uBAAuB,EAAE,KAAK,CAAC;SACrD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAClD,MAAM,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IACL,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CACV,+GAA+G,CAChH;SACA,MAAM,CAAC,QAAQ,EAAE,yBAAyB,EAAE,KAAK,CAAC;SAClD,MAAM,CAAC,QAAQ,EAAE,mBAAmB,EAAE,KAAK,CAAC;SAC5C,MAAM,CAAC,gBAAgB,EAAE,2BAA2B,EAAE,KAAK,CAAC;SAC5D,MAAM,CACL,eAAe,EACf,4DAA4D,EAC5D,KAAK,CACN;SACA,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC;AAED,OAAO,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/commands/library/publish/helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGR,OAAO,EACP,YAAY,EACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAgD,KAAK,aAAa,EAAC,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../src/commands/library/publish/helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGR,OAAO,EACP,YAAY,EACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAgD,KAAK,aAAa,EAAC,MAAM,yBAAyB,CAAC;AAgC1G,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AAEtC,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,OAAO,sBAQ5D;AA2KD,wBAAgB,WAAW,CACzB,qBAAqB,EAAE,aAAa,CAAC,cAAc,CAAC;WAEZ,MAAM,EAAE;YAAU,MAAM,EAAE;GAmBnE;AA0BD,wBAAsB,oBAAoB,CAAC,GAAG,EAAE,OAAO;;;;;GA4BtD;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,EAAC,aAAa,EAAC,EAAE;IAAC,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;CAAC,iBAWjG;AAqDD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAAC,GAAG,EAAE,OAAO,iBASxD;AAgID,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,QAqCxE;AAED,wBAAsB,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,iBAY1C;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,EAAE;IAAC,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;CAAC,iBAOxG;AAsGD,wBAAsB,wBAAwB,CAAC,GAAG,KAAA,iBAKjD;AAED,wBAAsB,eAAe,CAAC,QAAQ,KAAA,gBAM7C;AAED,wBAAsB,cAAc,CAAC,IAAI,KAAA,iBAIxC;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,qBAsCzD;AAwCD,wBAAsB,IAAI,CAAC,OAAO,CAAC,EAAE;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,mBAuBA;AAED,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,OAAO,mBAuBnD"}
|