From cd5ec5db7ff7900fad2bc248af093146ef42059d Mon Sep 17 00:00:00 2001 From: VeithMetro Date: Mon, 25 May 2026 13:22:15 +0200 Subject: [PATCH 1/3] Only the relevant workflows should run after commits on a PR branch --- .github/workflows/JsonGenerator.yml | 22 +++++++++++++++ .github/workflows/LuaGenerator.yml | 24 ++++++++++++++++ .github/workflows/PluginSkeletonGenerator.yml | 28 +++++++++++++++++++ .github/workflows/ProxyStubGenerator.yml | 22 +++++++++++++++ 4 files changed, 96 insertions(+) diff --git a/.github/workflows/JsonGenerator.yml b/.github/workflows/JsonGenerator.yml index 610230db..75adc1c5 100644 --- a/.github/workflows/JsonGenerator.yml +++ b/.github/workflows/JsonGenerator.yml @@ -23,7 +23,29 @@ concurrency: cancel-in-progress: false jobs: + changes: + if: github.event_name == 'pull_request' && github.event.action == 'synchronize' + runs-on: ubuntu-latest + outputs: + relevant: ${{ steps.filter.outputs.relevant }} + steps: + - uses: dorny/paths-filter@v3 + id: filter + with: + token: ${{ github.token }} + base: ${{ github.event.before }} + filters: | + relevant: + - 'JsonGenerator/**' + - '.github/workflows/JsonGenerator.yml' + Thunder: + needs: [changes] + if: | + always() && ( + needs.changes.result == 'skipped' || + needs.changes.outputs.relevant == 'true' + ) uses: rdkcentral/Thunder/.github/workflows/Linux build template.yml@master ThunderInterfaces: diff --git a/.github/workflows/LuaGenerator.yml b/.github/workflows/LuaGenerator.yml index 6951a6f1..27e06ec8 100644 --- a/.github/workflows/LuaGenerator.yml +++ b/.github/workflows/LuaGenerator.yml @@ -27,7 +27,31 @@ concurrency: cancel-in-progress: false jobs: + changes: + if: github.event_name == 'pull_request' && github.event.action == 'synchronize' + runs-on: ubuntu-latest + outputs: + relevant: ${{ steps.filter.outputs.relevant }} + steps: + - uses: dorny/paths-filter@v3 + id: filter + with: + token: ${{ github.token }} + base: ${{ github.event.before }} + filters: | + relevant: + - 'LuaGenerator/**' + - 'ProxyStubGenerator/**' + - '.github/workflows/LuaGenerator.yml' + - '.github/workflows/ProxyStubGenerator.yml' + generate_lua: + needs: [changes] + if: | + always() && ( + needs.changes.result == 'skipped' || + needs.changes.outputs.relevant == 'true' + ) runs-on: ubuntu-latest steps: - name: Checkout ThunderTools diff --git a/.github/workflows/PluginSkeletonGenerator.yml b/.github/workflows/PluginSkeletonGenerator.yml index 0009ba65..1ca32b37 100644 --- a/.github/workflows/PluginSkeletonGenerator.yml +++ b/.github/workflows/PluginSkeletonGenerator.yml @@ -23,7 +23,29 @@ concurrency: cancel-in-progress: false jobs: + changes: + if: github.event_name == 'pull_request' && github.event.action == 'synchronize' + runs-on: ubuntu-latest + outputs: + relevant: ${{ steps.filter.outputs.relevant }} + steps: + - uses: dorny/paths-filter@v3 + id: filter + with: + token: ${{ github.token }} + base: ${{ github.event.before }} + filters: | + relevant: + - 'PluginSkeletonGenerator/**' + - '.github/workflows/PluginSkeletonGenerator.yml' + Thunder: + needs: [changes] + if: | + always() && ( + needs.changes.result == 'skipped' || + needs.changes.outputs.relevant == 'true' + ) uses: rdkcentral/Thunder/.github/workflows/Linux build template.yml@master ThunderInterfaces: @@ -31,6 +53,12 @@ jobs: uses: rdkcentral/ThunderInterfaces/.github/workflows/Linux build template.yml@master prepare: + needs: [changes] + if: | + always() && ( + needs.changes.result == 'skipped' || + needs.changes.outputs.relevant == 'true' + ) runs-on: ubuntu-latest outputs: matrix: ${{ steps.set-matrix.outputs.matrix }} diff --git a/.github/workflows/ProxyStubGenerator.yml b/.github/workflows/ProxyStubGenerator.yml index 9cdb7e68..2255040c 100644 --- a/.github/workflows/ProxyStubGenerator.yml +++ b/.github/workflows/ProxyStubGenerator.yml @@ -23,7 +23,29 @@ concurrency: cancel-in-progress: false jobs: + changes: + if: github.event_name == 'pull_request' && github.event.action == 'synchronize' + runs-on: ubuntu-latest + outputs: + relevant: ${{ steps.filter.outputs.relevant }} + steps: + - uses: dorny/paths-filter@v3 + id: filter + with: + token: ${{ github.token }} + base: ${{ github.event.before }} + filters: | + relevant: + - 'ProxyStubGenerator/**' + - '.github/workflows/ProxyStubGenerator.yml' + Thunder: + needs: [changes] + if: | + always() && ( + needs.changes.result == 'skipped' || + needs.changes.outputs.relevant == 'true' + ) uses: rdkcentral/Thunder/.github/workflows/Linux build template.yml@master ThunderInterfaces: From 5f295bb76c4641b91fc8278100e6331bd1b1eb89 Mon Sep 17 00:00:00 2001 From: VeithMetro Date: Mon, 25 May 2026 15:00:16 +0200 Subject: [PATCH 2/3] Use exact sha instead of a tag for any 3rd party actions --- .github/workflows/JsonGenerator.yml | 2 +- .github/workflows/LuaGenerator.yml | 2 +- .github/workflows/PluginSkeletonGenerator.yml | 2 +- .github/workflows/ProxyStubGenerator.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/JsonGenerator.yml b/.github/workflows/JsonGenerator.yml index 75adc1c5..3038d600 100644 --- a/.github/workflows/JsonGenerator.yml +++ b/.github/workflows/JsonGenerator.yml @@ -29,7 +29,7 @@ jobs: outputs: relevant: ${{ steps.filter.outputs.relevant }} steps: - - uses: dorny/paths-filter@v3 + - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1 id: filter with: token: ${{ github.token }} diff --git a/.github/workflows/LuaGenerator.yml b/.github/workflows/LuaGenerator.yml index 27e06ec8..9874ed85 100644 --- a/.github/workflows/LuaGenerator.yml +++ b/.github/workflows/LuaGenerator.yml @@ -33,7 +33,7 @@ jobs: outputs: relevant: ${{ steps.filter.outputs.relevant }} steps: - - uses: dorny/paths-filter@v3 + - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1 id: filter with: token: ${{ github.token }} diff --git a/.github/workflows/PluginSkeletonGenerator.yml b/.github/workflows/PluginSkeletonGenerator.yml index 1ca32b37..0fcfbdba 100644 --- a/.github/workflows/PluginSkeletonGenerator.yml +++ b/.github/workflows/PluginSkeletonGenerator.yml @@ -29,7 +29,7 @@ jobs: outputs: relevant: ${{ steps.filter.outputs.relevant }} steps: - - uses: dorny/paths-filter@v3 + - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1 id: filter with: token: ${{ github.token }} diff --git a/.github/workflows/ProxyStubGenerator.yml b/.github/workflows/ProxyStubGenerator.yml index 2255040c..0e03efe1 100644 --- a/.github/workflows/ProxyStubGenerator.yml +++ b/.github/workflows/ProxyStubGenerator.yml @@ -29,7 +29,7 @@ jobs: outputs: relevant: ${{ steps.filter.outputs.relevant }} steps: - - uses: dorny/paths-filter@v3 + - uses: dorny/paths-filter@fbd0ab8f3e69293af611ebaee6363fc25e6d187d # v4.0.1 id: filter with: token: ${{ github.token }} From fd7059663c59f5a8c032c8a753c478c7ea383009 Mon Sep 17 00:00:00 2001 From: VeithMetro Date: Mon, 25 May 2026 15:03:12 +0200 Subject: [PATCH 3/3] Make sure merge commits won't cause false positives --- .github/workflows/JsonGenerator.yml | 1 + .github/workflows/LuaGenerator.yml | 1 + .github/workflows/PluginSkeletonGenerator.yml | 1 + .github/workflows/ProxyStubGenerator.yml | 1 + 4 files changed, 4 insertions(+) diff --git a/.github/workflows/JsonGenerator.yml b/.github/workflows/JsonGenerator.yml index 3038d600..a190db80 100644 --- a/.github/workflows/JsonGenerator.yml +++ b/.github/workflows/JsonGenerator.yml @@ -34,6 +34,7 @@ jobs: with: token: ${{ github.token }} base: ${{ github.event.before }} + ref: ${{ github.event.after }} filters: | relevant: - 'JsonGenerator/**' diff --git a/.github/workflows/LuaGenerator.yml b/.github/workflows/LuaGenerator.yml index 9874ed85..fda32190 100644 --- a/.github/workflows/LuaGenerator.yml +++ b/.github/workflows/LuaGenerator.yml @@ -38,6 +38,7 @@ jobs: with: token: ${{ github.token }} base: ${{ github.event.before }} + ref: ${{ github.event.after }} filters: | relevant: - 'LuaGenerator/**' diff --git a/.github/workflows/PluginSkeletonGenerator.yml b/.github/workflows/PluginSkeletonGenerator.yml index 0fcfbdba..288a0321 100644 --- a/.github/workflows/PluginSkeletonGenerator.yml +++ b/.github/workflows/PluginSkeletonGenerator.yml @@ -34,6 +34,7 @@ jobs: with: token: ${{ github.token }} base: ${{ github.event.before }} + ref: ${{ github.event.after }} filters: | relevant: - 'PluginSkeletonGenerator/**' diff --git a/.github/workflows/ProxyStubGenerator.yml b/.github/workflows/ProxyStubGenerator.yml index 0e03efe1..797d2321 100644 --- a/.github/workflows/ProxyStubGenerator.yml +++ b/.github/workflows/ProxyStubGenerator.yml @@ -34,6 +34,7 @@ jobs: with: token: ${{ github.token }} base: ${{ github.event.before }} + ref: ${{ github.event.after }} filters: | relevant: - 'ProxyStubGenerator/**'