mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-25 08:59:31 -05:00
e24f651c86
So I found this [linter](https://github.com/Riverside-Healthcare/djlint) which features a mode for go templates, so I gave it a try and it did find a number of valid issue, like unbalanced tags etc. It also has a number of bugs, I had to disable/workaround many issues. Given that this linter is written in python, this does add a dependency on `python` >= 3.8 and `poetry` to the development environment to be able to run this linter locally. - `e.g.` prefixes on placeholders are removed because the linter had a false-positive on `placeholder="e.g. cn=Search"` for the `attr=value` syntax and it's not ideal anyways to write `e.g.` into a placeholder because a placeholder is meant to hold a sample value. - In `templates/repo/settings/options.tmpl` I simplified the logic to not conditionally create opening tags without closing tags because this stuff confuses the linter (and possibly the reader as well).
60 lines
1.6 KiB
YAML
60 lines
1.6 KiB
YAML
name: files-changed
|
|
|
|
on:
|
|
workflow_call:
|
|
outputs:
|
|
backend:
|
|
description: "whether backend files changed"
|
|
value: ${{ jobs.detect.outputs.backend }}
|
|
frontend:
|
|
description: "whether frontend files changed"
|
|
value: ${{ jobs.detect.outputs.frontend }}
|
|
docs:
|
|
description: "whether docs files changed"
|
|
value: ${{ jobs.detect.outputs.docs }}
|
|
actions:
|
|
description: "whether actions files changed"
|
|
value: ${{ jobs.detect.outputs.actions }}
|
|
templates:
|
|
description: "whether templates files changed"
|
|
value: ${{ jobs.detect.outputs.templates }}
|
|
|
|
jobs:
|
|
detect:
|
|
name: detect which files changed
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 3
|
|
# Map a step output to a job output
|
|
outputs:
|
|
backend: ${{ steps.changes.outputs.backend }}
|
|
frontend: ${{ steps.changes.outputs.frontend }}
|
|
docs: ${{ steps.changes.outputs.docs }}
|
|
actions: ${{ steps.changes.outputs.actions }}
|
|
templates: ${{ steps.changes.outputs.templates }}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: dorny/paths-filter@v2
|
|
id: changes
|
|
with:
|
|
filters: |
|
|
backend:
|
|
- "**/*.go"
|
|
- "templates/**/*.tmpl"
|
|
- "go.mod"
|
|
- "go.sum"
|
|
|
|
frontend:
|
|
- "**/*.js"
|
|
- "web_src/**"
|
|
- "package.json"
|
|
- "package-lock.json"
|
|
|
|
docs:
|
|
- "**/*.md"
|
|
- "docs/**"
|
|
|
|
actions:
|
|
- ".github/workflows/*"
|
|
|
|
templates:
|
|
- "templates/**/*.tmpl"
|