From 7d25bbafdfb833689a4e8d045005689c38b9bc56 Mon Sep 17 00:00:00 2001 From: Pavel Sviderski Date: Thu, 6 Feb 2025 13:51:15 +1000 Subject: [PATCH] fix: goreleaser format for homebrew --- .goreleaser.yaml | 11 ++++++++--- scripts/install.sh | 10 +++++----- scripts/install_cli.sh | 6 +++--- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index c3ec3983..71afd9de 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -40,7 +40,9 @@ archives: - id: uncloud builds: - uncloud - format: gz + formats: + # gz is not compatible with homebrew releases, so we use tar.gz + - tar.gz name_template: >- {{ .Binary }}_ {{- if eq .Os "darwin"}}macos @@ -49,14 +51,16 @@ archives: # use zip for windows archives format_overrides: - goos: windows - format: zip + formats: + - zip files: - none* - id: uncloudd builds: - uncloudd - format: gz + formats: + - tar.gz name_template: "{{ .Binary }}_{{ .Os }}_{{ .Arch }}" files: - none* @@ -79,6 +83,7 @@ brews: - uncloud install: | bin.install "uncloud" + bin.install_symlink "uncloud" => "uc" skip_upload: false repository: owner: psviderski diff --git a/scripts/install.sh b/scripts/install.sh index ea4be60f..a31e4ca3 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -112,17 +112,17 @@ install_uncloud_binaries() { local uncloudd_url if [ "${UNCLOUD_VERSION}" == "latest" ]; then - uncloudd_url="${UNCLOUD_GITHUB_URL}/releases/latest/download/uncloudd_linux_${file_arch}.gz" + uncloudd_url="${UNCLOUD_GITHUB_URL}/releases/latest/download/uncloudd_linux_${file_arch}.tar.gz" else - uncloudd_url="${UNCLOUD_GITHUB_URL}/releases/download/${UNCLOUD_VERSION}/uncloudd_linux_${file_arch}.gz" + uncloudd_url="${UNCLOUD_GITHUB_URL}/releases/download/${UNCLOUD_VERSION}/uncloudd_linux_${file_arch}.tar.gz" fi - local uncloudd_download_path="${tmp_dir}/uncloudd.gz" + local uncloudd_download_path="${tmp_dir}/uncloudd.tar.gz" log "⏳ Downloading uncloudd binary: ${uncloudd_url}" if ! curl -fsSL -o "${uncloudd_download_path}" "${uncloudd_url}"; then error "Failed to download uncloudd binary." fi - gzip -d "${uncloudd_download_path}" + tar -xf "${uncloudd_download_path}" if ! install "${uncloudd_download_path%.gz}" "${uncloudd_install_path}"; then error "Failed to install uncloud binary to ${uncloudd_install_path}" fi @@ -196,7 +196,7 @@ install_corrosion() { if ! curl -fsSL -o "${corrosion_download_path}" "${corrosion_url}"; then error "Failed to download uncloud-corrosion binary." fi - tar -xzf "${corrosion_download_path}" -C "${tmp_dir}" + tar -xf "${corrosion_download_path}" -C "${tmp_dir}" if ! install "${tmp_dir}/corrosion" "${corrosion_install_path}"; then error "Failed to install uncloud-corrosion binary to ${corrosion_install_path}" fi diff --git a/scripts/install_cli.sh b/scripts/install_cli.sh index ca9a4fc7..f094d71b 100755 --- a/scripts/install_cli.sh +++ b/scripts/install_cli.sh @@ -64,7 +64,7 @@ esac if [ "$VERSION" = "latest" ]; then VERSION=$(latest_version) fi -BINARY_NAME="uncloud_${BINARY_OS}_${BINARY_ARCH}.gz" +BINARY_NAME="uncloud_${BINARY_OS}_${BINARY_ARCH}.tar.gz" BINARY_URL="https://github.com/${GITHUB_REPO}/releases/download/${VERSION}/${BINARY_NAME}" CHECKSUM_URL="https://github.com/${GITHUB_REPO}/releases/download/$VERSION/checksums.txt" @@ -89,14 +89,14 @@ cd "$TMP_DIR" #echo "Checksum is valid." # Decompress and install the binary. -gzip -d "${BINARY_NAME}" +tar -xf "${BINARY_NAME}" if [ -z "${SUDO}" ]; then echo "Installing uncloud binary to ${INSTALL_DIR}" else echo "Installing uncloud binary to ${INSTALL_DIR} using sudo. You may be prompted for your password." fi -if ! $SUDO install "${BINARY_NAME%.gz}" "${INSTALL_DIR}/uncloud"; then +if ! $SUDO install "${BINARY_NAME%.tar.gz}" "${INSTALL_DIR}/uncloud"; then echo "Failed to install uncloud binary to ${INSTALL_DIR}" print_manual_install exit 1