mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00

Godeps should allow me to do godep restore godep save -r ./... But that doesn't work. Try it. This requires update to the following packages: github.com/prometheus/client_golang/ github.com/prometheus/procfs github.com/matttproud/golang_protobuf_extensions/ There were 2 major problems. 1. godeps have code.google.com/p/goprotobuf but that repo doesn't exist 2. prometheus/client_golang/_vendor moved to other packages and godep (with -r) can't handle it. At the end of this we should be able to use godeps again without tons of black magic. uggh. what a pain in the ass. The black magic to actually get godeps back in shape was: ```bash # remove code.google.com/p/goprotobuf (doesn't exist) # remove all _vendor lines from prometheus (we still have other # prometheus lines so restore still works) vi Godeps/Godeps.json # remove all the crazy vendoring crud because godep doesn't handle it # correctly find . -name \*.go | xargs sed -i 's|github.com/coreos/etcd/Godeps/_workspace/src/||' # ok now, restore as best we can (everything except it wines about # goprotobuf godep restore # now update the packages which were using the old (dead) goprotobuf go get -u github.com/prometheus/client_golang/ go get -u github.com/matttproud/golang_protobuf_extensions/ # update prometheus procfs because prometheus/client_golang/ has a # dependancy on this update go get -u github.com/prometheus/procfs # get rid of Godeps directory entirely git rm -rf Godeps # ok, now, rewrite the Godeps directory and redo the path rewrites godep save -r ./... # now put Godeps back into git git add Godeps/ # commit the new code git commit -aA # And now, you can use godeps! godep restore godep save -r ./... git diff # nothing!! ```