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 2.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. name: files-changed
  2. on:
  3. workflow_call:
  4. outputs:
  5. backend:
  6. value: ${{ jobs.detect.outputs.backend }}
  7. frontend:
  8. value: ${{ jobs.detect.outputs.frontend }}
  9. docs:
  10. value: ${{ jobs.detect.outputs.docs }}
  11. actions:
  12. value: ${{ jobs.detect.outputs.actions }}
  13. templates:
  14. value: ${{ jobs.detect.outputs.templates }}
  15. docker:
  16. value: ${{ jobs.detect.outputs.docker }}
  17. swagger:
  18. value: ${{ jobs.detect.outputs.swagger }}
  19. yaml:
  20. value: ${{ jobs.detect.outputs.yaml }}
  21. jobs:
  22. detect:
  23. runs-on: ubuntu-latest
  24. timeout-minutes: 3
  25. outputs:
  26. backend: ${{ steps.changes.outputs.backend }}
  27. frontend: ${{ steps.changes.outputs.frontend }}
  28. docs: ${{ steps.changes.outputs.docs }}
  29. actions: ${{ steps.changes.outputs.actions }}
  30. templates: ${{ steps.changes.outputs.templates }}
  31. docker: ${{ steps.changes.outputs.docker }}
  32. swagger: ${{ steps.changes.outputs.swagger }}
  33. yaml: ${{ steps.changes.outputs.yaml }}
  34. steps:
  35. - uses: actions/checkout@v4
  36. - uses: dorny/paths-filter@v3
  37. id: changes
  38. with:
  39. filters: |
  40. backend:
  41. - "**/*.go"
  42. - "templates/**/*.tmpl"
  43. - "assets/emoji.json"
  44. - "go.mod"
  45. - "go.sum"
  46. - "Makefile"
  47. - ".golangci.yml"
  48. - ".editorconfig"
  49. - "options/locale/locale_en-US.ini"
  50. frontend:
  51. - "**/*.js"
  52. - "web_src/**"
  53. - "assets/emoji.json"
  54. - "package.json"
  55. - "package-lock.json"
  56. - "Makefile"
  57. - ".eslintrc.yaml"
  58. - ".stylelintrc.yaml"
  59. - ".npmrc"
  60. docs:
  61. - "**/*.md"
  62. - "docs/**"
  63. - ".markdownlint.yaml"
  64. - "package.json"
  65. - "package-lock.json"
  66. actions:
  67. - ".github/workflows/*"
  68. - "Makefile"
  69. templates:
  70. - "tools/lint-templates-*.js"
  71. - "templates/**/*.tmpl"
  72. - "pyproject.toml"
  73. - "poetry.lock"
  74. docker:
  75. - "Dockerfile"
  76. - "Dockerfile.rootless"
  77. - "docker/**"
  78. - "Makefile"
  79. swagger:
  80. - "templates/swagger/v1_json.tmpl"
  81. - "Makefile"
  82. - "package.json"
  83. - "package-lock.json"
  84. - ".spectral.yaml"
  85. yaml:
  86. - "**/*.yml"
  87. - "**/*.yaml"
  88. - ".yamllint.yaml"
  89. - "pyproject.toml"
  90. - "poetry.lock"