- Go 89.8%
- HTML 9.3%
- Dockerfile 0.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .forgejo/workflows | ||
| cmd/noon | ||
| internal | ||
| .dockerignore | ||
| .gitignore | ||
| Dockerfile | ||
| go.mod | ||
| go.sum | ||
| README.md | ||
noon.link
permanent links to Forgejo Actions artifacts. A nightly.link for Forgejo.
the run number changes on every push, so there is no stable URL for the artifacts of the latest build. this resolves it on demand:
https://noon.example/myorg/myrepo/workflows/build/main/binaries.zip
urls
/{owner}/{repo}/workflows/{workflow}/{branch} latest successful run
/{owner}/{repo}/workflows/{workflow}/{branch}/{artifact}
/{owner}/{repo}/actions/runs/{n} one run, by the number in the UI
/{owner}/{repo}/actions/runs/{n}/{artifact}
/{owner}/{repo}/actions/artifacts/{id}
append .zip to an artifact URL to download instead of viewing the page.
{workflow} is the file name, .yml optional. ?status=completed accepts the
latest finished run rather than the latest successful one.
Paste any Forgejo URL into the front page to get the corresponding one here.
running
(todo nix flake)
go build -v -trimpath -ldflags="-s -w" ./cmd/noon/
NOON_FORGEJO_URL=https://code.example.org ./noon
also docker container code.cuddles.rs/lain/noon.link:latest available
| env | default | |
|---|---|---|
NOON_FORGEJO_URL |
required | instance base URL |
NOON_LISTEN |
127.0.0.1:8080 |
|
NOON_BASE_URL |
http://$NOON_LISTEN |
public URL, used in the links shown on pages |
NOON_TOKEN |
- | see below |
NOON_RUNS_TTL |
2m |
|
NOON_ARTIFACTS_TTL |
3m |
|
NOON_MAX_PROXY_SIZE |
0 |
byte cap on proxied downloads, 0 = none |
without a token only anonymously-readable repos are served, and downloads are a 302 straight to Forgejo. with one, private repos become reachable - but the token is a header, not a URL, so the zip is streamed through noon.link, and !!!everything the token can read becomes publicly downloadable!!!.
caveats
- Branches with a slash don't fit the
/workflows/form; use/actions/runs/{n}. - Expired artifacts 404 (obviously)