Skip to content

Commit d07d410

Browse files
committed
Add MAML reference
1 parent abf6fc0 commit d07d410

2 files changed

Lines changed: 52 additions & 12 deletions

File tree

docs/maml.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,6 +156,40 @@ options are available (`remote_user`, `deploy_path`, `port`, `identity_file`,
156156
}
157157
```
158158

159+
### Labels
160+
161+
Labels are key-value tags used by [selectors](selector.md). Define them as a nested object under `labels`:
162+
163+
```maml
164+
{
165+
hosts: {
166+
"web.example.com": {
167+
remote_user: "deployer"
168+
labels: {
169+
type: "web"
170+
env: "prod"
171+
}
172+
}
173+
"db.example.com": {
174+
remote_user: "deployer"
175+
labels: {
176+
type: "db"
177+
env: "prod"
178+
}
179+
}
180+
}
181+
}
182+
```
183+
184+
Run a task on every `prod` host:
185+
186+
```bash
187+
$ dep deploy env=prod
188+
```
189+
190+
`labels.<key>` and a top-level config key with the same name (e.g. `env`) are independent — the selector only
191+
looks at `labels`.
192+
159193
### Localhost
160194

161195
Set `local: true` to register the entry as a localhost via `localhost()`:

docs/selector.md

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -143,18 +143,24 @@ task('info', function () {
143143
})->select('type=web|db,env=prod');
144144
```
145145

146-
## Labels in YAML
147-
148-
YAML recipes support labels too:
149-
150-
```yaml
151-
hosts:
152-
web.example.com:
153-
remote_user: deployer
154-
env:
155-
environment: production
156-
labels:
157-
env: prod
146+
## Labels in MAML
147+
148+
[MAML](maml.md) recipes support labels too:
149+
150+
```maml
151+
{
152+
hosts: {
153+
"web.example.com": {
154+
remote_user: "deployer"
155+
env: {
156+
environment: "production"
157+
}
158+
labels: {
159+
env: "prod"
160+
}
161+
}
162+
}
163+
}
158164
```
159165

160166
Don't confuse `env` (a config key) with `labels.env` (a label). They are independent:

0 commit comments

Comments
 (0)