Go
This documentation contains a user guide and samples regarding the use of private and public Go module repositories in Repsy Open Source. A Go repository implements the Go module proxy protocol: the go command installs from it when GOPROXY points at it. It is a push registry, so you upload modules to it yourself, with a single curl request. There is no go publish command.
The address of a Go repository is the address of your instance’s repository port followed by the name of the repository, https://<your-repsy-host>/<repo-name>. There is no username in the address. You use it as the GOPROXY, and you upload to https://<your-repsy-host>/<repo-name>/<module-path>/@v/<version>.zip.
Repsy does not fetch modules from other proxies, and it does not run a checksum database. A private Go repository needs HTTPS, because the go command refuses to send credentials over plain HTTP.
Getting Started
- Creating a Private Go Module Registry: create a repository and get your credentials.
- Publishing a Go Module and Installing a Go Module from Registry: a short setup for publishing and installing.
Tutorials
- Publishing a Go Module with curl: build the module zip, upload it, the rules Repsy applies to an upload, versions that cannot be overwritten, and what each refusal looks like.
- Using Go Modules from Repsy:
GOPROXY, credentials, the checksum database,GOPRIVATE, mixing your modules with public ones, HTTPS for a local test, and troubleshooting. - Go in CI: install and publish from a pipeline with a deploy token.
Managing Modules
- Deleting Go Module Versions: what deleting a version or a module does in the web UI, and what
goclients see afterwards.