From 6d5aff5325635ce14945184bfb64a06e333df53a Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 11 May 2026 11:39:38 -0700 Subject: [PATCH 01/11] build: add Linux arm64 to goreleaser build targets Co-Authored-By: Claude --- .goreleaser.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.goreleaser.yml b/.goreleaser.yml index 35f5c8ca..27dd1d33 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -32,6 +32,10 @@ builds: - windows goarch: - amd64 + - arm64 + ignore: + - goos: windows + goarch: arm64 - id: slack-macos binary: bin/slack @@ -74,6 +78,8 @@ archives: {{- .Env.BUILD_VERSION }}_ {{- if eq .Os "darwin" -}} macOS_{{ if eq .Arch "all" }}64-bit{{ else }}{{ .Arch }}{{ end }} + {{- else if eq .Os "linux" -}} + linux_{{ .Arch }} {{- else -}} {{ .Os }}_{{ if eq .Arch "amd64" }}64-bit{{ else }}{{ .Arch }}{{ end }} {{- end }} From 3e8170642061abeb281d6f800c46783a7e4bae16 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 11 May 2026 11:40:34 -0700 Subject: [PATCH 02/11] feat: add Linux arm64 support to auto-update Co-Authored-By: Claude --- internal/update/cli_autoupdate.go | 9 ++++++++- internal/update/cli_autoupdate_test.go | 22 ++++++++++++++++++++-- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/internal/update/cli_autoupdate.go b/internal/update/cli_autoupdate.go index 0279a213..702eb0b8 100644 --- a/internal/update/cli_autoupdate.go +++ b/internal/update/cli_autoupdate.go @@ -263,7 +263,14 @@ func getUpdateFileName(version, operatingSys, architecture string) (filename str filename = fmt.Sprintf("slack_cli_%s_macOS_64-bit.zip", version) } case "linux": - filename = fmt.Sprintf("slack_cli_%s_linux_64-bit.tar.gz", version) + switch architecture { + case "amd64": + filename = fmt.Sprintf("slack_cli_%s_linux_amd64.tar.gz", version) + case "arm64": + filename = fmt.Sprintf("slack_cli_%s_linux_arm64.tar.gz", version) + default: + filename = fmt.Sprintf("slack_cli_%s_linux_64-bit.tar.gz", version) + } case "windows": filename = fmt.Sprintf("slack_cli_%s_windows_64-bit.zip", version) default: diff --git a/internal/update/cli_autoupdate_test.go b/internal/update/cli_autoupdate_test.go index 0b16b186..db2af852 100644 --- a/internal/update/cli_autoupdate_test.go +++ b/internal/update/cli_autoupdate_test.go @@ -68,13 +68,31 @@ func Test_CLI_getUpdateFileName(t *testing.T) { version: "3.4.5", operatingSystem: "linux", architecture: "amd64", - expectedFilename: "slack_cli_3.4.5_linux_64-bit.tar.gz", + expectedFilename: "slack_cli_3.4.5_linux_amd64.tar.gz", }, "linux development x86_64": { version: "3.4.5-6-badaabad", operatingSystem: "linux", architecture: "amd64", - expectedFilename: "slack_cli_3.4.5-6-badaabad_linux_64-bit.tar.gz", + expectedFilename: "slack_cli_3.4.5-6-badaabad_linux_amd64.tar.gz", + }, + "linux production arm64": { + version: "3.4.5", + operatingSystem: "linux", + architecture: "arm64", + expectedFilename: "slack_cli_3.4.5_linux_arm64.tar.gz", + }, + "linux development arm64": { + version: "3.4.5-6-badaabad", + operatingSystem: "linux", + architecture: "arm64", + expectedFilename: "slack_cli_3.4.5-6-badaabad_linux_arm64.tar.gz", + }, + "linux production unknown arch fallback": { + version: "3.4.5", + operatingSystem: "linux", + architecture: "riscv64", + expectedFilename: "slack_cli_3.4.5_linux_64-bit.tar.gz", }, "windows production x86_64": { version: "3.4.5", From 837c098a93945e80a13cd55106652b6d2f6bbd6f Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 11 May 2026 11:41:25 -0700 Subject: [PATCH 03/11] feat: detect Linux architecture in install scripts Co-Authored-By: Claude --- scripts/install-dev.sh | 16 +++++++++++++++- scripts/install.sh | 16 +++++++++++++++- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/scripts/install-dev.sh b/scripts/install-dev.sh index 0b1b1e3a..b90c6514 100755 --- a/scripts/install-dev.sh +++ b/scripts/install-dev.sh @@ -144,7 +144,21 @@ install_slack_cli() { esac fi elif [ "$(expr substr "$(uname -s)" 1 5)" == "Linux" ]; then - slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_DEV_VERSION}_linux_64-bit.tar.gz" + if version_lt "$SLACK_CLI_DEV_VERSION" "4.1.0"; then + slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_DEV_VERSION}_linux_64-bit.tar.gz" + else + case "$(uname -m)" in + x86_64) + slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_DEV_VERSION}_linux_amd64.tar.gz" + ;; + aarch64 | arm64) + slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_DEV_VERSION}_linux_arm64.tar.gz" + ;; + *) + slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_DEV_VERSION}_linux_64-bit.tar.gz" + ;; + esac + fi else echo "🛑 Error: This installer is only supported on Linux and macOS" echo "🔖 Try using a different installation method:" diff --git a/scripts/install.sh b/scripts/install.sh index be6d05ff..2bdabb5a 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -146,7 +146,21 @@ install_slack_cli() { esac fi elif [ "$(expr substr "$(uname -s)" 1 5)" == "Linux" ]; then - slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_VERSION}_linux_64-bit.tar.gz" + if version_lt "$SLACK_CLI_VERSION" "4.1.0"; then + slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_VERSION}_linux_64-bit.tar.gz" + else + case "$(uname -m)" in + x86_64) + slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_VERSION}_linux_amd64.tar.gz" + ;; + aarch64 | arm64) + slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_VERSION}_linux_arm64.tar.gz" + ;; + *) + slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_VERSION}_linux_64-bit.tar.gz" + ;; + esac + fi else echo "🛑 Error: This installer is only supported on Linux and macOS" echo "🔖 Try using a different installation method:" From 6508bf89b075b00157768ee1f4537fb78db386d0 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 11 May 2026 11:42:11 -0700 Subject: [PATCH 04/11] build: produce Linux arm64 and amd64 archives Co-Authored-By: Claude --- scripts/archive-test.sh | 6 ++++++ scripts/archive.sh | 30 ++++++++++++++++++++++-------- 2 files changed, 28 insertions(+), 8 deletions(-) diff --git a/scripts/archive-test.sh b/scripts/archive-test.sh index 59b7c146..3da5b082 100755 --- a/scripts/archive-test.sh +++ b/scripts/archive-test.sh @@ -58,8 +58,14 @@ main() { check_zip "$DIST_DIR/slack_cli_${VERSION}_macos.zip" echo "Checking Linux archives" + check_tar "$DIST_DIR/slack_cli_${VERSION}_linux_amd64.tar.gz" + check_tar "$DIST_DIR/slack_cli_${VERSION}_linux_arm64.tar.gz" check_tar "$DIST_DIR/slack_cli_${VERSION}_linux_64-bit.tar.gz" + check_tar "$DIST_DIR/slack_cli_dev_linux_amd64.tar.gz" + check_tar "$DIST_DIR/slack_cli_dev_linux_arm64.tar.gz" check_tar "$DIST_DIR/slack_cli_dev_linux_64-bit.tar.gz" + check_tar "$DIST_DIR/slack_cli_latest_linux_amd64.tar.gz" + check_tar "$DIST_DIR/slack_cli_latest_linux_arm64.tar.gz" check_tar "$DIST_DIR/slack_cli_latest_linux_64-bit.tar.gz" echo "Checking Windows archives" diff --git a/scripts/archive.sh b/scripts/archive.sh index e9dad671..aabf6af2 100755 --- a/scripts/archive.sh +++ b/scripts/archive.sh @@ -81,16 +81,30 @@ main() { echo "Creating Linux archives" - linux_targz_file_path_version="$DIST_DIR/slack_cli_${VERSION}_linux_64-bit.tar.gz" - linux_targz_file_path_dev="$DIST_DIR/slack_cli_dev_linux_64-bit.tar.gz" - linux_targz_file_path_latest="$DIST_DIR/slack_cli_latest_linux_64-bit.tar.gz" - - echo "-> Creating Linux development tar.gz file" - cp "$linux_targz_file_path_version" "$linux_targz_file_path_dev" + linux_targz_file_path_version_amd64="$DIST_DIR/slack_cli_${VERSION}_linux_amd64.tar.gz" + linux_targz_file_path_version_arm64="$DIST_DIR/slack_cli_${VERSION}_linux_arm64.tar.gz" + linux_targz_file_path_version_64bit="$DIST_DIR/slack_cli_${VERSION}_linux_64-bit.tar.gz" + linux_targz_file_path_dev_amd64="$DIST_DIR/slack_cli_dev_linux_amd64.tar.gz" + linux_targz_file_path_dev_arm64="$DIST_DIR/slack_cli_dev_linux_arm64.tar.gz" + linux_targz_file_path_dev_64bit="$DIST_DIR/slack_cli_dev_linux_64-bit.tar.gz" + linux_targz_file_path_latest_amd64="$DIST_DIR/slack_cli_latest_linux_amd64.tar.gz" + linux_targz_file_path_latest_arm64="$DIST_DIR/slack_cli_latest_linux_arm64.tar.gz" + linux_targz_file_path_latest_64bit="$DIST_DIR/slack_cli_latest_linux_64-bit.tar.gz" + + echo "-> Creating Linux 64-bit fallback (amd64 copy)" + cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_version_64bit" + ls -l "$DIST_DIR"/*_"$VERSION"_linux* + + echo "-> Creating Linux development tar.gz files" + cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_dev_amd64" + cp "$linux_targz_file_path_version_arm64" "$linux_targz_file_path_dev_arm64" + cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_dev_64bit" ls -l "$DIST_DIR"/*dev_linux* - echo "-> Creating Linux production tar.gz file" - cp "$linux_targz_file_path_version" "$linux_targz_file_path_latest" + echo "-> Creating Linux latest tar.gz files" + cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_latest_amd64" + cp "$linux_targz_file_path_version_arm64" "$linux_targz_file_path_latest_arm64" + cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_latest_64bit" ls -l "$DIST_DIR"/*latest_linux* echo "Creating Windows archives" From 6ba84a46ae8678c8f69a792eca42c81e2999bae9 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 11 May 2026 11:42:32 -0700 Subject: [PATCH 05/11] ci: update S3 upload pattern for Linux arm64 feature builds Co-Authored-By: Claude --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index c0b825b9..9163c100 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -647,7 +647,7 @@ workflows: <<: *filters-tag-triggered-workflow-job name: upload-to-s3-for-install-linux-feature-build s3-target-path: slack-cli - file-name: "slack_cli_*feature_linux_64-bit.tar.gz" + file-name: "slack_cli_*feature_linux_*.tar.gz" requires: - create-github-release-and-artifacts context: slack-cli-release From 7698917ba6e055694ba6ed326a6258507cba43f7 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 18 May 2026 11:18:51 -0700 Subject: [PATCH 06/11] chore: order Linux archives consistently with macOS in scripts Co-Authored-By: Claude --- scripts/archive-test.sh | 6 +++--- scripts/archive.sh | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/scripts/archive-test.sh b/scripts/archive-test.sh index 3da5b082..7f66899e 100755 --- a/scripts/archive-test.sh +++ b/scripts/archive-test.sh @@ -58,15 +58,15 @@ main() { check_zip "$DIST_DIR/slack_cli_${VERSION}_macos.zip" echo "Checking Linux archives" + check_tar "$DIST_DIR/slack_cli_${VERSION}_linux_64-bit.tar.gz" check_tar "$DIST_DIR/slack_cli_${VERSION}_linux_amd64.tar.gz" check_tar "$DIST_DIR/slack_cli_${VERSION}_linux_arm64.tar.gz" - check_tar "$DIST_DIR/slack_cli_${VERSION}_linux_64-bit.tar.gz" + check_tar "$DIST_DIR/slack_cli_dev_linux_64-bit.tar.gz" check_tar "$DIST_DIR/slack_cli_dev_linux_amd64.tar.gz" check_tar "$DIST_DIR/slack_cli_dev_linux_arm64.tar.gz" - check_tar "$DIST_DIR/slack_cli_dev_linux_64-bit.tar.gz" + check_tar "$DIST_DIR/slack_cli_latest_linux_64-bit.tar.gz" check_tar "$DIST_DIR/slack_cli_latest_linux_amd64.tar.gz" check_tar "$DIST_DIR/slack_cli_latest_linux_arm64.tar.gz" - check_tar "$DIST_DIR/slack_cli_latest_linux_64-bit.tar.gz" echo "Checking Windows archives" check_exe "$DIST_DIR/slack_cli_${VERSION}_windows_64-bit.zip" diff --git a/scripts/archive.sh b/scripts/archive.sh index aabf6af2..7ac5c1d1 100755 --- a/scripts/archive.sh +++ b/scripts/archive.sh @@ -81,30 +81,30 @@ main() { echo "Creating Linux archives" + linux_targz_file_path_version_64bit="$DIST_DIR/slack_cli_${VERSION}_linux_64-bit.tar.gz" linux_targz_file_path_version_amd64="$DIST_DIR/slack_cli_${VERSION}_linux_amd64.tar.gz" linux_targz_file_path_version_arm64="$DIST_DIR/slack_cli_${VERSION}_linux_arm64.tar.gz" - linux_targz_file_path_version_64bit="$DIST_DIR/slack_cli_${VERSION}_linux_64-bit.tar.gz" + linux_targz_file_path_dev_64bit="$DIST_DIR/slack_cli_dev_linux_64-bit.tar.gz" linux_targz_file_path_dev_amd64="$DIST_DIR/slack_cli_dev_linux_amd64.tar.gz" linux_targz_file_path_dev_arm64="$DIST_DIR/slack_cli_dev_linux_arm64.tar.gz" - linux_targz_file_path_dev_64bit="$DIST_DIR/slack_cli_dev_linux_64-bit.tar.gz" + linux_targz_file_path_latest_64bit="$DIST_DIR/slack_cli_latest_linux_64-bit.tar.gz" linux_targz_file_path_latest_amd64="$DIST_DIR/slack_cli_latest_linux_amd64.tar.gz" linux_targz_file_path_latest_arm64="$DIST_DIR/slack_cli_latest_linux_arm64.tar.gz" - linux_targz_file_path_latest_64bit="$DIST_DIR/slack_cli_latest_linux_64-bit.tar.gz" echo "-> Creating Linux 64-bit fallback (amd64 copy)" cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_version_64bit" ls -l "$DIST_DIR"/*_"$VERSION"_linux* echo "-> Creating Linux development tar.gz files" + cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_dev_64bit" cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_dev_amd64" cp "$linux_targz_file_path_version_arm64" "$linux_targz_file_path_dev_arm64" - cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_dev_64bit" ls -l "$DIST_DIR"/*dev_linux* echo "-> Creating Linux latest tar.gz files" + cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_latest_64bit" cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_latest_amd64" cp "$linux_targz_file_path_version_arm64" "$linux_targz_file_path_latest_arm64" - cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_latest_64bit" ls -l "$DIST_DIR"/*latest_linux* echo "Creating Windows archives" From c6966ef83f5b66e224e7ef665461d23f2bb38653 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 18 May 2026 11:25:29 -0700 Subject: [PATCH 07/11] chore: fix echo message casing in archive script Co-Authored-By: Claude --- scripts/archive.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/archive.sh b/scripts/archive.sh index 7ac5c1d1..cf4e9506 100755 --- a/scripts/archive.sh +++ b/scripts/archive.sh @@ -91,7 +91,7 @@ main() { linux_targz_file_path_latest_amd64="$DIST_DIR/slack_cli_latest_linux_amd64.tar.gz" linux_targz_file_path_latest_arm64="$DIST_DIR/slack_cli_latest_linux_arm64.tar.gz" - echo "-> Creating Linux 64-bit fallback (amd64 copy)" + echo "-> Creating Linux fallback tar.gz files" cp "$linux_targz_file_path_version_amd64" "$linux_targz_file_path_version_64bit" ls -l "$DIST_DIR"/*_"$VERSION"_linux* From 9a2e85ee491652bf9be3cc55e0f16ff75a6420e7 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 18 May 2026 11:32:25 -0700 Subject: [PATCH 08/11] fix: bump Linux arch-detection version gate to 4.2.0 4.1.0 is already released without arch-specific Linux archives, so the gate needs to target 4.2.0 when they'll first be available. Co-Authored-By: Claude --- scripts/install-dev.sh | 2 +- scripts/install.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/install-dev.sh b/scripts/install-dev.sh index b90c6514..acf1ca5d 100755 --- a/scripts/install-dev.sh +++ b/scripts/install-dev.sh @@ -144,7 +144,7 @@ install_slack_cli() { esac fi elif [ "$(expr substr "$(uname -s)" 1 5)" == "Linux" ]; then - if version_lt "$SLACK_CLI_DEV_VERSION" "4.1.0"; then + if version_lt "$SLACK_CLI_DEV_VERSION" "4.2.0"; then slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_DEV_VERSION}_linux_64-bit.tar.gz" else case "$(uname -m)" in diff --git a/scripts/install.sh b/scripts/install.sh index 2bdabb5a..d2fc73a2 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -146,7 +146,7 @@ install_slack_cli() { esac fi elif [ "$(expr substr "$(uname -s)" 1 5)" == "Linux" ]; then - if version_lt "$SLACK_CLI_VERSION" "4.1.0"; then + if version_lt "$SLACK_CLI_VERSION" "4.2.0"; then slack_cli_url="https://downloads.slack-edge.com/slack-cli/slack_cli_${SLACK_CLI_VERSION}_linux_64-bit.tar.gz" else case "$(uname -m)" in From 085142449e726ae9d1d60f119a7808f17ae3a9d6 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 18 May 2026 11:52:34 -0700 Subject: [PATCH 09/11] ci: run install tests in parallel on macOS and Linux Split install tests into a separate matrix job that runs in parallel with lints and unit tests on both macOS and Ubuntu. Co-Authored-By: Claude --- .github/workflows/tests.yml | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e865c29a..20138ffc 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -25,8 +25,6 @@ jobs: run: go tool golangci-lint run --timeout=5m - name: Unit Tests run: make test - - name: Install Tests - run: make test-install - name: Upload coverage to Codecov uses: codecov/codecov-action@57e3a136b779b570ffcdbf80b3bdc90e7fab3de2 # v6.0.0 with: @@ -34,6 +32,24 @@ jobs: files: ./coverage.out fail_ci_if_error: false + install-tests: + name: Install Tests (${{ matrix.os }}) + runs-on: ${{ matrix.os }} + permissions: + contents: read + strategy: + fail-fast: false + matrix: + os: + - macos-latest + - ubuntu-latest + steps: + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + with: + persist-credentials: false + - name: Install Tests + run: make test-install + # Monitor code coverage and TODO/FIXME-type comments health-score: name: Health Score From 473d9f60ff1d144f9b216612e3dbb6ad2fc1c40c Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 18 May 2026 13:07:03 -0700 Subject: [PATCH 10/11] ci: switch lint-test and health-score jobs to ubuntu-latest macOS runners are slower and more expensive with no benefit for linting, unit tests, or health score reporting. Co-Authored-By: Claude --- .github/workflows/tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 20138ffc..8bd57938 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,7 +9,7 @@ on: jobs: lint-test: name: Lints and Tests - runs-on: macos-latest + runs-on: ubuntu-latest permissions: contents: read steps: @@ -54,7 +54,7 @@ jobs: health-score: name: Health Score needs: lint-test - runs-on: macos-latest + runs-on: ubuntu-latest permissions: checks: write contents: read From 8990f22e51dbce373fe6ed1f44842baa79772809 Mon Sep 17 00:00:00 2001 From: Eden Zimbelman Date: Mon, 18 May 2026 13:38:31 -0700 Subject: [PATCH 11/11] ci: revert lint-test and health-score back to macos-latest Co-Authored-By: Claude --- .github/workflows/tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 8bd57938..20138ffc 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,7 +9,7 @@ on: jobs: lint-test: name: Lints and Tests - runs-on: ubuntu-latest + runs-on: macos-latest permissions: contents: read steps: @@ -54,7 +54,7 @@ jobs: health-score: name: Health Score needs: lint-test - runs-on: ubuntu-latest + runs-on: macos-latest permissions: checks: write contents: read