Docs
Configuration

Configuration

Config file resolution

All Mantle commands accept a PROJECT argument which tells Mantle where to look for your config file. Mantle uses the following rules to find your config file:

  1. If the PROJECT argument was not provided, use the mantle.yml file in the current directory as the config file (if it exists).
  2. If the PROJECT argument was a directory, use the mantle.yml file in that directory as the config file (if it exists).
  3. If the PROJECT argument was a file, use it as the config file (if it exists).

If no config file is found, Mantle will exit with an error code.

File path resolution

Many Mantle config properties require file paths or globs. All file paths should be written relative to the config file's directory.

For example, with the directory structure:

    • mantle.yml
    • game.rbxl
      • game-icon.png
      • thumbnail-1.png
      • thumbnail-2.png
  • You would use the config:

    project/mantle.yml
    target:
      experience:
        configuration:
          icon: marketing/game-icon.png
          thumbnails:
            - marketing/thumbnail-1.png
            - marketing/thumbnail-2.png
        places:
          start:
            file: game.rbxl

    Mantle will correctly find the referenced files no matter where you execute Mantle from.

    YAML syntax

    Mantle config files use YAML syntax, and should have either a .yml or .yaml file extension. To quickly get started with the YAML syntax, see "Learn YAML in Y Minutes (opens in a new tab)" or read through the examples in this guide and in the Examples (opens in a new tab) repo.

    Schemas

    You can view the JSON schemas for the config files below (only for versions above 0.11.0). You can also use the schema to add autocomplete to your editor while editing your mantle.yml files. For VSCode, you can install the YAML (opens in a new tab) extension and add the following to your VSCode settings:

    "yaml.schemas": {
      "https://mantledeploy.vercel.app/schemas/v0.11.14/schema.json": "mantle.yml"
    }