Files
2022-09-08 22:45:00 -07:00

92 lines
4.1 KiB
Markdown

# Concourse Pipeline and Task Editor for Visual Studio Code
This extension provides validation, content assist and documentation hovers
for editing [Concourse](https://concourse-ci.org/) Pipeline and Task configuration files.
## Usage
The Concourse editor automatically activates when the name of the `.yml` file you are editing
follows a certain pattern:
- `**/*pipeline*.yml` | `**/pipeline/*.yml` | `**/*pipeline*.yaml` | `**/pipeline/*.yaml`: activates support for editing pipelines
- `**/ci/**/tasks/*.yml` | `**/*task.yml` | `**/ci/**/tasks/*.yaml` | `**/*task.yaml` : activates support for editing tasks.
You can also define your own patterns and map them to the language-ids `concourse-pipeline-yaml`
or `concourse-task-yaml` by defining `files.associations` in workspace settings.
See [vscode documentation](https://code.visualstudio.com/Docs/languages/overview#_adding-a-file-extension-to-a-language) for details.
## Functionality
### Validation
As you type the text is parsed and checked for basic syntactic and structural correctness. Hover over
an error marker to see an explanation:
![Linting Screenshot][linting]
### Content assist
Having trouble remembering all the names of the attributes, and their spelling? Or can't remember
which resource properties to set in the `get` task params versus its `source` attributes? Or
don't remember what 'special' values are acceptable for a certain property? Content assist
to the rescue:
![Content Assist Screenshot][ca1]
![Content Assist Screenshot][ca2]
### Documentation Hovers
Having trouble remembering exactly what the meaning of each attribute is? Hover over an attribute and
read its detailed documentation:
![Hover Docs Screenshot][hovers]
### Goto Symbol in File
Is your Pipeline yaml file getting larger and is it becoming harder to find a particular Job, Resource or
Resource Type declaration? The "Goto Symbol in File" command helps you quickly jump to a specific
definition.
Type `CTRL-SHIFT-O` to popup a list of all symbols in your current Pipeline file. Start typing a name
(or portion thereof) to narrow down the list. Select a symbol to jump directly to its location in the
file.
![Goto Symbol Screenshot][goto_symbol]
### Goto/Peek Definition
Use "Goto Defition" or "Peek Definition" to quickly go (or peek) from a a Job- or Resource name
to its corresponding definition.
![Peek Definition Screenshot][peek]
## Limitations
This Vscode Extension is still a work in progress. At the moment only a select few of the [built-in resource-types](https://concourse-ci.org/resource-types.html)
have been fully defined in the Editor's Schema.
The resource-types that are already defined in the schema are:
- git
- docker-image
- s3
- pool
- semver
- time
For other resource-types content assist and checking is still very limited. We intend
to grow this list and provide a similar level of support for all of the built-in resource types in
the near future.
## Issues and Feature Requests
Please report bugs, issues and feature requests on the [Github STS4 issue tracker](https://github.com/spring-projects/sts4/issues).
[linting]: https://raw.githubusercontent.com/spring-projects/sts4/98148c08b608ff365fb87b2de955d6833f7ee082/vscode-extensions/vscode-concourse/readme-imgs/linting.png
[ca1]: https://raw.githubusercontent.com/spring-projects/sts4/98148c08b608ff365fb87b2de955d6833f7ee082/vscode-extensions/vscode-concourse/readme-imgs/content-assist-1.png
[ca2]: https://raw.githubusercontent.com/spring-projects/sts4/98148c08b608ff365fb87b2de955d6833f7ee082/vscode-extensions/vscode-concourse/readme-imgs/content-assist-2.png
[hovers]: https://raw.githubusercontent.com/spring-projects/sts4/98148c08b608ff365fb87b2de955d6833f7ee082/vscode-extensions/vscode-concourse/readme-imgs/hover.png
[peek]: https://raw.githubusercontent.com/spring-projects/sts4/98148c08b608ff365fb87b2de955d6833f7ee082/vscode-extensions/vscode-concourse/readme-imgs/peek.png
[goto_symbol]: https://raw.githubusercontent.com/spring-projects/sts4/d095208cfb34b0f129e6b66d41d099955a712f81/vscode-extensions/vscode-concourse/readme-imgs/goto-symbol.png