You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

files-changed.yml 1.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. name: files-changed
  2. on:
  3. workflow_call:
  4. outputs:
  5. backend:
  6. description: "whether backend files changed"
  7. value: ${{ jobs.detect.outputs.backend }}
  8. frontend:
  9. description: "whether frontend files changed"
  10. value: ${{ jobs.detect.outputs.frontend }}
  11. docs:
  12. description: "whether docs files changed"
  13. value: ${{ jobs.detect.outputs.docs }}
  14. actions:
  15. description: "whether actions files changed"
  16. value: ${{ jobs.detect.outputs.actions }}
  17. templates:
  18. description: "whether templates files changed"
  19. value: ${{ jobs.detect.outputs.templates }}
  20. jobs:
  21. detect:
  22. name: detect which files changed
  23. runs-on: ubuntu-latest
  24. timeout-minutes: 3
  25. # Map a step output to a job output
  26. outputs:
  27. backend: ${{ steps.changes.outputs.backend }}
  28. frontend: ${{ steps.changes.outputs.frontend }}
  29. docs: ${{ steps.changes.outputs.docs }}
  30. actions: ${{ steps.changes.outputs.actions }}
  31. templates: ${{ steps.changes.outputs.templates }}
  32. steps:
  33. - uses: actions/checkout@v3
  34. - uses: dorny/paths-filter@v2
  35. id: changes
  36. with:
  37. filters: |
  38. backend:
  39. - "**/*.go"
  40. - "templates/**/*.tmpl"
  41. - "go.mod"
  42. - "go.sum"
  43. frontend:
  44. - "**/*.js"
  45. - "web_src/**"
  46. - "package.json"
  47. - "package-lock.json"
  48. docs:
  49. - "**/*.md"
  50. - "docs/**"
  51. actions:
  52. - ".github/workflows/*"
  53. templates:
  54. - "templates/**/*.tmpl"
  55. - "poetry.lock"