Skip to content

feat: add deno ci subcommand#34235

Merged
bartlomieju merged 2 commits into
mainfrom
feat/ci-subcommand
May 20, 2026
Merged

feat: add deno ci subcommand#34235
bartlomieju merged 2 commits into
mainfrom
feat/ci-subcommand

Conversation

@bartlomieju

Copy link
Copy Markdown
Member

Adds deno ci, a thin subcommand for reproducible installs in CI
environments. It mirrors npm ci: errors if deno.lock is missing,
removes any existing node_modules directory, then runs the install
with --frozen so the lockfile must match the config file exactly.
The intent is to give CI scripts and Dockerfiles an obvious,
greppable signal of "reproducible install" without having to remember
the right combination of flags on deno install.

--prod and --skip-types are accepted with the same semantics as
deno install.

Adds a thin subcommand for reproducible installs in CI environments,
modeled on `npm ci`: requires a `deno.lock` file, removes any existing
`node_modules` directory, and then runs the install with
`--frozen` so the lockfile must match the config file exactly.

Supports `--prod` and `--skip-types` with the same semantics as
`deno install`.
Comment thread cli/args/flags.rs
@bartlomieju bartlomieju changed the title feat(cli): add deno ci subcommand feat: add deno ci subcommand May 20, 2026
@bartlomieju
bartlomieju merged commit 661e3db into main May 20, 2026
268 of 270 checks passed
@bartlomieju
bartlomieju deleted the feat/ci-subcommand branch May 20, 2026 13:37
littledivy pushed a commit to crowlKats/deno that referenced this pull request Jun 10, 2026
Adds `deno ci`, a thin subcommand for reproducible installs in CI
environments. It mirrors `npm ci`: errors if `deno.lock` is missing,
removes any existing `node_modules` directory, then runs the install
with `--frozen` so the lockfile must match the config file exactly.
The intent is to give CI scripts and Dockerfiles an obvious,
greppable signal of "reproducible install" without having to remember
the right combination of flags on `deno install`.

`--prod` and `--skip-types` are accepted with the same semantics as
`deno install`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant