Skip to content

fix(installer): download Drive9 companion from GitHub - #61

Merged
guangleibao merged 2 commits into
tidbcloud:mainfrom
qiffang:fix/install-drive9-from-github
Sep 27, 2026
Merged

guangleibao merged 2 commits into
tidbcloud:mainfrom
qiffang:fix/install-drive9-from-github

Conversation

@qiffang

@qiffang qiffang commented Sep 27, 2026

Copy link
Copy Markdown
Collaborator

The macOS/Linux installer can download ti from GitHub in a Daytona sandbox, but fails when it reaches the Drive9 companion on drive9.ai (curl: (35) Recv failure: Connection reset by peer). Download the companion binary and checksums.txt from the existing public mem9-ai/drive9-fe/main/site/releases directory on GitHub instead.

Both companion requests now share one base URL. Existing SHA-256 verification, companion command compatibility checks, platform selection and installation paths remain in place. The installer fixture now rejects companion downloads from the old host, and the README/product principles describe the new source. This change covers install.sh; PowerShell installation and ti update retain their current source.

Validation:

  • The tightened installer regression failed against the old URL and passes with this change.
  • sh -n scripts/install.sh, git diff --check, make test and make e2e passed.
  • Ran the complete modified installer from scratch as the non-root user in a fresh Daytona us sandbox (daytonaio/sandbox:0.8.0, Linux/amd64). In the same sandbox the old checksum URL still failed with curl 35, while installation from GitHub succeeded, including checksum and compatibility validation. Installed versions: ti 0.2.6 and Drive9 d17f0da. The test sandbox was deleted and its absence verified.

The observed reset does not establish Netlify as the root cause. This PR addresses installer downloads; filesystem API connectivity and FUSE lifecycle behavior are separate from this change.

@pingcap-cla-assistant

pingcap-cla-assistant Bot commented Sep 27, 2026 •

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@ti-chi-bot ti-chi-bot Bot added the size/S label Sep 27, 2026
Downloading the companion via `https://raw.githubusercontent.com/mem9-ai/drive9-fe/...`
worked around the Netlify reset seen in Daytona sandboxes but hard-codes
a GitHub raw URL that has its own rate limits, cache behavior, and
availability profile — not intended as a distribution channel.

Route the shell installer to `https://releases.drive9.ai/latest/`
instead. This is the S3 + CloudFront release channel now published by
the drive9 release-cli workflow (mem9-ai/drive9#1003). It:

- Reproduces cleanly in Daytona sandboxes where drive9.ai
  (Netlify) resets and github.com raw is sometimes throttled.
- Serves the same `drive9-<os>-<arch>` binaries and a SHA256SUMS file
  in the identical `<sha256>  <name>` format, so the installer's
  existing `awk '$2 == name'` verification is unchanged.
- Is CDN-fronted (global edge cache) and controlled by us, so we can
  invalidate/rotate as needed.

Updates the installer regression fixture to expect the new host, and
adjusts README/product principles to describe the new source. PowerShell
installer and `ti update` continue to use Drive9's origin release
endpoint (unchanged in this PR).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@guangleibao
guangleibao merged commit 5ca5fe2 into tidbcloud:main Sep 27, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants