Users found Radicle-as-source unfriendly (v1, v2). Gitea is now where people work; its Actions build images into the staging registry IPCR follows, as in v2. - bridge/: ipcr-forge-bridge (Go). Install step mints a public-only token, registers one system webhook and creates the ipcr-hello example; the service mirrors every public repo one way to Radicle (rad init, canonical tags rule, git push rad) and serves the forge's page. - Compose: gitea + act_runner on a separate dind; tile opens Gitea; tips link the forge page. - Removed the Radicle CI broker (ci/) and the nginx landing page.
1.2 KiB
1.2 KiB
ipcr-hello
The IPCR Forge example. A tag on this repository builds its image, IPCR publishes it on IPFS, and the repository is mirrored to Radicle.
Try it
-
Tag a release. In Gitea: Tags → New tag (or Releases → New release), name it
v1.0.0and targetmain. From a clone it works too:git tag v1.0.0 && git push origin v1.0.0 -
Watch the build under Actions. The first build on a new server takes a few minutes more, while it downloads its build images.
-
Find the image on the forge's page (
ipcr-forge-<your domain>, Published images), about a minute after the build finishes. Then on this server or on any other running IPCR:services: hello: image: ipcr.localhost:4767/ipns/<forge name>/gitea_admin/ipcr-hello:1.0.0 ports: ["8080:8080"]
What makes it work
.gitea/workflows/build.ymlpushes tolocalhost:5000, the forge's staging registry. IPCR imports every tag it finds there.Dockerfileis an ordinary Dockerfile. Anything that builds works.
Copy the workflow into any public or private repository on this forge to publish it the same way.