From fba934ed396dedd07709d2c3814aa84c8cc33559 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Wed, 5 Apr 2023 16:02:52 +0200 Subject: [PATCH 01/15] Import existing action Signed-off-by: Benoit Donneaux --- action.yml | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 action.yml diff --git a/action.yml b/action.yml new file mode 100644 index 0000000..639bbfa --- /dev/null +++ b/action.yml @@ -0,0 +1,36 @@ +name: 'mount-tmpfs' +description: 'Create and mount a temporary disk in memory' +inputs: + size: + description: Disk size in MB (>= 1) + required: true + default: 1 + root: + description: 'Root path for the mount point (default = working directory)' + required: true + default: '.' +outputs: + uuid: + description: 'Device uuid of the disk' + value: ${{ steps.create.outputs.uuid }} + mnt: + description: 'Mount path of the disk (=/)' + value: ${{ steps.create.outputs.mnt }} +runs: + using: "composite" + steps: + - name: Create + id: create + shell: bash + run: | + UUID="$(uuidgen)" + MNT="${{ inputs.root }}/${UUID}" + echo ":rocket: Temp disk ${MNT} creation started" >> $GITHUB_STEP_SUMMARY + sudo mkdir -p "${MNT}" \ + && echo ":heavy_check_mark: Temp disk mount point creation succeeded" >> $GITHUB_STEP_SUMMARY \ + || { echo ":x: Temp disk mount point creation failed" >> $GITHUB_STEP_SUMMARY; exit 1; } + sudo mount -o size=${{ inputs.size }},uid=$(id -u) -t tmpfs tmpfs "${MNT}" \ + && echo ":heavy_check_mark: Temp disk mount operation succeeded" >> $GITHUB_STEP_SUMMARY \ + || { echo ":x: Temp disk mount operation failed" >> $GITHUB_STEP_SUMMARY; exit 1; } + echo "uuid=${UUID}" >> $GITHUB_OUTPUT + echo "mnt=${MNT}" >> $GITHUB_OUTPUT From 9c421828643ec1844ed1b10dc990c2ec1b323d46 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Wed, 5 Apr 2023 16:03:12 +0200 Subject: [PATCH 02/15] Document the current usage Signed-off-by: Benoit Donneaux --- README.md | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index deae7c0..8d4d43c 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,27 @@ -# mount-tmpfs-action +# mount-tmpfs Create and mount a temporary disk in memory + +This action was created to mitigate the risk when secrets have to be written on disk. + +## Usage + +> :warning: Please consider the physical limitations of the GitHub runners before + changing the values. + +```yaml +- name: Get a tmpfs for our secret + id: tmpfs + uses: LeastAuthority/mount-tmpfs@v1 + with: + size: 2 + root: '/mnt' +``` + +The action then returns the uuid and the mount point of the tmpfs as outputs. + +```yaml +- name: Import secret in tmpfs + run: + cat < "${{ steps.tmpfs.outputs.mnt }}/secret_key" + ${{ secrets.KEY }} +``` From 292b0ee326c955dc376be9ce46bf19c6fd30c9a6 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Wed, 5 Apr 2023 17:08:09 +0200 Subject: [PATCH 03/15] Reword documentation Signed-off-by: Benoit Donneaux --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8d4d43c..ebf5996 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # mount-tmpfs -Create and mount a temporary disk in memory +GitHub action to create and mount a temporary disk in memory. -This action was created to mitigate the risk when secrets have to be written on disk. +It can be uses as an attempt to keep secrets from being written to disk. ## Usage From d75a363125d488cda6401cdc75497dafc2c58705 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Wed, 5 Apr 2023 17:11:31 +0200 Subject: [PATCH 04/15] Add missing EOF and fix indentation Signed-off-by: Benoit Donneaux --- README.md | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index ebf5996..748f31b 100644 --- a/README.md +++ b/README.md @@ -9,19 +9,20 @@ It can be uses as an attempt to keep secrets from being written to disk. changing the values. ```yaml -- name: Get a tmpfs for our secret - id: tmpfs - uses: LeastAuthority/mount-tmpfs@v1 - with: - size: 2 - root: '/mnt' + - name: Get a tmpfs for our secret + id: tmpfs + uses: LeastAuthority/mount-tmpfs@v1 + with: + size: 2 + root: '/mnt' ``` The action then returns the uuid and the mount point of the tmpfs as outputs. ```yaml -- name: Import secret in tmpfs - run: - cat < "${{ steps.tmpfs.outputs.mnt }}/secret_key" - ${{ secrets.KEY }} + - name: Import secret in tmpfs + run: | + cat < "${{ steps.tmpfs.outputs.mnt }}/secret_key" + ${{ secrets.KEY }} + EOF ``` From b6cb74efb8ab20a9ab4c9f5fb1e0b71ba044b2bb Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Wed, 5 Apr 2023 17:12:25 +0200 Subject: [PATCH 05/15] Typo Signed-off-by: Benoit Donneaux --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 748f31b..ac0edef 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # mount-tmpfs GitHub action to create and mount a temporary disk in memory. -It can be uses as an attempt to keep secrets from being written to disk. +It can be used as an attempt to keep secrets from being written to disk. ## Usage From dfd23e4751f35b6de7ebeb63d8a79abc60dbaf26 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 09:43:24 +0200 Subject: [PATCH 06/15] Document the cleanup too Signed-off-by: Benoit Donneaux --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index ac0edef..b4d0ddf 100644 --- a/README.md +++ b/README.md @@ -26,3 +26,11 @@ The action then returns the uuid and the mount point of the tmpfs as outputs. ${{ secrets.KEY }} EOF ``` + +Optionally, the tmpfs could be removed when no longer needed. + +```yaml + - name: Cleanup + run: | + sudo umount "${{ steps.tmpfs.outputs.mnt }}" +``` From 2ff36b366cc7b7d4c783aaecd8bb34cef467d23d Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 10:31:23 +0200 Subject: [PATCH 07/15] Correct action repository Signed-off-by: Benoit Donneaux --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b4d0ddf..7e705a8 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ It can be used as an attempt to keep secrets from being written to disk. ```yaml - name: Get a tmpfs for our secret id: tmpfs - uses: LeastAuthority/mount-tmpfs@v1 + uses: LeastAuthority/mount-tmpfs-action@v1 with: size: 2 root: '/mnt' From c979cca94d18ff361c786996f567f57b77cedeb8 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 10:57:52 +0200 Subject: [PATCH 08/15] Rename dick to FS for clarity Signed-off-by: Benoit Donneaux --- README.md | 2 +- action.yml | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 7e705a8..8d16ef0 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # mount-tmpfs -GitHub action to create and mount a temporary disk in memory. +GitHub action to create and mount a temporary file system in memory. It can be used as an attempt to keep secrets from being written to disk. diff --git a/action.yml b/action.yml index 639bbfa..20357df 100644 --- a/action.yml +++ b/action.yml @@ -1,8 +1,8 @@ name: 'mount-tmpfs' -description: 'Create and mount a temporary disk in memory' +description: 'Create and mount a temporary file system in memory' inputs: size: - description: Disk size in MB (>= 1) + description: FS size in MB (>= 1) required: true default: 1 root: @@ -25,12 +25,12 @@ runs: run: | UUID="$(uuidgen)" MNT="${{ inputs.root }}/${UUID}" - echo ":rocket: Temp disk ${MNT} creation started" >> $GITHUB_STEP_SUMMARY + echo ":rocket: Temp FS ${MNT} creation started" >> $GITHUB_STEP_SUMMARY sudo mkdir -p "${MNT}" \ - && echo ":heavy_check_mark: Temp disk mount point creation succeeded" >> $GITHUB_STEP_SUMMARY \ - || { echo ":x: Temp disk mount point creation failed" >> $GITHUB_STEP_SUMMARY; exit 1; } + && echo ":heavy_check_mark: Temp FS mount point creation succeeded" >> $GITHUB_STEP_SUMMARY \ + || { echo ":x: Temp FS mount point creation failed" >> $GITHUB_STEP_SUMMARY; exit 1; } sudo mount -o size=${{ inputs.size }},uid=$(id -u) -t tmpfs tmpfs "${MNT}" \ - && echo ":heavy_check_mark: Temp disk mount operation succeeded" >> $GITHUB_STEP_SUMMARY \ - || { echo ":x: Temp disk mount operation failed" >> $GITHUB_STEP_SUMMARY; exit 1; } + && echo ":heavy_check_mark: Temp FS mount operation succeeded" >> $GITHUB_STEP_SUMMARY \ + || { echo ":x: Temp FS mount operation failed" >> $GITHUB_STEP_SUMMARY; exit 1; } echo "uuid=${UUID}" >> $GITHUB_OUTPUT echo "mnt=${MNT}" >> $GITHUB_OUTPUT From cf4de38439da6ff5a58997ac9f6e2290576b5052 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 11:35:47 +0200 Subject: [PATCH 09/15] Add an intergation test Signed-off-by: Benoit Donneaux --- .github/workflows/integrate.yml | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .github/workflows/integrate.yml diff --git a/.github/workflows/integrate.yml b/.github/workflows/integrate.yml new file mode 100644 index 0000000..90d7cc9 --- /dev/null +++ b/.github/workflows/integrate.yml @@ -0,0 +1,29 @@ +name: Integration + +on: + push: + branches: + - main + paths: + - '.github/workflows/integrate.yml' + - 'action.yml' + pull_request: + branches: + - main + paths: + - '.github/workflows/integrate.yml' + - 'action.yml' +jobs: + integrate: + name: Integration tests + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Call action w/o paramters + id: test_defaults + uses: ./ + + - name: Cleanup action w/o paramters + run: | + sudo umount "${{ steps.test_defaults.outputs.mnt }}" From bb13582ada5befeccf74db55de932a38e1d1f2fe Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 11:46:07 +0200 Subject: [PATCH 10/15] Add tests for size and root inputs Signed-off-by: Benoit Donneaux --- .github/workflows/integrate.yml | 42 ++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 6 deletions(-) diff --git a/.github/workflows/integrate.yml b/.github/workflows/integrate.yml index 90d7cc9..155529e 100644 --- a/.github/workflows/integrate.yml +++ b/.github/workflows/integrate.yml @@ -14,16 +14,46 @@ on: - '.github/workflows/integrate.yml' - 'action.yml' jobs: - integrate: - name: Integration tests + test_defaults: + name: Test defaults runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - - name: Call action w/o paramters - id: test_defaults + - name: Call action w/o inputs + id: test uses: ./ - - name: Cleanup action w/o paramters + - name: Cleanup run: | - sudo umount "${{ steps.test_defaults.outputs.mnt }}" + sudo umount "${{ steps.test.outputs.mnt }}" + test_size: + name: Test size + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Call action with size + id: test + uses: ./ + with: + size: 4 + + - name: Cleanup + run: | + sudo umount "${{ steps.test.outputs.mnt }}" + test_root: + name: Test root + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Call action with root + id: test + uses: ./ + with: + root: ./test_root + + - name: Cleanup + run: | + sudo umount "${{ steps.test.outputs.mnt }}" From b51ff76bea7b9132e3abf94db397ad19bdcf56c7 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 12:23:23 +0200 Subject: [PATCH 11/15] Improve test with content and error handling Signed-off-by: Benoit Donneaux --- .github/workflows/integrate.yml | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/.github/workflows/integrate.yml b/.github/workflows/integrate.yml index 155529e..59d2044 100644 --- a/.github/workflows/integrate.yml +++ b/.github/workflows/integrate.yml @@ -13,6 +13,8 @@ on: paths: - '.github/workflows/integrate.yml' - 'action.yml' +env: + TEST_CONTENT: "This is a content string for test" jobs: test_defaults: name: Test defaults @@ -21,12 +23,36 @@ jobs: - uses: actions/checkout@v3 - name: Call action w/o inputs - id: test + id: call uses: ./ + continue-on-error: true + + - name: Verify FS + id: verify + run: | + cat < "${{ steps.call.outputs.mnt }}/content" + ${{ env.TEST_CONTENT }} + EOF + test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}"" + continue-on-error: true - name: Cleanup + id: cleanup run: | - sudo umount "${{ steps.test.outputs.mnt }}" + sudo umount "${{ steps.call.outputs.mnt }}" + continue-on-error: true + + - name: Proper exit + run: | + if [ ${{ steps.call.outcome }} != 'success' \ + -o steps.verify.outcome }} != 'success' \ + -o steps.cleanup.outcome }} != 'success' ] + then + echo ":x: Test failed" >> $GITHUB_STEP_SUMMARY + exit 1 + else + echo ":heavy_check_mark: Test succeeded" >> $GITHUB_STEP_SUMMARY + test_size: name: Test size runs-on: ubuntu-latest From f77bef114f856f4fb37021474afa14376118a37a Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 12:26:07 +0200 Subject: [PATCH 12/15] Fix proper exit and expand to all tests Signed-off-by: Benoit Donneaux --- .github/workflows/integrate.yml | 55 ++++++++++++++++++++++++++++++--- 1 file changed, 51 insertions(+), 4 deletions(-) diff --git a/.github/workflows/integrate.yml b/.github/workflows/integrate.yml index 59d2044..71abb22 100644 --- a/.github/workflows/integrate.yml +++ b/.github/workflows/integrate.yml @@ -52,6 +52,7 @@ jobs: exit 1 else echo ":heavy_check_mark: Test succeeded" >> $GITHUB_STEP_SUMMARY + fi test_size: name: Test size @@ -60,14 +61,37 @@ jobs: - uses: actions/checkout@v3 - name: Call action with size - id: test + id: call uses: ./ with: size: 4 + - name: Verify FS + id: verify + run: | + cat < "${{ steps.call.outputs.mnt }}/content" + ${{ env.TEST_CONTENT }} + EOF + test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}"" + continue-on-error: true + - name: Cleanup + id: cleanup + run: | + sudo umount "${{ steps.call.outputs.mnt }}" + continue-on-error: true + + - name: Proper exit run: | - sudo umount "${{ steps.test.outputs.mnt }}" + if [ ${{ steps.call.outcome }} != 'success' \ + -o steps.verify.outcome }} != 'success' \ + -o steps.cleanup.outcome }} != 'success' ] + then + echo ":x: Test failed" >> $GITHUB_STEP_SUMMARY + exit 1 + else + echo ":heavy_check_mark: Test succeeded" >> $GITHUB_STEP_SUMMARY + fi test_root: name: Test root runs-on: ubuntu-latest @@ -75,11 +99,34 @@ jobs: - uses: actions/checkout@v3 - name: Call action with root - id: test + id: call uses: ./ with: root: ./test_root + - name: Verify FS + id: verify + run: | + cat < "${{ steps.call.outputs.mnt }}/content" + ${{ env.TEST_CONTENT }} + EOF + test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}"" + continue-on-error: true + - name: Cleanup + id: cleanup + run: | + sudo umount "${{ steps.call.outputs.mnt }}" + continue-on-error: true + + - name: Proper exit run: | - sudo umount "${{ steps.test.outputs.mnt }}" + if [ ${{ steps.call.outcome }} != 'success' \ + -o steps.verify.outcome }} != 'success' \ + -o steps.cleanup.outcome }} != 'success' ] + then + echo ":x: Test failed" >> $GITHUB_STEP_SUMMARY + exit 1 + else + echo ":heavy_check_mark: Test succeeded" >> $GITHUB_STEP_SUMMARY + fi From e735cec00dbb0090f5daaea4d2f1000e3b0683d1 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 12:29:24 +0200 Subject: [PATCH 13/15] Fix tests Signed-off-by: Benoit Donneaux --- .github/workflows/integrate.yml | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/integrate.yml b/.github/workflows/integrate.yml index 71abb22..991f671 100644 --- a/.github/workflows/integrate.yml +++ b/.github/workflows/integrate.yml @@ -30,10 +30,10 @@ jobs: - name: Verify FS id: verify run: | - cat < "${{ steps.call.outputs.mnt }}/content" + cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}"" + test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" continue-on-error: true - name: Cleanup @@ -45,8 +45,8 @@ jobs: - name: Proper exit run: | if [ ${{ steps.call.outcome }} != 'success' \ - -o steps.verify.outcome }} != 'success' \ - -o steps.cleanup.outcome }} != 'success' ] + -o ${{ steps.verify.outcome }} != 'success' \ + -o ${{ steps.cleanup.outcome }} != 'success' ] then echo ":x: Test failed" >> $GITHUB_STEP_SUMMARY exit 1 @@ -72,7 +72,7 @@ jobs: cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}"" + test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" continue-on-error: true - name: Cleanup @@ -84,8 +84,8 @@ jobs: - name: Proper exit run: | if [ ${{ steps.call.outcome }} != 'success' \ - -o steps.verify.outcome }} != 'success' \ - -o steps.cleanup.outcome }} != 'success' ] + -o ${{ steps.verify.outcome }} != 'success' \ + -o ${{ steps.cleanup.outcome }} != 'success' ] then echo ":x: Test failed" >> $GITHUB_STEP_SUMMARY exit 1 @@ -107,10 +107,10 @@ jobs: - name: Verify FS id: verify run: | - cat < "${{ steps.call.outputs.mnt }}/content" + cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}"" + test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" continue-on-error: true - name: Cleanup @@ -122,8 +122,8 @@ jobs: - name: Proper exit run: | if [ ${{ steps.call.outcome }} != 'success' \ - -o steps.verify.outcome }} != 'success' \ - -o steps.cleanup.outcome }} != 'success' ] + -o ${{ steps.verify.outcome }} != 'success' \ + -o ${{ steps.cleanup.outcome }} != 'success' ] then echo ":x: Test failed" >> $GITHUB_STEP_SUMMARY exit 1 From a5ae53bdb740a92ac8e9f0dc192d1962844cf462 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 12:31:29 +0200 Subject: [PATCH 14/15] Fix tests again Signed-off-by: Benoit Donneaux --- .github/workflows/integrate.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/integrate.yml b/.github/workflows/integrate.yml index 991f671..96c5f3a 100644 --- a/.github/workflows/integrate.yml +++ b/.github/workflows/integrate.yml @@ -33,7 +33,7 @@ jobs: cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" + [ $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" ] continue-on-error: true - name: Cleanup @@ -72,7 +72,7 @@ jobs: cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" + [ $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" ] continue-on-error: true - name: Cleanup @@ -110,7 +110,7 @@ jobs: cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - test $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" + [ $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" ] continue-on-error: true - name: Cleanup From 3c567577e4466bcc1b38772a1adad9ec3e480aa5 Mon Sep 17 00:00:00 2001 From: Benoit Donneaux Date: Thu, 6 Apr 2023 12:33:31 +0200 Subject: [PATCH 15/15] Fix tests with quoted string Signed-off-by: Benoit Donneaux --- .github/workflows/integrate.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/integrate.yml b/.github/workflows/integrate.yml index 96c5f3a..825cb8c 100644 --- a/.github/workflows/integrate.yml +++ b/.github/workflows/integrate.yml @@ -33,7 +33,7 @@ jobs: cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - [ $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" ] + test "$(cat "${{ steps.call.outputs.mnt }}/content")" = "${{ env.TEST_CONTENT }}" continue-on-error: true - name: Cleanup @@ -72,7 +72,7 @@ jobs: cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - [ $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" ] + test "$(cat "${{ steps.call.outputs.mnt }}/content")" = "${{ env.TEST_CONTENT }}" continue-on-error: true - name: Cleanup @@ -110,7 +110,7 @@ jobs: cat < "${{ steps.call.outputs.mnt }}/content" ${{ env.TEST_CONTENT }} EOF - [ $(cat "${{ steps.call.outputs.mnt }}/content") = "${{ env.TEST_CONTENT }}" ] + test "$(cat "${{ steps.call.outputs.mnt }}/content")" = "${{ env.TEST_CONTENT }}" continue-on-error: true - name: Cleanup