]> source.dussan.org Git - gitea.git/commitdiff
Clean up github actions (#24984)
authorsilverwind <me@silverwind.io>
Tue, 30 May 2023 05:31:00 +0000 (07:31 +0200)
committerGitHub <noreply@github.com>
Tue, 30 May 2023 05:31:00 +0000 (13:31 +0800)
- Merge the file filters into `files-changed.yml`
- Remove unused yaml anchors like `&backend`
- Merge the `compliance-docs` workflow into `compliance`
- Add actions linting
- Misc cleanups for whitespace and step names

.github/file-filters.yml [deleted file]
.github/workflows/files-changed.yml
.github/workflows/pull-compliance-docs.yml [deleted file]
.github/workflows/pull-compliance.yml

diff --git a/.github/file-filters.yml b/.github/file-filters.yml
deleted file mode 100644 (file)
index 26231c9..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-docs: &docs
-  - "**/*.md"
-  - "docs/**"
-
-backend: &backend
-  - "**/*.go"
-  - "**/*.tmpl"
-  - "go.mod"
-  - "go.sum"
-
-frontend: &frontend
-  - "**/*.js"
-  - "web_src/**"
-  - "package.json"
-  - "package-lock.json"
index 2efd6767197d134c91d0265fffcf8788a429aaf9..9a9c54720b4533a90efa4b2c986dd4049ababcda 100644 (file)
@@ -1,32 +1,53 @@
-name: files changed
+name: files-changed
 
 on:
   workflow_call:
     outputs:
-      docs:
-        description: "whether docs files changed"
-        value: ${{ jobs.files-changed.outputs.docs }}
       backend:
         description: "whether backend files changed"
-        value: ${{ jobs.files-changed.outputs.backend }}
+        value: ${{ jobs.detect.outputs.backend }}
       frontend:
         description: "whether frontend files changed"
-        value: ${{ jobs.files-changed.outputs.frontend }}
+        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 }}
 
 jobs:
-  files-changed:
+  detect:
     name: detect which files changed
     runs-on: ubuntu-latest
     timeout-minutes: 3
     # Map a step output to a job output
     outputs:
-      docs: ${{ steps.changes.outputs.docs }}
       backend: ${{ steps.changes.outputs.backend }}
       frontend: ${{ steps.changes.outputs.frontend }}
+      docs: ${{ steps.changes.outputs.docs }}
+      actions: ${{ steps.changes.outputs.actions }}
     steps:
       - uses: actions/checkout@v3
-      - name: Check for backend file changes
-        uses: dorny/paths-filter@v2
+      - uses: dorny/paths-filter@v2
         id: changes
         with:
-          filters: .github/file-filters.yml
+          filters: |
+            backend:
+              - "**/*.go"
+              - "**/*.tmpl"
+              - "go.mod"
+              - "go.sum"
+
+            frontend:
+              - "**/*.js"
+              - "web_src/**"
+              - "package.json"
+              - "package-lock.json"
+
+            docs:
+              - "**/*.md"
+              - "docs/**"
+
+            actions:
+              - ".github/workflows/*"
diff --git a/.github/workflows/pull-compliance-docs.yml b/.github/workflows/pull-compliance-docs.yml
deleted file mode 100644 (file)
index 0f6720a..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-name: compliance-docs
-
-on:
-  pull_request:
-
-concurrency:
-  group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
-  cancel-in-progress: true
-
-jobs:
-  files-changed:
-    uses: ./.github/workflows/files-changed.yml
-
-  compliance-docs:
-    if: needs.files-changed.outputs.docs == 'true'
-    needs: files-changed
-    runs-on: ubuntu-latest
-    steps:
-      - uses: actions/checkout@v3
-      - uses: actions/setup-node@v3
-        with:
-          node-version: 20
-      - run: make deps-frontend
-      - run: make lint-md
-      - run: make docs # test if build could succeed
index e108379b3096a9a4086947a6ad7fbb6a7aaf3a25..b7c1ab8a33c82cf979d6b42bf4ae2c2501f5de9c 100644 (file)
@@ -25,6 +25,7 @@ jobs:
       - run: make lint-backend
         env:
           TAGS: bindata sqlite sqlite_unlock_notify
+
   lint-go-windows:
     if: needs.files-changed.outputs.backend == 'true'
     needs: files-changed
@@ -41,6 +42,7 @@ jobs:
           TAGS: bindata sqlite sqlite_unlock_notify
           GOOS: windows
           GOARCH: amd64
+
   lint-go-gogit:
     if: needs.files-changed.outputs.backend == 'true'
     needs: files-changed
@@ -55,6 +57,7 @@ jobs:
       - run: make lint-go
         env:
           TAGS: bindata gogit sqlite sqlite_unlock_notify
+
   checks-backend:
     if: needs.files-changed.outputs.backend == 'true'
     needs: files-changed
@@ -67,6 +70,7 @@ jobs:
           check-latest: true
       - run: make deps-backend deps-tools
       - run: make --always-make checks-backend # ensure the "go-licenses" make target runs
+
   frontend:
     if: needs.files-changed.outputs.frontend == 'true'
     needs: files-changed
@@ -79,6 +83,7 @@ jobs:
       - run: make deps-frontend
       - run: make lint-frontend
       - run: make checks-frontend
+
   backend:
     if: needs.files-changed.outputs.backend == 'true'
     needs: files-changed
@@ -113,3 +118,25 @@ jobs:
         env:
           GOOS: linux
           GOARCH: 386
+
+  docs:
+    if: needs.files-changed.outputs.docs == 'true'
+    needs: files-changed
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v3
+      - uses: actions/setup-node@v3
+        with:
+          node-version: 20
+      - run: make deps-frontend
+      - run: make lint-md
+      - run: make docs # test if build could succeed
+
+  actions:
+    if: needs.files-changed.outputs.actions == 'true'
+    needs: files-changed
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v3
+      - uses: actions/setup-go@v4
+      - run: make lint-actions