From 8f4bf5309a34ee2977bb1524772f3c4117389fe4 Mon Sep 17 00:00:00 2001 From: Fabio Wakim Trentini Date: Fri, 12 Jun 2026 15:48:28 -0300 Subject: [PATCH] fix(installer): point release URLs at RocketBus/iris + verify assets in CI MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The repo was renamed clickbus-iris → iris. The installer templates and user-facing links still hardcoded the old name, relying on GitHub's rename redirect (fragile — breaks if a new clickbus-iris repo is created). Point the install.sh / install.ps1 release API + download URLs, plus the footer/navbar/FAQ/legal-page references, directly at RocketBus/iris. Also add a "Verify assets are attached" step to release.yml. The v1.4.3 release lost its wheel after publish, which 404'd every `iris upgrade`; the new step fails the job if the wheel/tarball aren't on the release. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/release.yml | 19 +++++++++++++++++++ platform/lib/translations.ts | 6 +++--- platform/public/install.ps1.template | 4 ++-- platform/public/install.sh.template | 4 ++-- platform/src/app/faq/page.tsx | 2 +- platform/src/app/privacy/privacy.mdx | 8 ++++---- platform/src/app/terms/terms.mdx | 6 +++--- platform/src/components/blocks/footer.tsx | 2 +- platform/src/components/blocks/navbar.tsx | 2 +- 9 files changed, 36 insertions(+), 17 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 509122e..94699f3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -49,3 +49,22 @@ jobs: See [CHANGELOG.md](https://github.com/${{ github.repository }}/blob/main/CHANGELOG.md) for details." \ dist/*.whl dist/*.tar.gz + + - name: Verify assets are attached + env: + GH_TOKEN: ${{ github.token }} + run: | + # The installer pulls iris--py3-none-any.whl straight off the + # release. A release without that asset 404s every `iris upgrade`, so + # confirm both artifacts actually landed before we call it a release. + TAG="${GITHUB_REF#refs/tags/}" + VERSION="${TAG#v}" + assets=$(gh release view "$TAG" --json assets --jq '.assets[].name') + for want in "iris-${VERSION}-py3-none-any.whl" "iris-${VERSION}.tar.gz"; do + if ! printf '%s\n' "$assets" | grep -qx "$want"; then + echo "::error::Release $TAG is missing asset $want. Attached: ${assets:-}" + exit 1 + fi + done + echo "Verified assets on $TAG:" + printf '%s\n' "$assets" diff --git a/platform/lib/translations.ts b/platform/lib/translations.ts index 10157b7..c2e09bc 100644 --- a/platform/lib/translations.ts +++ b/platform/lib/translations.ts @@ -153,7 +153,7 @@ export const translations = { "The CLI is free and open. The cloud platform is in early access with usage-based pricing — contact us for details.", contributeTitle: "How can I contribute or report issues?", contributeAnswer: - "The project is on GitHub at RocketBus/clickbus-iris. Issues and PRs are welcome.", + "The project is on GitHub at RocketBus/iris. Issues and PRs are welcome.", }, }, setupLinked: { @@ -1512,7 +1512,7 @@ export const translations = { "O CLI é gratuito e aberto. A plataforma na nuvem está em acesso antecipado com preço por uso — entre em contato para mais detalhes.", contributeTitle: "Como posso contribuir ou reportar problemas?", contributeAnswer: - "O projeto está no GitHub em RocketBus/clickbus-iris. Issues e PRs são bem-vindos.", + "O projeto está no GitHub em RocketBus/iris. Issues e PRs são bem-vindos.", }, }, setupLinked: { @@ -2903,7 +2903,7 @@ export const translations = { "La CLI es gratuita y open source. La plataforma en la nube está en acceso anticipado con precio por uso — contáctanos para más detalles.", contributeTitle: "¿Cómo puedo contribuir o reportar problemas?", contributeAnswer: - "El proyecto está en GitHub en RocketBus/clickbus-iris. Issues y PRs son bienvenidos.", + "El proyecto está en GitHub en RocketBus/iris. Issues y PRs son bienvenidos.", }, }, footer: { diff --git a/platform/public/install.ps1.template b/platform/public/install.ps1.template index 8dffd4c..9a596d8 100644 --- a/platform/public/install.ps1.template +++ b/platform/public/install.ps1.template @@ -19,8 +19,8 @@ $ErrorActionPreference = "Stop" $IRIS_SERVER_URL = if ($env:IRIS_SERVER_URL) { $env:IRIS_SERVER_URL } else { "{{IRIS_SERVER_URL}}" } $VERSION = if ($env:IRIS_VERSION) { $env:IRIS_VERSION } else { "latest" } -$RELEASES_API = "https://api.github.com/repos/RocketBus/clickbus-iris/releases" -$RELEASES_DOWNLOAD = "https://github.com/RocketBus/clickbus-iris/releases/download" +$RELEASES_API = "https://api.github.com/repos/RocketBus/iris/releases" +$RELEASES_DOWNLOAD = "https://github.com/RocketBus/iris/releases/download" $MIN_PYTHON_MAJOR = 3 $MIN_PYTHON_MINOR = 11 diff --git a/platform/public/install.sh.template b/platform/public/install.sh.template index b99422b..16c6e20 100755 --- a/platform/public/install.sh.template +++ b/platform/public/install.sh.template @@ -20,8 +20,8 @@ set -e IRIS_SERVER_URL="${IRIS_SERVER_URL:-{{IRIS_SERVER_URL}}}" VERSION="${IRIS_VERSION:-latest}" -RELEASES_API="https://api.github.com/repos/RocketBus/clickbus-iris/releases" -RELEASES_DOWNLOAD="https://github.com/RocketBus/clickbus-iris/releases/download" +RELEASES_API="https://api.github.com/repos/RocketBus/iris/releases" +RELEASES_DOWNLOAD="https://github.com/RocketBus/iris/releases/download" MIN_PYTHON="3.11" INSTALL_DIR="${IRIS_HOME:-$HOME/.iris}" LOCAL_BIN="$HOME/.local/bin" diff --git a/platform/src/app/faq/page.tsx b/platform/src/app/faq/page.tsx index 84dbbed..c07cb93 100644 --- a/platform/src/app/faq/page.tsx +++ b/platform/src/app/faq/page.tsx @@ -86,7 +86,7 @@ const faqJsonLd = { name: "How can I contribute or report issues?", acceptedAnswer: { "@type": "Answer", - text: "The project lives on GitHub at RocketBus/clickbus-iris. Issues and PRs are welcome.", + text: "The project lives on GitHub at RocketBus/iris. Issues and PRs are welcome.", }, }, ], diff --git a/platform/src/app/privacy/privacy.mdx b/platform/src/app/privacy/privacy.mdx index f8c64b4..e3c1ff0 100644 --- a/platform/src/app/privacy/privacy.mdx +++ b/platform/src/app/privacy/privacy.mdx @@ -17,7 +17,7 @@ The hosted platform is access-restricted to authorized users. The CLI is open so ## 1. Data we collect -**The CLI (running locally) does not transmit data to the Controller by default.** It reads your Git repository's metadata (commits, diffs, PR information via the GitHub CLI) and produces a local report. Nothing leaves your machine unless you opt in to a hosted platform via `iris push` or to your own observability backend via `OTEL_EXPORTER_OTLP_ENDPOINT` (see [`docs/TELEMETRY.md`](https://github.com/RocketBus/clickbus-iris/blob/main/docs/TELEMETRY.md)). +**The CLI (running locally) does not transmit data to the Controller by default.** It reads your Git repository's metadata (commits, diffs, PR information via the GitHub CLI) and produces a local report. Nothing leaves your machine unless you opt in to a hosted platform via `iris push` or to your own observability backend via `OTEL_EXPORTER_OTLP_ENDPOINT` (see [`docs/TELEMETRY.md`](https://github.com/RocketBus/iris/blob/main/docs/TELEMETRY.md)). **The hosted platform** collects: @@ -79,7 +79,7 @@ To exercise any of these rights, contact the Controller at the privacy address a - All traffic is encrypted with TLS 1.2+ - Database access uses Supabase service-role keys, scoped to the server only - Strict Content-Security-Policy and HSTS headers (see `platform/next.config.ts`) -- Vulnerability reports follow [`SECURITY.md`](https://github.com/RocketBus/clickbus-iris/blob/main/SECURITY.md) +- Vulnerability reports follow [`SECURITY.md`](https://github.com/RocketBus/iris/blob/main/SECURITY.md) ## 8. Changes to this policy @@ -87,8 +87,8 @@ Material changes are announced via the platform UI and a commit to this file in ## 9. Contact -Use the privacy and DPO addresses listed at the top of this document. For vulnerability disclosure, see [`SECURITY.md`](https://github.com/RocketBus/clickbus-iris/blob/main/SECURITY.md). +Use the privacy and DPO addresses listed at the top of this document. For vulnerability disclosure, see [`SECURITY.md`](https://github.com/RocketBus/iris/blob/main/SECURITY.md). --- -*This template is published as part of the open-source repository at [github.com/RocketBus/clickbus-iris](https://github.com/RocketBus/clickbus-iris). The canonical version applicable to a specific hosted Service is rendered by that deployment with its own operator information.* +*This template is published as part of the open-source repository at [github.com/RocketBus/iris](https://github.com/RocketBus/iris). The canonical version applicable to a specific hosted Service is rendered by that deployment with its own operator information.* diff --git a/platform/src/app/terms/terms.mdx b/platform/src/app/terms/terms.mdx index ae2b442..cc16b5d 100644 --- a/platform/src/app/terms/terms.mdx +++ b/platform/src/app/terms/terms.mdx @@ -20,7 +20,7 @@ The hosted platform is access-restricted to users authorized by the Operator (ty You agree not to: -- Probe, scan, or test the security of the Service without written permission (see [`SECURITY.md`](https://github.com/RocketBus/clickbus-iris/blob/main/SECURITY.md) for the responsible disclosure process) +- Probe, scan, or test the security of the Service without written permission (see [`SECURITY.md`](https://github.com/RocketBus/iris/blob/main/SECURITY.md) for the responsible disclosure process) - Attempt to access workspaces or data you are not authorized to view - Submit content that is unlawful, infringes third-party rights, or contains malware - Interfere with the Service's operation or other users' access (rate-limit abuse, DoS, etc.) @@ -42,7 +42,7 @@ To the maximum extent permitted by law, the Operator's aggregate liability arisi The Service combines: -- **The CLI** (`iris/` and related source) — licensed under Apache 2.0; see [`LICENSE`](https://github.com/RocketBus/clickbus-iris/blob/main/LICENSE) +- **The CLI** (`iris/` and related source) — licensed under Apache 2.0; see [`LICENSE`](https://github.com/RocketBus/iris/blob/main/LICENSE) - **The platform code** — also licensed under Apache 2.0 - **Operator-specific branding** (logo, name, deployment-specific assets, if any) — owned by the Operator and not granted by the Apache license (Section 6 of the license) @@ -64,4 +64,4 @@ Questions about these Terms: use the contact address listed at the top of this d --- -*This template is published as part of the open-source repository at [github.com/RocketBus/clickbus-iris](https://github.com/RocketBus/clickbus-iris). The canonical version applicable to a specific hosted Service is rendered by that deployment with its own Operator information.* +*This template is published as part of the open-source repository at [github.com/RocketBus/iris](https://github.com/RocketBus/iris). The canonical version applicable to a specific hosted Service is rendered by that deployment with its own Operator information.* diff --git a/platform/src/components/blocks/footer.tsx b/platform/src/components/blocks/footer.tsx index 116c97a..1a4461c 100644 --- a/platform/src/components/blocks/footer.tsx +++ b/platform/src/components/blocks/footer.tsx @@ -24,7 +24,7 @@ export function Footer() {