grounds.yaml pointed at release plugin or module
sources while opting into local builds for a single push. Use this workflow when
your app lives in one repository and the plugin or Minestom module dependencies
you are changing live in sibling repositories.
Repository layout
Use the internal sample workspace as the reference shape:grounds push from ~/grounds/sample-plugin-workspace/app. Keep
plugin-agones and plugin-player beside the app repository so the CLI can map
release plugin or module IDs to the local repositories on your machine.
Your manifest stays portable:
grounds.yaml
id and variant fields are the matching keys. The source fields remain
the default release sources for teammates, CI, and any push that does not opt
into local overrides. Minestom server manifests use the same idea under
modules.
Scan for repositories
Start by asking the CLI to discover plugin repositories under~/grounds:
--yes, the CLI prints the mappings it found and asks before writing
them. Once the proposed mappings look right, write them immediately:
Scan does not replace existing mappings. If you already pinned custom Velocity
artifacts or build commands, those entries stay in place.
Pin exact Velocity artifacts
For Velocity plugin repositories, add explicit mappings so the push uses the deployable shadow JAR from each repository:Add Minestom module mappings
For Minestom runtime modules, add a mapping for theminestom variant:
module and
project to workspace.yaml:
For Minestom module substitution, the app’s Gradle distribution task builds against the included
local repository. The workspace
artifact and build fields are used for plugin artifact
overrides and are not the source of truth for the Minestom runtime classpath.Inspect mappings
List the workspace entries before pushing:doctor when a mapping does not behave as expected:
workspace list shows each plugin or module ID, variant, enabled state, repository path,
artifact path, and build command. workspace doctor checks whether configured
paths exist and reports missing local repositories.
Push one local override
From~/grounds/sample-plugin-workspace/app, override only
plugin-agones for this push:
plugin-agones with the local Velocity artifact for this one push.
For Minestom manifests, --local selects matching entries from modules.
You can pass multiple local plugin IDs as a comma-separated value:
--local:
Push every enabled local override
When every enabled workspace mapping should replace its matching manifest entry, use--with-local:
Disable a mapping temporarily
Disableplugin-player when you want --with-local to keep using the release
source for that plugin:
Config location
Workspace mappings are stored in the CLI config directory asworkspace.yaml.
By default, that is:
| OS | Default workspace file |
|---|---|
| Linux | ~/.config/grounds/workspace.yaml |
| macOS | ~/Library/Application Support/grounds/workspace.yaml |
| Windows | %APPDATA%\grounds\workspace.yaml |
--config <dir> flag and GROUNDS_CONFIG_DIR environment variable
move this file together with the rest of the CLI config. See
Configuration for the full config directory rules.
