GitHub Action for Fastly VCL parsing and validation.
Based on Falco.
- name: Lint VCL
uses: ain/falco-github-action@v1
with:
subcommand: lint
options: "-v -I test/vcl/includes"
target: test/vcl/valid_with_include.vcl| Input | Default | Required | Description |
|---|---|---|---|
subcommand |
lint |
yes | Run linter on VCL (or ACL) |
options |
- | no | Optional flags, see Common Flags of Falco |
target |
- | yes | VCL (or ACL) file to target, e.g. to lint |
To run linter processes in parallel across multiple files, one can leverage a matrix, e.g.:
jobs:
lint:
runs-on: ubuntu-latest
strategy:
matrix:
target:
- path/to/first.vcl
- path/to/second.vcl
steps:
- uses: actions/checkout@v4
- name: Lint
uses: ain/falco-github-action@v1
with:
subcommand: lint
target: ${{ matrix.target }}- GitHub Actions is configured to run tests using ACL/VCL fixtures in the
test/folder - Local tests can be run using the
./test.shscript in the project root
Copyright © 2023-2025 Ain Tohvri and contributors. Licenced under MIT.