diff --git a/docs/DISTRIBUTION_SETUP.md b/docs/DISTRIBUTION_SETUP.md index abac38b..ba8ce70 100644 --- a/docs/DISTRIBUTION_SETUP.md +++ b/docs/DISTRIBUTION_SETUP.md @@ -1,21 +1,31 @@ -# Distribution Setup +# Distribution Channels — One-Time Setup -Secrets and publishers (see also #58–#63): +`create-awesome-python-app` publishes on release tags (`create-awesome-python-app@X.Y.Z`): -| Channel | Secret / config | -|---------|-----------------| -| PyPI | Trusted Publishing OIDC (no long-lived token) | -| Docker Hub | `DOCKERHUB_USERNAME`, `DOCKERHUB_TOKEN` | -| AUR | `AUR_SSH_PRIVATE_KEY`, `AUR_REPO_TOKEN` | -| Homebrew | `HOMEBREW_TAP_TOKEN` | +| Channel | Workflow | Secret(s) | +|---------|----------|-----------| +| **PyPI** | `publish.yml` | OIDC Trusted Publishing (no token) | +| **Docker** | `publish-docker.yml` | `DOCKERHUB_USERNAME`, `DOCKERHUB_TOKEN` | +| **AUR** | `publish-aur.yml` | `AUR_SSH_PRIVATE_KEY`, `AUR_REPO_TOKEN` | +| **Homebrew** | `notify-homebrew.yml` | `HOMEBREW_TAP_TOKEN` | + +Configure secrets under **Settings → Secrets and variables → Actions**. ## PyPI Trusted Publishing -1. Create a Trusted Publisher on PyPI for `create-awesome-python-app` -2. Repository: `Create-Python-App/create-python-app` -3. Workflow: `publish.yml` -4. No `PYPI_TOKEN` secret required when using OIDC +1. On PyPI, add a Trusted Publisher for project `create-awesome-python-app` +2. Owner/repo: `Create-Python-App/create-python-app` +3. Workflow name: `publish.yml` +4. Environment: (optional) + +## Docker Hub + +Create a write token and set `DOCKERHUB_USERNAME` / `DOCKERHUB_TOKEN`. ## AUR -Track sibling repo `Create-Python-App/aur-package` when ready. Secrets: `AUR_SSH_PRIVATE_KEY`, `AUR_REPO_TOKEN`. +Bootstrap PKGBUILD in a future `Create-Python-App/aur-package` mirror; set SSH key secret. + +## Homebrew + +Create `Create-Python-App/homebrew-tap` and allow `repository_dispatch` with `HOMEBREW_TAP_TOKEN`.