mirror of
https://github.com/go-gitea/gitea.git
synced 2026-05-06 04:01:05 +09:00
1. only trigger docker-dryrun arm64&riscv64 when dockerfile changes 2. de-duplicate "contents: read" permission for most workflows 3. merge various "lint-*" jobs into one job 4. add missing lint targets to the "lint" (all) target
126 lines
3.5 KiB
YAML
126 lines
3.5 KiB
YAML
name: files-changed
|
|
|
|
on:
|
|
workflow_call:
|
|
outputs:
|
|
backend:
|
|
value: ${{ jobs.detect.outputs.backend }}
|
|
frontend:
|
|
value: ${{ jobs.detect.outputs.frontend }}
|
|
docs:
|
|
value: ${{ jobs.detect.outputs.docs }}
|
|
actions:
|
|
value: ${{ jobs.detect.outputs.actions }}
|
|
templates:
|
|
value: ${{ jobs.detect.outputs.templates }}
|
|
docker:
|
|
value: ${{ jobs.detect.outputs.docker }}
|
|
dockerfile:
|
|
value: ${{ jobs.detect.outputs.dockerfile }}
|
|
swagger:
|
|
value: ${{ jobs.detect.outputs.swagger }}
|
|
yaml:
|
|
value: ${{ jobs.detect.outputs.yaml }}
|
|
json:
|
|
value: ${{ jobs.detect.outputs.json }}
|
|
e2e:
|
|
value: ${{ jobs.detect.outputs.e2e }}
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
detect:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 3
|
|
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 }}
|
|
docker: ${{ steps.changes.outputs.docker }}
|
|
dockerfile: ${{ steps.changes.outputs.dockerfile }}
|
|
swagger: ${{ steps.changes.outputs.swagger }}
|
|
yaml: ${{ steps.changes.outputs.yaml }}
|
|
json: ${{ steps.changes.outputs.json }}
|
|
e2e: ${{ steps.changes.outputs.e2e }}
|
|
steps:
|
|
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1
|
|
id: changes
|
|
with:
|
|
filters: |
|
|
backend:
|
|
- "**/*.go"
|
|
- "templates/**/*.tmpl"
|
|
- "assets/emoji.json"
|
|
- "go.mod"
|
|
- "go.sum"
|
|
- "Makefile"
|
|
- ".golangci.yml"
|
|
- ".editorconfig"
|
|
- "options/locale/locale_en-US.json"
|
|
|
|
frontend:
|
|
- "*.js"
|
|
- "*.ts"
|
|
- "web_src/**"
|
|
- "tools/*.js"
|
|
- "tools/*.ts"
|
|
- "assets/emoji.json"
|
|
- "package.json"
|
|
- "pnpm-lock.yaml"
|
|
- "Makefile"
|
|
- ".eslintrc.cjs"
|
|
- ".npmrc"
|
|
|
|
docs:
|
|
- "**/*.md"
|
|
- ".markdownlint.yaml"
|
|
- "package.json"
|
|
- "pnpm-lock.yaml"
|
|
|
|
actions:
|
|
- ".github/workflows/*"
|
|
- "Makefile"
|
|
|
|
templates:
|
|
- "tools/lint-templates-*.js"
|
|
- "templates/**/*.tmpl"
|
|
- "pyproject.toml"
|
|
- "uv.lock"
|
|
|
|
docker:
|
|
- ".github/workflows/pull-docker-dryrun.yml"
|
|
- "Dockerfile"
|
|
- "Dockerfile.rootless"
|
|
- "docker/**"
|
|
- "Makefile"
|
|
|
|
dockerfile:
|
|
- "Dockerfile"
|
|
- "Dockerfile.rootless"
|
|
|
|
swagger:
|
|
- "templates/swagger/v1_json.tmpl"
|
|
- "templates/swagger/v1_input.json"
|
|
- "Makefile"
|
|
- "package.json"
|
|
- "pnpm-lock.yaml"
|
|
- ".spectral.yaml"
|
|
|
|
yaml:
|
|
- "**/*.yml"
|
|
- "**/*.yaml"
|
|
- ".yamllint.yaml"
|
|
- "pyproject.toml"
|
|
|
|
json:
|
|
- "**/*.json"
|
|
|
|
e2e:
|
|
- "tests/e2e/**"
|
|
- "tools/test-e2e.sh"
|
|
- "playwright.config.ts"
|