# go-utils A set of utilities used by our Golang projects * [errors](./errors/README.md) ## Install this private repo Add this in your `~/.gitconfig`: ``` [url "ssh://git@gitlab.bob.co.za/"] insteadOf = https://gitlab.bob.co.za/ ``` Run this to reset the go proxy ``` go env -w GOPROXY= ``` Set the private go module path ``` go env -w GOPRIVATE=gitlab.bob.co.za:bob-public-utils/bobgroup-go-utils ``` Run this in your project to add the private module ``` go get gitlab.bob.co.za:bob-public-utils/bobgroup-go-utils ``` ## Creating a new release When making changes, a new release needs to be made in order to use the updated library in your project. 1. First, make sure your `bob-tools` (https://gitlab.bob.co.za/bob-tools/bobgroup-tools) repository is up to date (minimum at commit `442f62f0`): ``` git pull make install ``` 2. After your changes have been merged to the `main` branch of `go-utils`, run the following command which will automatically create a new tag: ``` bob release tag ``` and select project `bob-public-utils/bobgroup-go-utils` 3. For your project, upgrade to the new version by running the `go get` command and specifying the new tag: ``` go get gitlab.bob.co.za/bob-public-utils/bobgroup-go-utils@v1.6.0 ``` **Note:** The release documentation can be found in GitLab, by navigating to the new tag. For example: https://gitlab.bob.co.za/bob-public-utils/bobgroup-go-utils/-/tags/v1.6.0