diff --git a/Makefile b/Makefile index 3f5f5603a48..53119264db5 100644 --- a/Makefile +++ b/Makefile @@ -136,8 +136,8 @@ install-requirements: @go install -mod=vendor github.com/ahmetb/gen-crd-api-reference-docs @go install -mod=vendor github.com/golang/mock/mockgen @go install -mod=vendor sigs.k8s.io/controller-tools/cmd/controller-gen - @GO111MODULE=off go get github.com/prometheus/prometheus/cmd/promtool @GO111MODULE=off go get github.com/go-bindata/go-bindata/... + @./hack/install-promtool.sh @./hack/install-requirements.sh .PHONY: revendor diff --git a/hack/install-promtool.sh b/hack/install-promtool.sh new file mode 100755 index 00000000000..350faa29874 --- /dev/null +++ b/hack/install-promtool.sh @@ -0,0 +1,44 @@ +#!/bin/bash +# +# Copyright (c) 2021 SAP SE or an SAP affiliate company. All rights reserved. This file is licensed under the Apache Software License, v. 2 except as noted otherwise in the LICENSE file +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -e + +echo "> Installing promtool" + +if which promtool &>/dev/null; then + echo "promtool is already installed, skipping the installation..." + exit 0 +fi + +platform=$(uname -s | tr '[:upper:]' '[:lower:]') +version="2.24.1" +archive_name="prometheus-${version}.${platform}-amd64" +file_name="${archive_name}.tar.gz" + +temp_dir="$(mktemp -d)" +function cleanup { + rm -rf "${temp_dir}" +} +trap cleanup EXIT ERR INT TERM + +curl \ + -L \ + --output ${temp_dir}/${file_name} \ + "https://github.com/prometheus/prometheus/releases/download/v${version}/${file_name}" + +tar -xzm -C "${temp_dir}" -f "${temp_dir}/${file_name}" +mv "${temp_dir}/${archive_name}/promtool" /usr/local/bin/ +chmod +x /usr/local/bin/promtool