vole
Clone
Read only, no credentials:
https://rodent.software/git/vole.git
Write over SSH with a registered key:
git clone ssh://git@0.0.0.0:2222/vole.git
A free and open-source forge that lives in your Git repo.
Say why workflows have no expression language
390e3404503477342ae434ef92e9ceb2729b7218 · Keenan Nemetz · 7d ago · parent e82bbe7d
Say why workflows have no expression language
The format has no `${{ }}` and no interpolation, but the reference listed that
only as a missing feature. The decision is now recorded where a reader will meet
it: the shell is the expression language, the event file is the context, and
event text stays data instead of becoming part of a command.
The reference gains a Context and expressions section with a manual-input
example, and the workflows guide says the same beside the trigger examples.
Part of #138.
docs/workflows.md +7
| @@ -111,6 +111,13 @@ data; do not interpolate it into a shell command. See | |||
| 111 | 111 | [Workflow reference § Event data available to steps](reference/workflow-reference.md#event-data-available-to-steps) | |
| 112 | 112 | for the fields. | |
| 113 | 113 | ||
| 114 | A workflow is not a template. There is no `${{ }}` and no substitution inside | ||
| 115 | `run`: use `env` or a declared secret for a configuration value, and read the | ||
| 116 | event file when a step needs something the event carries. The event is text | ||
| 117 | someone else wrote, so it stays data instead of becoming part of a command. See | ||
| 118 | [Workflow reference § Context and expressions](reference/workflow-reference.md#context-and-expressions) | ||
| 119 | for the reasoning and an input example. | ||
| 120 | |||
| 114 | 121 | ## Filtering an event | |
| 115 | 122 | ||
| 116 | 123 | A trigger can narrow an event to the cases a job cares about. This is how a coding | |