Documentation is currently for moon v2 and latest proto. Documentation for moon v1 has been frozen and can be found here.
.moon/toolchains
The .moon/toolchains.* file configures the toolchain and the workspace development environment.
This file is optional.
Managing tool version's within the toolchain ensures a deterministic environment across any machine (whether a developer, CI, or production machine).
extends
Defines one or many external .moon/toolchains.*'s to extend and inherit settings from. Perfect for
reusability and sharing configuration across repositories and projects. When defined, this setting
must be an HTTPS URL or relative file system path that points to a valid YAML document!
extends: 'https://raw.githubusercontent.com/organization/repository/master/.moon/toolchains.yml'
Settings will be merged recursively for blocks, with values defined in the local configuration taking precedence over those defined in the extended configuration.
moonv1.29.0
Configures how moon will receive information about latest releases and download locations.
manifestUrl
Defines an HTTPS URL in which to fetch the current version information from.
moon:
manifestUrl: 'https://proxy.corp.net/moon/version'
downloadUrl
Defines an HTTPS URL in which the moon binary can be downloaded from. The download file name is hard-coded and will be appended to the provided URL.
Defaults to downloading from GitHub: https://github.com/moonrepo/moon/releases
moon:
downloadUrl: 'https://github.com/moonrepo/moon/releases/latest/download'
protov1.39.0
Configures how moon integrates with and utilizes proto.
version
The version of proto to install and run toolchains with. If proto or this version of proto has not been installed yet, it will be installed automatically when running a task.
proto:
version: '0.51.0'
Go
go
Run moon toolchain info go for all available settings.
JavaScript
javascript
Run moon toolchain info javascript for all available settings.
bun
Run moon toolchain info bun for all available settings.
This toolchain requires the javascript toolchain to also be enabled.
deno
Run moon toolchain info deno for all available settings.
This toolchain requires the javascript toolchain to also be enabled.
node
Run moon toolchain info node for all available settings.
This toolchain requires the javascript toolchain to also be enabled.
npm
Run moon toolchain info npm for all available settings.
This toolchain requires the node toolchain to also be enabled.
pnpm
Run moon toolchain info pnpm for all available settings.
This toolchain requires the node toolchain to also be enabled.
yarn
Run moon toolchain info yarn for all available settings.
This toolchain requires the node toolchain to also be enabled.
typescript
Run moon toolchain info typescript for all available settings.
Python
unstable_python
Run moon toolchain info unstable_python for all available settings.
unstable_pip
Run moon toolchain info unstable_pip for all available settings.
This toolchain requires the unstable_python toolchain to also be enabled.
unstable_uv
Run moon toolchain info unstable_uv for all available settings.
This toolchain requires the unstable_python toolchain to also be enabled.
Rust
rust
Run moon toolchain info rust for all available settings.