mirror of
https://github.com/openshift/installer.git
synced 2026-02-05 15:47:14 +01:00
1.2 KiB
1.2 KiB
Managing Dependencies
Go
We follow a hard flattening approach; i.e. direct and inherited dependencies are installed in the base vendor/.
Dependencies are managed with glide but committed directly to the repository. If you don't have glide, install the latest release from https://glide.sh/. We require version 0.12 at a minimum.
The vendor directory is pruned using glide-vc. Follow the installation instructions in the project's README.
To add a new dependency:
- Edit the
glide.yamlfile to add your dependency. - Ensure you add a
versionfield for the sha or tag you want to pin to. - Revendor the dependencies:
rm glide.lock
glide install --strip-vendor
glide-vc --use-lock-file --no-tests --only-code
If it worked correctly it should:
- Clone your new dep to the
/vendordir and check out the ref you specified. - Update
glide.lockto include your new package, add any transitive dependencies and update its hash.
For the sake of your fellow reviewers, commit vendored code separately from any other changes.
Tests
See tests/README.md.