From cb470d938fea682d7b45688176b1a112fb803f8f Mon Sep 17 00:00:00 2001 From: Jendrik Johannes Date: Fri, 8 May 2026 08:05:38 +0200 Subject: [PATCH 1/7] feat: add support for setup-testlens action https://github.com/testlens-app/setup-testlens Signed-off-by: Jendrik Johannes --- .github/workflows/test.yml | 26 ++++++++++++++++++++++++++ action.yml | 14 ++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3099784..4f73c25 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -202,6 +202,32 @@ jobs: echo "Gradle Dependency Graph File: ${{ steps.test-setup-gradle.outputs.gradle-dependency-graph-file }}" gradle -v + test-setup-testlens: + name: Test Setup TestLens Action + runs-on: ubuntu-latest + steps: + - name: Harden Runner + id: harden-runner + uses: step-security/harden-runner@8d3c67de8e2fe68ef647c8db1e6a09f647780f40 # v2.19.0 + with: + egress-policy: audit + + - name: Checkout Repository + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + + - name: Run Setup TestLens Action + uses: ./ + id: test-setup-testlens + env: + GRADLE_USER_HOME: "${{ github.workspace }}/gradle-home" # simulate environment provided by setup-gradle + with: + setup-testlens: true + testlens-write-log-files: false + + - name: Verify TestLens + run: | + cat "$GRADLE_USER_HOME/init.d/testlens-init.gradle" + test-setup-node: name: Test Setup Node.js Action runs-on: ubuntu-latest diff --git a/action.yml b/action.yml index ba6605f..fc6458a 100644 --- a/action.yml +++ b/action.yml @@ -65,6 +65,13 @@ inputs: description: 'When true, entries will not be restored from the cache but will be saved at the end of the Job.' required: false default: 'false' + setup-testlens: + description: 'Whether to setup TestLens' + required: false + testlens-write-log-files: + description: 'Whether to instruct TestLens to write log files about its activity' + required: false + default: 'false' setup-python: description: 'Whether to setup Python' required: false @@ -275,6 +282,13 @@ runs: cache-disabled: ${{ inputs.gradle-cache-disabled == 'true' }} gradle-version: ${{ inputs.gradle-version }} + - name: Setup TestLens + id: setup-testlens + if: ${{ inputs.setup-testlens == 'true' }} + uses: testlens-app/setup-testlens@d96a555133c275a00949d2cc77b70fe9a4242ebf # v1.9.2 + with: + write-log-files: ${{ inputs.testlens-write-log-files == 'true' }} + - name: Set Up NodeJS Parameters id: setup-node-params if: ${{ inputs.setup-node == 'true' }} From 9e68d7bbb4c63867b6062442430f76970db7723b Mon Sep 17 00:00:00 2001 From: Jendrik Johannes Date: Fri, 8 May 2026 09:41:58 +0200 Subject: [PATCH 2/7] chore: update readme Signed-off-by: Jendrik Johannes --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index 33878a2..1ab9a1e 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,13 @@ Common steps for initializing a job for GitHub actions. This composite action co | gradle-cache-read-only | Whether to use read-only caching for Gradle | No | - | | cache-write-only | When true, entries will not be restored from cache but will be saved at the end of the Job | No | false | +**TestLens** + +| Input | Description | Required | Default | +|--------------------------|--------------------------------------------------------------------|----------|---------| +| setup-testlens | Whether to setup TestLens | No | - | +| testlens-write-log-files | Whether to instruct TestLens to write log files about its activity | No | false | + **Node.js** | Input | Description | Required | Default | From 133352328ef166f345774e0cf361f88e444ac703 Mon Sep 17 00:00:00 2001 From: Jendrik Johannes Date: Fri, 8 May 2026 09:49:36 +0200 Subject: [PATCH 3/7] feat: add setup log output and fix test Signed-off-by: Jendrik Johannes --- .github/workflows/test.yml | 2 ++ action.yml | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4f73c25..247236d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -225,6 +225,8 @@ jobs: testlens-write-log-files: false - name: Verify TestLens + env: + GRADLE_USER_HOME: "${{ github.workspace }}/gradle-home" run: | cat "$GRADLE_USER_HOME/init.d/testlens-init.gradle" diff --git a/action.yml b/action.yml index fc6458a..bdaa704 100644 --- a/action.yml +++ b/action.yml @@ -282,6 +282,15 @@ runs: cache-disabled: ${{ inputs.gradle-cache-disabled == 'true' }} gradle-version: ${{ inputs.gradle-version }} + - name: Set Up TestLens Parameters + id: setup-testlens-params + if: ${{ inputs.setup-testlens == 'true' }} + shell: bash + run: | + echo "::group::Setting up TestLens." + echo "Write Log Files: ${{ inputs.testlens-write-log-files == 'true' }}" + echo "::endgroup::" + - name: Setup TestLens id: setup-testlens if: ${{ inputs.setup-testlens == 'true' }} From 27d51210023cc2d9da042924a082e1d46cb72421 Mon Sep 17 00:00:00 2001 From: Jendrik Johannes Date: Mon, 11 May 2026 16:49:00 +0200 Subject: [PATCH 4/7] fix: let setup-testlens test work on an existing directory Signed-off-by: Jendrik Johannes --- .github/workflows/test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 247236d..1a89898 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -219,16 +219,16 @@ jobs: uses: ./ id: test-setup-testlens env: - GRADLE_USER_HOME: "${{ github.workspace }}/gradle-home" # simulate environment provided by setup-gradle + GRADLE_USER_HOME: "${{ github.workspace }}" # simulate environment provided by setup-gradle with: setup-testlens: true testlens-write-log-files: false - name: Verify TestLens env: - GRADLE_USER_HOME: "${{ github.workspace }}/gradle-home" + GRADLE_USER_HOME: "${{ github.workspace }}" run: | - cat "$GRADLE_USER_HOME/init.d/testlens-init.gradle" + cat "$GRADLE_USER_HOME/testlens-init.gradle" test-setup-node: name: Test Setup Node.js Action From d7f8020bd50252ce8f7a9af3477a4666db2038e2 Mon Sep 17 00:00:00 2001 From: Jendrik Johannes Date: Mon, 11 May 2026 17:04:26 +0200 Subject: [PATCH 5/7] fix: make setup-testlens create required directories Signed-off-by: Jendrik Johannes --- .github/workflows/test.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index bd37fd6..4a17ce6 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -215,20 +215,26 @@ jobs: - name: Checkout Repository uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - name: Simulate Gradle setup # simulate environment provided by setup-gradle + env: + GRADLE_USER_HOME: "${{ github.workspace }}/gradle-home" + run: | + mkdir -p "$GRADLE_USER_HOME/init.d" + - name: Run Setup TestLens Action uses: ./ id: test-setup-testlens env: - GRADLE_USER_HOME: "${{ github.workspace }}" # simulate environment provided by setup-gradle + GRADLE_USER_HOME: "${{ github.workspace }/gradle-home" with: setup-testlens: true testlens-write-log-files: false - name: Verify TestLens env: - GRADLE_USER_HOME: "${{ github.workspace }}" + GRADLE_USER_HOME: "${{ github.workspace }}/gradle-home" run: | - cat "$GRADLE_USER_HOME/testlens-init.gradle" + cat "$GRADLE_USER_HOME/init.d/testlens-init.gradle" test-setup-node: name: Test Setup Node.js Action From 53bd2f933b9c9b4a011085846c984f836f4b091f Mon Sep 17 00:00:00 2001 From: Jendrik Johannes Date: Mon, 11 May 2026 17:06:15 +0200 Subject: [PATCH 6/7] fix: use 'setup-gradle: true' in 'setup-testlens' test Signed-off-by: Jendrik Johannes --- .github/workflows/test.yml | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 4a17ce6..acc7be5 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -215,18 +215,11 @@ jobs: - name: Checkout Repository uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 - - name: Simulate Gradle setup # simulate environment provided by setup-gradle - env: - GRADLE_USER_HOME: "${{ github.workspace }}/gradle-home" - run: | - mkdir -p "$GRADLE_USER_HOME/init.d" - - name: Run Setup TestLens Action uses: ./ id: test-setup-testlens - env: - GRADLE_USER_HOME: "${{ github.workspace }/gradle-home" with: + setup-gradle: true # required to make 'setup-testlens' do something setup-testlens: true testlens-write-log-files: false From 49353228e855d6817bcc5bf536320afe74900196 Mon Sep 17 00:00:00 2001 From: Jendrik Johannes Date: Mon, 11 May 2026 17:13:41 +0200 Subject: [PATCH 7/7] fix: test setup Signed-off-by: Jendrik Johannes --- .github/workflows/test.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index acc7be5..144bc39 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -208,7 +208,7 @@ jobs: steps: - name: Harden Runner id: harden-runner - uses: step-security/harden-runner@8d3c67de8e2fe68ef647c8db1e6a09f647780f40 # v2.19.0 + uses: step-security/harden-runner@a5ad31d6a139d249332a2605b85202e8c0b78450 # v2.19.1 with: egress-policy: audit @@ -224,8 +224,6 @@ jobs: testlens-write-log-files: false - name: Verify TestLens - env: - GRADLE_USER_HOME: "${{ github.workspace }}/gradle-home" run: | cat "$GRADLE_USER_HOME/init.d/testlens-init.gradle"