]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Add problem matcher 16574/head
authorJosh Soref <2119212+jsoref@users.noreply.github.com>
Thu, 27 Nov 2025 14:01:20 +0000 (09:01 -0500)
committerJosh Soref <2119212+jsoref@users.noreply.github.com>
Wed, 14 Jan 2026 13:50:19 +0000 (08:50 -0500)
Signed-off-by: Josh Soref <2119212+jsoref@users.noreply.github.com>
.github/actions/problem-matchers/action.yml [new file with mode: 0644]
.github/actions/problem-matchers/basic.json [new file with mode: 0644]
.github/workflows/build-and-test-all.yml

diff --git a/.github/actions/problem-matchers/action.yml b/.github/actions/problem-matchers/action.yml
new file mode 100644 (file)
index 0000000..2a91410
--- /dev/null
@@ -0,0 +1,12 @@
+name: 'Define problem matchers'
+description: 'Set up problem matchers'
+
+runs:
+  using: "composite"
+  steps:
+    - name: add problem matchers
+      working-directory: .
+      shell: bash
+      run: |
+        : Add problem matchers
+        echo "::add-matcher::$GITHUB_WORKSPACE/.github/actions/problem-matchers/basic.json"
diff --git a/.github/actions/problem-matchers/basic.json b/.github/actions/problem-matchers/basic.json
new file mode 100644 (file)
index 0000000..242ff35
--- /dev/null
@@ -0,0 +1,109 @@
+{
+    "problemMatcher": [
+        {
+            "owner": "pdns-compilation-fatal-error",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "^\\s*(?:\\.\\./)*(\\S+):(\\d+):(\\d+): (?:fatal |)error: (.*)",
+                    "file": 1,
+                    "line": 2,
+                    "column": 3,
+                    "message": 4
+                }
+            ]
+        },
+        {
+            "owner": "pdns-compilation-error",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "(?:(?:^| )\\.\\.|-git\\d+)/([^:]+):(\\d+):(\\d+): error: (.*)",
+                    "file": 1,
+                    "line": 2,
+                    "column": 3,
+                    "message": 4
+                }
+            ]
+        },
+        {
+            "owner": "pdns-error",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "(?<![\":]|: |network )\\berror:([^'].*)",
+                    "message": 1
+                }
+            ]
+        },
+        {
+            "owner": "pdns-python-test",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "\bFAILED (test_.*?\\.py)::.* - (\\w+Error: .*)",
+                    "file": 1,
+                    "message": 2
+                }
+            ]
+        },
+        {
+            "owner": "pdns-swagger",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "(docs/http-api/swagger/.*\\.yaml)$",
+                    "file": 1
+                },
+                {
+                    "regexp": "(\\d+):(\\d+)  error  \\w+-\\w+  (.*)",
+                    "line": 1,
+                    "column": 2,
+                    "message": 3
+                }
+            ]
+        },
+        {
+            "owner": "pdns-sanitizers",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "==ERROR: (\\w+Sanitizer:.*)",
+                    "message": 1
+                }
+            ]
+        },
+        {
+            "owner": "pdns-ld",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "/usr/bin/ld:.*: (undefined reference.*)",
+                    "message": 1
+                }
+            ]
+        },
+        {
+            "owner": "pdns-test-error",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "^(\\w+\\.py):(\\d+): (\\w+Error)",
+                    "file": 1,
+                    "line": 2,
+                    "message": 3
+                }
+            ]
+        },
+        {
+            "owner": "curl",
+            "severity": "error",
+            "pattern": [
+                {
+                    "regexp": "^\\s+(curl: \\(\\d+\\).*)",
+                    "message": 1
+                }
+            ]
+        }
+    ]
+}
index 54a76b9dd8cebdf9047eeb5eea05dccf401c6aa3..61006e600b9f83cb1b34c4bb321df8b1064789c2 100644 (file)
@@ -76,6 +76,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - name: set up build
         uses: ./.github/actions/cache
         with:
@@ -162,6 +164,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - name: set up build
         uses: ./.github/actions/cache
         with:
@@ -244,6 +248,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - name: set up build
         uses: ./.github/actions/cache
         with:
@@ -349,6 +355,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - uses: ./.github/actions/normalize-branch-name
       - name: Fetch the binaries
         uses: actions/download-artifact@v6
@@ -482,6 +490,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - uses: ./.github/actions/normalize-branch-name
       - name: Fetch the binaries
         uses: actions/download-artifact@v6
@@ -528,6 +538,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - uses: ./.github/actions/normalize-branch-name
       - name: Fetch the binaries
         uses: actions/download-artifact@v6
@@ -579,6 +591,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - uses: ./.github/actions/normalize-branch-name
       - name: Fetch the binaries
         uses: actions/download-artifact@v6
@@ -635,6 +649,8 @@ jobs:
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
       - uses: ./.github/actions/normalize-branch-name
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - name: Fetch the binaries
         uses: actions/download-artifact@v6
         with:
@@ -690,6 +706,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - uses: ./.github/actions/normalize-branch-name
       - name: Fetch the binaries
         uses: actions/download-artifact@v6
@@ -737,6 +755,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - uses: ./.github/actions/normalize-branch-name
       - name: Fetch the binaries
         uses: actions/download-artifact@v6
@@ -798,6 +818,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - uses: ./.github/actions/normalize-branch-name
       - name: Fetch the binaries
         uses: actions/download-artifact@v6
@@ -838,6 +860,8 @@ jobs:
           submodules: recursive
           ref: ${{ inputs.branch-name }}
           persist-credentials: false
+      - name: add problem matchers
+        uses: ./.github/actions/problem-matchers
       - name: install pip build dependencies
         uses: ./.github/actions/pip-build-dependencies
         with: