YAML Schema Reference
This reference documents the structure of the gspm project file (project.yml).
Project Section
The project configuration file is structured as follows:
name: my-project
description: "My Game"
default_type: git
version: "1.0.0"
path: "."
Option |
Description |
|---|---|
name |
required - project identifier |
description |
optional - project description |
default_type |
optional - default asset pull type (git, copy, zip) |
version |
optional - project version string |
path |
optional - project directory path (default: “.”) |
Godot Section
The godot section controls which Godot engine version to use and how to download it.
godot:
version: "3.3.3"
release: "stable"
arch: 64
mono: false
local: /path/to/godot
url: https://example.com/godot.zip
url_linux: https://example.com/linux.zip
url_windows: https://example.com/win.zip
url_macos: https://example.com/mac.zip
Option |
Description |
|---|---|
version |
optional - Godot version (default: “3.3.3”) |
release |
optional - release type (stable, beta1, rc1, etc.) |
arch |
optional - architecture: 32 or 64 (default: 64) |
mono |
optional - use Mono build (default: false) |
local |
optional - use local Godot binary |
url |
optional - custom download URL (fallback) |
url_linux |
optional - Linux-specific download URL |
url_windows |
optional - Windows-specific download URL |
url_macos |
optional - macOS-specific download URL |
Note
The url, url_linux, url_windows, and url_macos options
will override all other download-related options when specified.
Assets Section
The assets section defines external dependencies for your project (code libraries, addons, etc.).
assets:
my-asset:
location: https://github.com/user/repo.git
type: git
active: true
branch: main
includes:
- dir: addons
todir: addons
Option |
Description |
|---|---|
location |
required - source URI (git URL, file path, or zip URL) |
type |
optional - pull type: git, copy, zip (default: git) |
active |
optional - include in build (default: true) |
branch |
optional - git branch to pull (default: master) |
includes |
optional - directories to include |
Include Option |
Description |
|---|---|
dir |
source directory to include |
todir |
destination directory (default: same as dir) |
Export Section
The exports section defines export presets for building your project.
exports:
windows:
name: Windows
path: ./build/win
file: mygame.exe
Option |
Description |
|---|---|
name |
optional - display name for the export |
path |
required - output directory |
file |
required - output filename |