Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.
Sign upBring Makefile in line with the Makefile used in other repos. #888
Comments
This comment has been minimized.
This comment has been minimized.
|
prometheus: client_golang: charliesmac:client_golang charliefederspiel$ make example_random |
This comment has been minimized.
This comment has been minimized.
|
One of prometheus' guidelines has been to allow for easy building of projects on standard linux/darwin environments. As go is not a standard tool, the simplest solution is to vendor everything ourselves, including installing the desired go version. There are a few other benefits as well. At least for the go installation itself this is actually quite wasteful in time and storage resources. This has been admitted in the Makefile.COMMON, which is the base for most of the smaller prometheus component projects already. Neither the client's nor the server's build process have been updated to use these common make targets, nor do I know if that is actually feasible. If not the check for an existing go version could be backported to these two projects. |
This comment has been minimized.
This comment has been minimized.
|
I find it rather unusual as well and since the project has pre-built binaries with every release now, I think this can be dropped eventually. Building Prometheus manually should be only required for people experimenting with unreleased versions or developers – both groups can be expected to setup a Go environment, which is very simple. |
This comment has been minimized.
This comment has been minimized.
|
This can't be dropped, Docker images depend on this. |
This comment has been minimized.
This comment has been minimized.
|
The Docker images need a Go version - doesn't mean it has to come from the Makefile that is used for the manual build process. That said, this will only happen if anyone is willing to take the time to do it right. Regarding |
This comment has been minimized.
This comment has been minimized.
|
I think the the download step in the Makefile is fine and quite useful. The simpler way to fix this is to add the GO detection in PATH like @grobie said. https://github.com/prometheus/utils/blob/master/Makefile.COMMON#L56-L67 |
This comment has been minimized.
This comment has been minimized.
|
I'd prefer removing it completely, but would be fine with either. |
This comment has been minimized.
This comment has been minimized.
|
I filed prometheus/client_golang#144 for |
beorn7
changed the title
why do prometheus and golang_client download Go when its already installed?
Bring Makefile in line with the Makefile used in other repos.
Jul 15, 2015
This comment has been minimized.
This comment has been minimized.
|
We actually had an issue for that already: #476 Marking this as duplicate. |
beorn7
closed this
Jul 15, 2015
beorn7
added
the
duplicate
label
Jul 15, 2015
This comment has been minimized.
This comment has been minimized.
lock
bot
commented
Mar 24, 2019
|
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
cfedersp commentedJul 12, 2015
I have go lang 1.4.2 installed and in my PATH.
I am trying out prometheus and its now downloaded go-lang-1.4.2 twice already - once to compile prometheus (I'm running on OSX, so no dist is provided) and once for golang_client examples.