From 808056366a5220a640764a1d8b4eeb4a1cee3945 Mon Sep 17 00:00:00 2001 From: Nathan Cochran Date: Tue, 16 Sep 2025 14:28:43 -0400 Subject: [PATCH 1/8] Publish to packagecloud --- .github/workflows/release.yml | 5 +++++ .goreleaser.yaml | 20 ++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 546a924b..ae3ebf82 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -22,6 +22,9 @@ jobs: with: go-version-file: 'go.mod' + - name: Install package_cloud gem + run: sudo gem install package_cloud --no-doc + - name: Run GoReleaser uses: goreleaser/goreleaser-action@v6 with: @@ -37,3 +40,5 @@ jobs: AWS_ACCESS_KEY_ID: ${{ secrets.ORG_AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.ORG_AWS_SECRET_ACCESS_KEY }} AWS_REGION: us-east-1 + # PackageCloud credentials for publishing Linux packages + PACKAGECLOUD_TOKEN: ${{ secrets.PACKAGECLOUD_TOKEN }} diff --git a/.goreleaser.yaml b/.goreleaser.yaml index a81e90bf..0613abf8 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -146,6 +146,26 @@ changelog: - "^specs:" # TODO: Other files that should be ignored +# PackageCloud publisher for Linux packages +publishers: + # Upload all Linux packages (deb, rpm, apk) to PackageCloud + - name: packagecloud + # Skip upload if packagecloud credentials are not set + disable: '{{ eq .Env.PACKAGECLOUD_TOKEN "" }}' + ids: + - packages # Only publish nfpms packages (Linux packages) + cmd: >- + package_cloud push timescale/tiger-cli/{{- + if contains .ArtifactPath ".deb" -}} + any/any + {{- else if contains .ArtifactPath ".rpm" -}} + rpm_any/rpm_any + {{- else if contains .ArtifactPath ".apk" -}} + alpine_any/alpine_any + {{- end }} {{ .ArtifactPath }} + env: + - PACKAGECLOUD_TOKEN={{ .Env.PACKAGECLOUD_TOKEN }} + # Release configuration release: github: From 2d34b80deea969f506976393cf7d6a2c2505ac92 Mon Sep 17 00:00:00 2001 From: Nathan Cochran Date: Tue, 16 Sep 2025 16:15:48 -0400 Subject: [PATCH 2/8] Remove Alpine Linux packages, as not accepted by packagecloud --- .goreleaser.yaml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index 0613abf8..c55a5187 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -65,7 +65,6 @@ nfpms: formats: - deb - rpm - - apk bindir: /usr/bin priority: extra file_name_template: "{{ .ConventionalFileName }}" @@ -148,7 +147,7 @@ changelog: # PackageCloud publisher for Linux packages publishers: - # Upload all Linux packages (deb, rpm, apk) to PackageCloud + # Upload all Linux packages (deb, rpm) to PackageCloud - name: packagecloud # Skip upload if packagecloud credentials are not set disable: '{{ eq .Env.PACKAGECLOUD_TOKEN "" }}' @@ -160,8 +159,6 @@ publishers: any/any {{- else if contains .ArtifactPath ".rpm" -}} rpm_any/rpm_any - {{- else if contains .ArtifactPath ".apk" -}} - alpine_any/alpine_any {{- end }} {{ .ArtifactPath }} env: - PACKAGECLOUD_TOKEN={{ .Env.PACKAGECLOUD_TOKEN }} From 1d74ab6ad34997ace038b408cd510ae978d4b290 Mon Sep 17 00:00:00 2001 From: Nathan Cochran Date: Tue, 16 Sep 2025 17:35:29 -0400 Subject: [PATCH 3/8] Update README.md with instructions for Linux packages --- README.md | 31 ++++++++++++++++++++++--------- 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 999ebd7d..1fbbe9fc 100644 --- a/README.md +++ b/README.md @@ -46,18 +46,31 @@ brew install timescale/tap/tiger-cli go install github.com/timescale/tiger-cli/cmd/tiger@latest ``` -### Direct binary download +### Debian/Ubuntu (APT) ```bash -curl -LO https://github.com/timescale/tiger-cli/releases/latest/download/tiger-cli_$(uname -s)_$(uname -m).tar.gz -tar -xzf tiger-cli_$(uname -s)_$(uname -m).tar.gz -chmod +x tiger -mkdir -p ~/.local/bin && mv tiger ~/.local/bin/ +# Add PackageCloud repository +curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script.deb.sh | sudo bash + +# Install tiger-cli +sudo apt-get install tiger-cli +``` + +### Red Hat/CentOS (YUM) +```bash +# Add PackageCloud repository +curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script.rpm.sh | sudo bash + +# Install tiger-cli +sudo yum install tiger-cli ``` -### Debian/Ubuntu package +### Fedora (DNF) ```bash -curl -LO https://github.com/timescale/tiger-cli/releases/latest/download/tiger-cli_linux_$(dpkg --print-architecture).deb -sudo dpkg -i tiger-cli_linux_$(dpkg --print-architecture).deb +# Add PackageCloud repository +curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script.rpm.sh | sudo bash + +# Install tiger-cli +sudo dnf install tiger-cli ``` ## Usage @@ -155,7 +168,7 @@ go test ./internal/tiger/cmd -v -run Integration #### What Integration Tests Cover - **Authentication lifecycle**: Login with credentials, verify authentication, logout -- **Service management**: Create, list, describe, and delete database services +- **Service management**: Create, list, describe, and delete database services - **Password management**: Update service passwords with keychain storage - **Database connectivity**: Generate connection strings and execute psql commands - **Output formats**: Validate JSON, YAML, and table output formats From fba22683dd33b49858c45a6bf727d795dea42e17 Mon Sep 17 00:00:00 2001 From: Nathan Cochran Date: Tue, 16 Sep 2025 20:33:38 -0400 Subject: [PATCH 4/8] Consolidate Red Hat and Fedora instructions --- README.md | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 1fbbe9fc..651d4281 100644 --- a/README.md +++ b/README.md @@ -46,7 +46,7 @@ brew install timescale/tap/tiger-cli go install github.com/timescale/tiger-cli/cmd/tiger@latest ``` -### Debian/Ubuntu (APT) +### Debian/Ubuntu ```bash # Add PackageCloud repository curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script.deb.sh | sudo bash @@ -55,7 +55,7 @@ curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script. sudo apt-get install tiger-cli ``` -### Red Hat/CentOS (YUM) +### Red Hat/CentOS/Fedora ```bash # Add PackageCloud repository curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script.rpm.sh | sudo bash @@ -64,15 +64,6 @@ curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script. sudo yum install tiger-cli ``` -### Fedora (DNF) -```bash -# Add PackageCloud repository -curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script.rpm.sh | sudo bash - -# Install tiger-cli -sudo dnf install tiger-cli -``` - ## Usage ### Global Configuration From d9ec5ae0f94a2bb5dc55dd211dd109af03ff769b Mon Sep 17 00:00:00 2001 From: Nathan Cochran Date: Tue, 16 Sep 2025 20:40:36 -0400 Subject: [PATCH 5/8] Update comment --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 651d4281..b91ddbb2 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ go install github.com/timescale/tiger-cli/cmd/tiger@latest ### Debian/Ubuntu ```bash -# Add PackageCloud repository +# Add repository curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script.deb.sh | sudo bash # Install tiger-cli @@ -57,7 +57,7 @@ sudo apt-get install tiger-cli ### Red Hat/CentOS/Fedora ```bash -# Add PackageCloud repository +# Add repository curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script.rpm.sh | sudo bash # Install tiger-cli From 089139cb53d3ce258adb0fc9a82de121a7eaf607 Mon Sep 17 00:00:00 2001 From: Nathan Cochran Date: Tue, 16 Sep 2025 20:58:32 -0400 Subject: [PATCH 6/8] Skip publishing to Packagecloud for prereleases --- .goreleaser.yaml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index c55a5187..f0621476 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -113,7 +113,7 @@ homebrew_casks: Command-line interface for managing TigerData Cloud Platform resources binary: tiger license: Apache-2.0 - skip_upload: auto + skip_upload: auto # Skips prerelease builds url: template: "https://tiger-cli-releases.s3.us-east-1.amazonaws.com/releases/{{ .Tag }}/{{ .ArtifactName }}" hooks: @@ -149,8 +149,7 @@ changelog: publishers: # Upload all Linux packages (deb, rpm) to PackageCloud - name: packagecloud - # Skip upload if packagecloud credentials are not set - disable: '{{ eq .Env.PACKAGECLOUD_TOKEN "" }}' + disable: '{{ ne .Prerelease "" }}' # Skip this step for pre-releases ids: - packages # Only publish nfpms packages (Linux packages) cmd: >- From c51918fb0ddd6e3108bd66cdc52b6e565d339b73 Mon Sep 17 00:00:00 2001 From: Nathan Cochran Date: Tue, 16 Sep 2025 21:03:15 -0400 Subject: [PATCH 7/8] Fix spelling in comment --- .goreleaser.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.goreleaser.yaml b/.goreleaser.yaml index f0621476..2b69d41c 100644 --- a/.goreleaser.yaml +++ b/.goreleaser.yaml @@ -92,7 +92,7 @@ blobs: region: us-east-1 directory: "install" extra_files_only: true - disable: '{{ ne .Prerelease "" }}' # Skip this step for pre-releases + disable: '{{ ne .Prerelease "" }}' # Skip this step for prereleases extra_files: - glob: ./latest.txt name_template: "latest.txt" @@ -149,7 +149,7 @@ changelog: publishers: # Upload all Linux packages (deb, rpm) to PackageCloud - name: packagecloud - disable: '{{ ne .Prerelease "" }}' # Skip this step for pre-releases + disable: '{{ ne .Prerelease "" }}' # Skip this step for prereleases ids: - packages # Only publish nfpms packages (Linux packages) cmd: >- From baf20a87bb3f37682e92ed1e7fe0b10a526596fa Mon Sep 17 00:00:00 2001 From: Nathan Cochran Date: Wed, 17 Sep 2025 11:54:29 -0400 Subject: [PATCH 8/8] Add link to manual repository installation instructions --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index b91ddbb2..1504d422 100644 --- a/README.md +++ b/README.md @@ -55,6 +55,8 @@ curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script. sudo apt-get install tiger-cli ``` +For manual repository installation instructions, see [here](https://packagecloud.io/timescale/tiger-cli/install#manual-deb). + ### Red Hat/CentOS/Fedora ```bash # Add repository @@ -64,6 +66,8 @@ curl -s https://packagecloud.io/install/repositories/timescale/tiger-cli/script. sudo yum install tiger-cli ``` +For manual repository installation instructions, see [here](https://packagecloud.io/timescale/tiger-cli/install#manual-rpm). + ## Usage ### Global Configuration