Move installation and releases from GitHub to code.iterative.works #399
Labels
No labels
bug
contract
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
iterative-works/iw-cli#399
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
iw-cli's home is now our self-hosted Forgejo at code.iterative.works —
originpoints there and CI runs on the Forgejo runner. GitHub is only a mirror (githubremote). The remaining GitHub couplings are user-facing installation and the release pipeline; this issue moves both to Forgejo so we can fully drop GitHub.Current state (GitHub-coupled)
Installation —
README.md:vlatestrelease:curl -L https://github.com/iterative-works/iw-cli/releases/latest/download/iw-bootstrap -o iwgit clone https://github.com/iterative-works/iw-cli.git(README:263)iw-bootstrapitself likely fetchesiw-cli-latest.tar.gzfrom a GitHub release URL — needs auditing.Releases —
.github/workflows/release.yml(triggered onv*tags):gh release create/upload/viewto GitHub releases:iw-cli-${VERSION}.tar.gzvlatestrelease withiw-cli-latest.tar.gz+iw-bootstrap(force-moves thevlatesttag)ghcr.io/iterative-works/iw-cli-ci:latest(GitHub Container Registry).scripts/package-release.sh,scripts/release-prepare.sh,scripts/release-publish.sh.Goal
A
v*tag pushed to code.iterative.works produces a Forgejo release (versioned +vlatest) carrying the tarball andiw-bootstrap, and the documented install command pulls from code.iterative.works — with no GitHub dependency.Tasks
git cloneURL tohttps://code.iterative.works/iterative-works/iw-cli/....iw-bootstrap(and any self-update path) for hardcodedgithub.com/release URLs; repoint downloads to the Forgejo release asset URLs.gh releasesteps with Forgejo release publishing (a Forgejo Actions release action, the Forgejo API, orforgejo-cli); reproduce the versioned +vlatestbehaviour including force-movingvlatest.ghcr.io/iterative-works/iw-cli-ci:latestfor the image hosted on the Forgejo registry (depends on the registry cutover).scripts/{package-release,release-prepare,release-publish}.shforgh/GitHub assumptions.Acceptance criteria
v*tag toorigin(code.iterative.works) publishes the versioned release and updatesvlatestwithiw-cli-latest.tar.gz+iw-bootstrapas assets.curl -L https://code.iterative.works/iterative-works/iw-cli/releases/latest/download/iw-bootstrap -o iwinstalls a working iw-cli.gh.Notes / dependencies
iw-cli-cion the Forgejo registry).githubremote) — we're not deleting it, just no longer depending on it for install/releases.