Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 40 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,18 +50,51 @@ For the threat model, defense layers, per-platform caveats, operator responsibil

## Deploy

This repo ships the **tracebloc** unified Helm chart (currently `v1.3.1`) — one chart for AKS, EKS, bare-metal, and OpenShift.

### Quick install

A single command provisions a Kubernetes cluster, auto-detects and installs GPU drivers (NVIDIA or AMD), and deploys the tracebloc client. Use this when you don't already have a cluster — the result is a full client install, not a demo.

**macOS / Linux**

```bash
bash <(curl -fsSL https://tracebloc.io/i.sh)
```

**Windows** *(PowerShell as Administrator)*

```powershell
irm https://tracebloc.io/i.ps1 | iex
```

The installer pulls helper scripts from this repo at runtime — see [`scripts/install-k8s.sh`](scripts/install-k8s.sh) and [`scripts/install-k8s.ps1`](scripts/install-k8s.ps1).

### Helm install

For existing Kubernetes clusters:

```bash
docker pull tracebloc/client:latest
helm repo add tracebloc https://tracebloc.github.io/client
helm repo update
helm install my-tracebloc tracebloc/tracebloc \
--namespace tracebloc --create-namespace \
-f my-values.yaml
```

Deployment varies by infrastructure. Follow the guide for your setup:
Full deployment guide → **[docs/INSTALL.md](docs/INSTALL.md)** (prerequisites, required values, upgrade & rollback, air-gapped install).

| Topic | Where to look |
|---|---|
| Production install + required values | [docs/INSTALL.md](docs/INSTALL.md) |
| Threat model & operator responsibilities | [docs/SECURITY.md](docs/SECURITY.md) |
| Migrating from `eks-1.0.x` / `aks-*` charts to `client-1.x` | [docs/MIGRATIONS.md](docs/MIGRATIONS.md) |
| Per-tenant migration runbook | [docs/migration-tools/README.md](docs/migration-tools/README.md) |
| Per-platform value mapping | [client/MIGRATION.md](client/MIGRATION.md) |

- [Deployment overview](https://docs.tracebloc.io/environment-setup/deployment-overview)
- [Local — Linux](https://docs.tracebloc.io/environment-setup/local-linux)
- [Local — macOS](https://docs.tracebloc.io/environment-setup/local-macos)
- [AWS](https://docs.tracebloc.io/environment-setup/aws)
Platform-specific walkthroughs: [Linux](https://docs.tracebloc.io/environment-setup/local-deployment-guide-linux) · [macOS](https://docs.tracebloc.io/environment-setup/local-deployment-guide-macos) · [EKS](https://docs.tracebloc.io/environment-setup/eks-client-deployment-guide) · [Azure / AKS](https://docs.tracebloc.io/environment-setup/azure-deployment-guide)

Full documentation → [docs.tracebloc.io](https://docs.tracebloc.io/)
> **NetworkPolicy required.** The chart's training-pod egress lockdown only takes effect on a CNI that enforces NetworkPolicy. See [SECURITY.md § Per-platform caveats](docs/SECURITY.md#5-per-platform-caveats).

## Links

Expand Down
13 changes: 8 additions & 5 deletions docs/INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,13 @@

This guide covers installing the **tracebloc** unified Helm chart (AKS, EKS, bare-metal, OpenShift) in a production-ready way.

> **Don't have a Kubernetes cluster yet?** The standalone installer provisions a cluster, installs GPU drivers, and deploys a full tracebloc client in a single command:
>
> - **macOS / Linux:** `bash <(curl -fsSL https://tracebloc.io/i.sh)`
> - **Windows:** `irm https://tracebloc.io/i.ps1 | iex` *(PowerShell as Administrator)*
>
> See the [README's Quick install section](../README.md#quick-install) for what it does. Continue here if you're deploying into an existing cluster.

---

## Prerequisites
Expand Down Expand Up @@ -200,7 +207,7 @@ The chart repository used for installation is **[tracebloc/client](https://githu

To make the chart available via `helm repo add tracebloc https://tracebloc.github.io/client`:

1. **In the repo that hosts the chart (e.g. tracebloc/client or tracebloc-helm-charts):**
1. **In the tracebloc/client repo:**
Enable **GitHub Pages** → **Settings** → **Pages** → **Source**: branch `gh-pages` (root).

2. **Create a release or push a tag**
Expand All @@ -217,17 +224,13 @@ To make the chart available via `helm repo add tracebloc https://tracebloc.githu

4. **First time only:** ensure the `gh-pages` branch exists. The workflow creates it if missing.

5. **If you develop in a different repo** (e.g. tracebloc-helm-charts): run the release workflow there to build the chart, then copy the generated `tracebloc-<version>.tgz` and updated `index.yaml` into the **tracebloc/client** repo’s `gh-pages` branch so the chart is served at `https://tracebloc.github.io/client`.

After that, users can run:

```bash
helm repo add tracebloc https://tracebloc.github.io/client
helm install my-tracebloc tracebloc/tracebloc -n tracebloc -f my-values.yaml
```

**Note:** If the chart is developed in a different repo (e.g. `tracebloc-helm-charts`), run the release workflow there to produce the `.tgz` and `index.yaml`, then copy the packaged chart and updated index into the `tracebloc/client` repo’s `gh-pages` branch (or run the same release workflow from the client repo) so the chart is served at `https://tracebloc.github.io/client`.

---

## Pre-install checklist (production)
Expand Down
Loading