diff --git a/.github/dependabot.yml b/.github/dependabot.yml index ac1dfa858..733b01c33 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -66,3 +66,29 @@ updates: day: "saturday" timezone: "Europe/Berlin" time: "03:00" + +# frontend +- package-ecosystem: "github-actions" + directory: "/frontend" + rebase-strategy: "disabled" + schedule: + interval: weekly + day: "saturday" + timezone: "Europe/Berlin" + time: "03:00" +- package-ecosystem: npm + directory: "/frontend" + rebase-strategy: "disabled" + schedule: + interval: weekly + day: "saturday" + timezone: "Europe/Berlin" + time: "03:00" +- package-ecosystem: docker + directory: "/frontend" + rebase-strategy: "disabled" + schedule: + interval: weekly + day: "saturday" + timezone: "Europe/Berlin" + time: "03:00" \ No newline at end of file diff --git a/.github/file-filters.yml b/.github/file-filters.yml index 1cc5438ce..f6ed69626 100644 --- a/.github/file-filters.yml +++ b/.github/file-filters.yml @@ -1,3 +1,5 @@ +# These file filter patterns are used by the action https://github.com/dorny/paths-filter + backend: &backend - '.github/workflows/test-backend.yml' - 'backend/**/*' @@ -29,3 +31,20 @@ vuepress: &vuepress documentation: &documentation - *vuepress - *markdown + +# frontend +frontend-test-lint-code: &frontend-test-lint-code + - 'frontend/**/*' + +frontend-test-unit-code: &frontend-test-unit-code + - 'frontend/**/*' + +frontend-test-build-code: &frontend-test-build-code + - 'frontend/**/*' + +frontend-test-build-docs: &frontend-test-build-docs + - 'frontend/**/*.md' + - 'frontend/.vuepress/*' + +frontend-test-build-storybook: &frontend-test-build-storybook + - 'frontend/**/*' \ No newline at end of file diff --git a/frontend/.github/workflows/frontend.deploy.chromatic.yml b/.github/workflows/frontend.deploy.chromatic.yml similarity index 82% rename from frontend/.github/workflows/frontend.deploy.chromatic.yml rename to .github/workflows/frontend.deploy.chromatic.yml index 0bb356969..280083383 100644 --- a/frontend/.github/workflows/frontend.deploy.chromatic.yml +++ b/.github/workflows/frontend.deploy.chromatic.yml @@ -9,6 +9,7 @@ jobs: runs-on: ubuntu-latest env: CHROMATIC_PROJECT_TOKEN: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} + WORKING_DIRECTORY: ./frontend steps: - name: Checkout code uses: actions/checkout@v4 @@ -16,4 +17,5 @@ jobs: fetch-depth: 0 - name: Frontend | Build - run: npm install && npm run chromatic -- --exit-zero-on-changes \ No newline at end of file + run: npm install && npm run chromatic -- --exit-zero-on-changes + working-directory: ${{env.WORKING_DIRECTORY}} \ No newline at end of file diff --git a/frontend/.github/workflows/frontend.test.build.code.yml b/.github/workflows/frontend.test.build.code.yml similarity index 86% rename from frontend/.github/workflows/frontend.test.build.code.yml rename to .github/workflows/frontend.test.build.code.yml index 13f1c161f..8a0814f95 100644 --- a/frontend/.github/workflows/frontend.test.build.code.yml +++ b/.github/workflows/frontend.test.build.code.yml @@ -26,9 +26,12 @@ jobs: name: Build - Frontend needs: files-changed runs-on: ubuntu-latest + env: + WORKING_DIRECTORY: ./frontend steps: - name: Checkout code uses: actions/checkout@v4 - name: Frontend | Build - run: npm install && npm run build \ No newline at end of file + run: npm install && npm run build + working-directory: ${{env.WORKING_DIRECTORY}} \ No newline at end of file diff --git a/frontend/.github/workflows/frontend.test.build.docs.yml b/.github/workflows/frontend.test.build.docs.yml similarity index 86% rename from frontend/.github/workflows/frontend.test.build.docs.yml rename to .github/workflows/frontend.test.build.docs.yml index 97ade5ba8..ffa08d6f7 100644 --- a/frontend/.github/workflows/frontend.test.build.docs.yml +++ b/.github/workflows/frontend.test.build.docs.yml @@ -26,9 +26,12 @@ jobs: name: Build Docs - Frontend needs: files-changed runs-on: ubuntu-latest + env: + WORKING_DIRECTORY: ./frontend steps: - name: Checkout code uses: actions/checkout@v4 - name: Frontend | Build Docs - run: npm install && npm run docs:build \ No newline at end of file + run: npm install && npm run docs:build + working-directory: ${{env.WORKING_DIRECTORY}} \ No newline at end of file diff --git a/frontend/.github/workflows/frontend.test.build.storybook.yml b/.github/workflows/frontend.test.build.storybook.yml similarity index 86% rename from frontend/.github/workflows/frontend.test.build.storybook.yml rename to .github/workflows/frontend.test.build.storybook.yml index 3ed779784..d154d94c7 100644 --- a/frontend/.github/workflows/frontend.test.build.storybook.yml +++ b/.github/workflows/frontend.test.build.storybook.yml @@ -26,9 +26,12 @@ jobs: name: Build Storybook - Frontend needs: files-changed runs-on: ubuntu-latest + env: + WORKING_DIRECTORY: ./frontend steps: - name: Checkout code uses: actions/checkout@v4 - name: Frontend | Build Storybook - run: npm install && npm run storybook:build \ No newline at end of file + run: npm install && npm run storybook:build + working-directory: ${{env.WORKING_DIRECTORY}} \ No newline at end of file diff --git a/frontend/.github/workflows/frontend.test.lint.code.yml b/.github/workflows/frontend.test.lint.code.yml similarity index 86% rename from frontend/.github/workflows/frontend.test.lint.code.yml rename to .github/workflows/frontend.test.lint.code.yml index 5891ab6a2..7035da8aa 100644 --- a/frontend/.github/workflows/frontend.test.lint.code.yml +++ b/.github/workflows/frontend.test.lint.code.yml @@ -26,9 +26,12 @@ jobs: name: Lint - Frontend needs: files-changed runs-on: ubuntu-latest + env: + WORKING_DIRECTORY: ./frontend steps: - name: Checkout code uses: actions/checkout@v4 - name: Frontend | Lint - run: npm install && npm run test:lint \ No newline at end of file + run: npm install && npm run test:lint + working-directory: ${{env.WORKING_DIRECTORY}} \ No newline at end of file diff --git a/frontend/.github/workflows/frontend.test.unit.code.yml b/.github/workflows/frontend.test.unit.code.yml similarity index 86% rename from frontend/.github/workflows/frontend.test.unit.code.yml rename to .github/workflows/frontend.test.unit.code.yml index 5a8f42711..115615e23 100644 --- a/frontend/.github/workflows/frontend.test.unit.code.yml +++ b/.github/workflows/frontend.test.unit.code.yml @@ -26,9 +26,12 @@ jobs: name: Unit - Frontend needs: files-changed runs-on: ubuntu-latest + env: + WORKING_DIRECTORY: ./frontend steps: - name: Checkout code uses: actions/checkout@v4 - name: Frontend | Unit - run: npm install && npm run test:unit \ No newline at end of file + run: npm install && npm run test:unit + working-directory: ${{env.WORKING_DIRECTORY}} \ No newline at end of file diff --git a/.github/workflows/lint_pr.yml b/.github/workflows/lint_pr.yml deleted file mode 100644 index 5a8bb662f..000000000 --- a/.github/workflows/lint_pr.yml +++ /dev/null @@ -1,71 +0,0 @@ -name: "ocelot.social lint pull request CI" - -on: - pull_request_target: - types: - - opened - - edited - - synchronize - -jobs: - main: - name: Validate PR title - runs-on: ubuntu-latest - if: ${{ github.actor != 'dependabot[bot]' }} - steps: - - uses: amannn/action-semantic-pull-request@v5 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - # Configure which types are allowed (newline delimited). - # Default: https://github.com/commitizen/conventional-commit-types - #types: | - # fix - # feat - # Configure which scopes are allowed (newline delimited). - scopes: | - backend - webapp - database - release - other - # Configure that a scope must always be provided. - requireScope: true - # Configure which scopes (newline delimited) are disallowed in PR - # titles. For instance by setting # the value below, `chore(release): - # ...` and `ci(e2e,release): ...` will be rejected. - #disallowScopes: | - # release - # Configure additional validation for the subject based on a regex. - # This example ensures the subject doesn't start with an uppercase character. - subjectPattern: ^(?![A-Z]).+$ - # If `subjectPattern` is configured, you can use this property to override - # the default error message that is shown when the pattern doesn't match. - # The variables `subject` and `title` can be used within the message. - subjectPatternError: | - The subject "{subject}" found in the pull request title "{title}" - didn't match the configured pattern. Please ensure that the subject - doesn't start with an uppercase character. - # If you use GitHub Enterprise, you can set this to the URL of your server - #githubBaseUrl: https://github.myorg.com/api/v3 - # If the PR contains one of these labels (newline delimited), the - # validation is skipped. - # If you want to rerun the validation when labels change, you might want - # to use the `labeled` and `unlabeled` event triggers in your workflow. - #ignoreLabels: | - # bot - # ignore-semantic-pull-request - # If you're using a format for the PR title that differs from the traditional Conventional - # Commits spec, you can use these options to customize the parsing of the type, scope and - # subject. The `headerPattern` should contain a regex where the capturing groups in parentheses - # correspond to the parts listed in `headerPatternCorrespondence`. - # See: https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-commits-parser#headerpattern - headerPattern: '^(\w*)(?:\(([\w$.\-*/ ]*)\))?: (.*)$' - headerPatternCorrespondence: type, scope, subject - # For work-in-progress PRs you can typically use draft pull requests - # from GitHub. However, private repositories on the free plan don't have - # this option and therefore this action allows you to opt-in to using the - # special "[WIP]" prefix to indicate this state. This will avoid the - # validation of the PR title and the pull request checks remain pending. - # Note that a second check will be reported if this is enabled. - wip: true diff --git a/frontend/.github/workflows/test.lint.pr.yml b/.github/workflows/test.lint_pr.yml similarity index 97% rename from frontend/.github/workflows/test.lint.pr.yml rename to .github/workflows/test.lint_pr.yml index 317269c27..8832ba992 100644 --- a/frontend/.github/workflows/test.lint.pr.yml +++ b/.github/workflows/test.lint_pr.yml @@ -27,9 +27,11 @@ jobs: # fix # feat # Configure which scopes are allowed (newline delimited). - # Append a scope for each service here scopes: | + backend + webapp frontend + database docu docker release @@ -74,4 +76,4 @@ jobs: # special "[WIP]" prefix to indicate this state. This will avoid the # validation of the PR title and the pull request checks remain pending. # Note that a second check will be reported if this is enabled. - wip: true \ No newline at end of file + wip: true diff --git a/frontend/.github/dependabot.yml b/frontend/.github/dependabot.yml deleted file mode 100644 index 12502a7e0..000000000 --- a/frontend/.github/dependabot.yml +++ /dev/null @@ -1,26 +0,0 @@ -version: 2 -updates: -- package-ecosystem: "github-actions" - directory: "/" - rebase-strategy: "disabled" - schedule: - interval: weekly - day: "saturday" - timezone: "Europe/Berlin" - time: "03:00" -- package-ecosystem: npm - directory: "/" - rebase-strategy: "disabled" - schedule: - interval: weekly - day: "saturday" - timezone: "Europe/Berlin" - time: "03:00" -- package-ecosystem: docker - directory: "/" - rebase-strategy: "disabled" - schedule: - interval: weekly - day: "saturday" - timezone: "Europe/Berlin" - time: "03:00" \ No newline at end of file diff --git a/frontend/.github/file-filters.yml b/frontend/.github/file-filters.yml deleted file mode 100644 index cbf23a241..000000000 --- a/frontend/.github/file-filters.yml +++ /dev/null @@ -1,17 +0,0 @@ -# These file filter patterns are used by the action https://github.com/dorny/paths-filter - -frontend-test-lint-code: &frontend-test-lint-code - - '**/*' - -frontend-test-unit-code: &frontend-test-unit-code - - '**/*' - -frontend-test-build-code: &frontend-test-build-code - - '**/*' - -frontend-test-build-docs: &frontend-test-build-docs - - '**/*.md' - - '.vuepress/*' - -frontend-test-build-storybook: &frontend-test-build-storybook - - '**/*' \ No newline at end of file