mirror of
https://github.com/openshift/installer.git
synced 2026-02-05 15:47:14 +01:00
Catching up with c1dbb138f8 (pkg/types: ensure kubebuilder can build
correct documentation, 2020-04-27, #3515), to make it easier for
first-time or occasional contributors to figure out how to update that
file.
1.6 KiB
1.6 KiB
Managing Dependencies
Build Dependencies
The following dependencies must be installed on your system before you can build the installer.
Fedora, CentOS, RHEL
sudo dnf install golang-bin gcc-c++ zip
If you need support for libvirt destroy, you should also install libvirt-devel.
Go
We follow a hard flattening approach; i.e. direct and inherited dependencies are installed in the base vendor/.
Dependencies are managed with Go Modules but committed directly to the repository.
We require at least Go 1.22.
- Add or update a dependency with
go get <dependency>@<version>. - If you want to use a fork of a project or ensure that a dependency is not updated even when another dependency requires a newer version of it, manually add a replace directive in the go.mod file.
- Run
go mod tidyto tidygo.modand updatego.sum, then commit the changes. - Run
go mod vendorto re-vendor and then commit updated vendored code separately.
If your vendor bump touched github.com/openshift/api, also run go generate ./pkg/types/installconfig.go to update data/data/install.openshift.io_installconfigs.yaml.
This guide is a great source to learn more about using go mod.
For the sake of your fellow reviewers, commit vendored code separately from any other changes.