Set up your GitHub Actions workflow with a specific version of Deno.
The installed version is v2.x by default.
- uses: denoland/setup-deno@v2
To pick the latest version of specific release channel, set deno-version to
one of the following:
| Channel | Description |
|---|---|
latest |
Latest Stable release version |
lts |
Latest Long-Term-Support version |
rc |
Latest Release-Candidate version |
canary |
Latest Canary release version |
- uses: denoland/setup-deno@v2
with:
deno-version: lts
A version can also be selected by providing a valid Semver range or commit hash.
Examples
"1.8.2", 2.0.0-rc.1"^2", "~1.7", v2.1.x, vx.x.xe7b7129b7a92b7500ded88f8f5baa25a7f59e56e- uses: denoland/setup-deno@v2
with:
deno-version: v2.1.x
The extension can also automatically read the version file from
.tool-versions
- uses: denoland/setup-deno@v2
with:
deno-version-file: .tool-versions
The extension can also automatically read the file from
dvm.
- uses: denoland/setup-deno@v2
with:
deno-version-file: .dvmrc
This is useful when you want to install different versions of Deno side by side.
- uses: denoland/setup-deno@v2
with:
deno-version: canary
deno-binary-name: deno_canary
You can determine the release channel reading back the release-channel output.
Valid values are stable, lts, canary and rc.
- uses: denoland/setup-deno@v2
id: deno
with:
deno-version: canary
- run: echo "Deno release channel is ${{ steps.deno.outputs.release-channel }}"
You can determine the installed version reading back the deno-version output.
For canary versions, the output will be in the form 0.0.0-GIT_HASH.
For stable and rc versions, the output will be the regular semver version number.
- uses: denoland/setup-deno@v2
id: deno
with:
deno-version: canary
- run: echo "Deno version is ${{ steps.deno.outputs.deno-version }}"
Dependencies installed by Deno can be cached automatically between workflow runs. This helps make your GH action run faster by not repeating caching work and network requests done by a previous run.
To enable the cache, use cache: true.
- uses: denoland/setup-deno@v2
with:
cache: true
[!WARNING] If an environment variable
DENO_DIRis set for steps that run/download dependencies, thenDENO_DIRmust also be set for thedenoland/setup-denoaction, for the caching to work as intended.
By default, the cache is automatically keyed by:
deno.lock files in the projectIt is possible to customize the default hash
(${{ hashFiles('**/deno.lock') }}) used as part of the cache key via the
cache-hash input.
- uses: denoland/setup-deno@v2
with:
# setting `cache-hash` implies `cache: true` and will replace
# the default cache-hash of `${{ hashFiles('**/deno.lock') }}`
cache-hash: ${{ hashFiles('**/deno.json') }}
$ claude mcp add setup-deno \
-- python -m otcore.mcp_server <graph>