Building Boundary
Building Boundary from source requires:
- Go 1.14 or greater. (Note that HashiCorp currently develops against Go 1.15.)
- make installed
- Docker installed
- Basic development environment (git, xcode if you’re on Mac, etc)
- $ git clone https://github.com/hashicorp/boundary or if you’re using SSH auth for github,
$ git clone git@github.com:hashicorp/boundary
- $ cd boundary
- $ make dev
The first time you run make dev
it will build UI assets, which will take a long time. After the initial build, you can update those assets to the currently-pinned version via make build-ui
.
Once you’ve built Boundary, the binary will be available at <repo path>/bin/boundary
. Move this binary to somewhere in your $PATH
such as /usr/local/bin
.
Cross Platform Build
If you need to cross compile boundary for another OS or architecture, use the XC_OSARCH environment variable to set this. Example: $ XC_OSARCH=linux/amd64 make dev
For more details, please consult the Boundary project on GitHub.
Troubleshooting
UI assets are built inside a Docker container. If this build step fails, try increasing memory and swap available to Docker.