From 4bdbbedfb1eb693a3a266db1814c95cc7e6fe135 Mon Sep 17 00:00:00 2001 From: Archi Date: Sun, 1 Aug 2021 13:00:14 +0200 Subject: [PATCH] CI hardening against errors --- .github/workflows/docker-publish-latest.yml | 8 +++-- .github/workflows/docker-publish-main.yml | 8 +++-- .github/workflows/docker-publish-released.yml | 8 +++-- .github/workflows/publish.yml | 36 +++++++++++-------- 4 files changed, 37 insertions(+), 23 deletions(-) diff --git a/.github/workflows/docker-publish-latest.yml b/.github/workflows/docker-publish-latest.yml index 79632e9eb..5a7b331c2 100644 --- a/.github/workflows/docker-publish-latest.yml +++ b/.github/workflows/docker-publish-latest.yml @@ -38,9 +38,11 @@ jobs: - name: Prepare private key for signing shell: sh run: | - if [ -n "${ASF_PRIVATE_SNK-}" ]; then - echo "$ASF_PRIVATE_SNK" | base64 -d > "resources/ArchiSteamFarm.snk" - fi + set -eu + + if [ -n "${ASF_PRIVATE_SNK-}" ]; then + echo "$ASF_PRIVATE_SNK" | base64 -d > "resources/ArchiSteamFarm.snk" + fi - name: Prepare environment outputs shell: sh diff --git a/.github/workflows/docker-publish-main.yml b/.github/workflows/docker-publish-main.yml index 132f28d5b..d81d7267c 100644 --- a/.github/workflows/docker-publish-main.yml +++ b/.github/workflows/docker-publish-main.yml @@ -39,9 +39,11 @@ jobs: - name: Prepare private key for signing shell: sh run: | - if [ -n "${ASF_PRIVATE_SNK-}" ]; then - echo "$ASF_PRIVATE_SNK" | base64 -d > "resources/ArchiSteamFarm.snk" - fi + set -eu + + if [ -n "${ASF_PRIVATE_SNK-}" ]; then + echo "$ASF_PRIVATE_SNK" | base64 -d > "resources/ArchiSteamFarm.snk" + fi - name: Prepare environment outputs shell: sh diff --git a/.github/workflows/docker-publish-released.yml b/.github/workflows/docker-publish-released.yml index dfa339d00..092fd666e 100644 --- a/.github/workflows/docker-publish-released.yml +++ b/.github/workflows/docker-publish-released.yml @@ -39,9 +39,11 @@ jobs: - name: Prepare private key for signing shell: sh run: | - if [ -n "${ASF_PRIVATE_SNK-}" ]; then - echo "$ASF_PRIVATE_SNK" | base64 -d > "resources/ArchiSteamFarm.snk" - fi + set -eu + + if [ -n "${ASF_PRIVATE_SNK-}" ]; then + echo "$ASF_PRIVATE_SNK" | base64 -d > "resources/ArchiSteamFarm.snk" + fi - name: Prepare environment outputs shell: sh diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index fc06f363f..b7c05df43 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -59,32 +59,40 @@ jobs: if: startsWith(matrix.os, 'macos-') || startsWith(matrix.os, 'ubuntu-') shell: sh run: | - if [ -n "${ASF_PRIVATE_SNK-}" ]; then - echo "$ASF_PRIVATE_SNK" | base64 -d > "resources/ArchiSteamFarm.snk" - fi + set -eu + + if [ -n "${ASF_PRIVATE_SNK-}" ]; then + echo "$ASF_PRIVATE_SNK" | base64 -d > "resources/ArchiSteamFarm.snk" + fi - name: Prepare private key for signing on Windows if: startsWith(matrix.os, 'windows-') shell: pwsh run: | - if (Test-Path env:ASF_PRIVATE_SNK) { - echo "$env:ASF_PRIVATE_SNK" > "resources\ArchiSteamFarm.snk" + Set-StrictMode -Version Latest + $ErrorActionPreference = 'Stop' + $ProgressPreference = 'SilentlyContinue' - certutil -f -decode "resources\ArchiSteamFarm.snk" "resources\ArchiSteamFarm.snk" + if (Test-Path env:ASF_PRIVATE_SNK) { + echo "$env:ASF_PRIVATE_SNK" > "resources\ArchiSteamFarm.snk" - if ($LastExitCode -ne 0) { - throw "Last command failed." - } - } + certutil -f -decode "resources\ArchiSteamFarm.snk" "resources\ArchiSteamFarm.snk" + + if ($LastExitCode -ne 0) { + throw "Last command failed." + } + } - name: Prepare ArchiSteamFarm.OfficialPlugins.SteamTokenDumper on Unix if: startsWith(matrix.os, 'macos-') || startsWith(matrix.os, 'ubuntu-') shell: sh run: | - if [ -n "${STEAM_TOKEN_DUMPER_TOKEN-}" ] && [ -f "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs" ]; then - sed "s/STEAM_TOKEN_DUMPER_TOKEN/${STEAM_TOKEN_DUMPER_TOKEN}/g" "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs" > "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs.new" - mv "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs.new" "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs" - fi + set -eu + + if [ -n "${STEAM_TOKEN_DUMPER_TOKEN-}" ] && [ -f "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs" ]; then + sed "s/STEAM_TOKEN_DUMPER_TOKEN/${STEAM_TOKEN_DUMPER_TOKEN}/g" "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs" > "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs.new" + mv "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs.new" "${STEAM_TOKEN_DUMPER_NAME}/SharedInfo.cs" + fi - name: Prepare ArchiSteamFarm.OfficialPlugins.SteamTokenDumper on Windows if: startsWith(matrix.os, 'windows-')