-
Notifications
You must be signed in to change notification settings - Fork 148
build.sh does not handle dependencies #6
Comments
The process should be really simple, and I will add this to the documentation:
Here I have an empty go directory. I need just one command to get the package and its dependencies:
|
Also, if you want to compile on your own, please read this notice about pflags. |
Also fixes OS detection bug in functional-test.sh
I have updated build.sh to check dependencies and give advice on how to build. |
Hi Giuseppe. Thanks for your comments and the update. golang version dependency management is planned to get better so maybe this will soon be a non-issue. Having had some bugs due to the dependent libraries changing I still like the idea of recording that somewhere if possible. |
I have changed my mind about using a vendor folder, and I am experimenting with it using govendor. |
Fixed (better) in version 1.8.3 |
Installation referenced https://github.com/datacharmer/dbdeployer/ basically gets you to pull down a pre-built set of binaries. That's fine but I like to build my go binaries directly from source. Other projects I use such as orchestrator or vitess basically provide a command line tool which pulls in any required dependencies to enable the build to take place yet this does not happen with
dbdeployer
.This leads to something like:
One of the issues with go is tracking/handling of dependencies. It looks like this may change soon but given the dependencies you are using are quite small putting them under
vendor/
and in your tree means there is no external dependency to your packages.Failing that looking for the missing dependencies and pulling them down can work but then it's not clear if you used the same version of these dependencies that I may be using. Orchestrator has broken because of this and thus keeps its dependencies under
vendor/
and these can be tracked in various ways. Vitess has an initialbootstrap.sh
script (as this is more complex and includes other things like zookeeper etc) and pulls down the specific versions that are needed.I see that:
is all that is required to allow
dbdeployer
to build but do worry that if either of these libraries change unexpectedly you may see breakage.So commenting on the best way to build from source would be good as it adds a bit more information in addition to the offered binaries.
The text was updated successfully, but these errors were encountered: