Select Git revision
binaries.mk
binaries.mk 5.23 KiB
DESTDIR ?= .local
tempdir != mktemp -d
os != uname -s | awk '{print tolower($$0)}'
arch != uname -m
goos != go env GOOS
goarch != go env GOARCH
curl = curl --location --silent --fail
download = $(curl) --output $@
.PHONY: binaries
all: binaries
binaries: $(DESTDIR)/bin/hugo
$(DESTDIR)/bin/hugo:
mkdir -p $$(dirname $@)
$(curl) https://github.com/gohugoio/hugo/releases/download/v0.83.1/hugo_0.83.1_Linux-64bit.tar.gz | tar -xzC "$$(dirname '$@')" "$$(basename '$@')"
binaries: $(DESTDIR)/share/bfg/bfg.jar
$(DESTDIR)/share/bfg/bfg.jar:
mkdir -p $$(dirname $@)
$(download) 'https://search.maven.org/remote_content?g=com.madgag&a=bfg&v=LATEST'
binaries: $(DESTDIR)/bin/rke
$(DESTDIR)/bin/rke:
mkdir -p $$(dirname $@)
-$(download) https://github.com/rancher/rke/releases/download/v1.2.8/rke_$(os)-$(goarch)
-chmod +x $@
binaries: $(DESTDIR)/bin/docker-machine
$(DESTDIR)/bin/docker-machine:
mkdir -p $$(dirname $@)
-$(download) "https://github.com/docker/machine/releases/download/v0.16.2/docker-machine-$(os)-$(arch)"
-chmod +x $@
binaries: $(DESTDIR)/bin/packer
$(DESTDIR)/bin/packer:
mkdir -p $$(dirname $@)
$(curl) https://releases.hashicorp.com/packer/1.7.2/packer_1.7.2_$(os)_$(goarch).zip --output $(tempdir)/packer.zip
unzip -d $(tempdir) $(tempdir)/packer.zip
install -m 755 $(tempdir)/packer $@
rm $(tempdir)/packer*
binaries: $(DESTDIR)/bin/terraform
$(DESTDIR)/bin/terraform:
mkdir -p $$(dirname $@)
$(curl) https://releases.hashicorp.com/terraform/0.15.3/terraform_0.15.3_$(os)_$(goarch).zip --output $(tempdir)/terraform.zip
unzip -d $(tempdir) $(tempdir)/terraform.zip
install -m 755 $(tempdir)/terraform $@
rm $(tempdir)/terraform*
binaries: $(DESTDIR)/bin/terragrunt
$(DESTDIR)/bin/terragrunt:
mkdir -p $$(dirname $@)
-$(download) https://github.com/gruntwork-io/terragrunt/releases/download/v0.22.5/terragrunt_$(goos)_$(goarch)
-chmod +x '$@'
binaries: $(DESTDIR)/bin/vault
$(DESTDIR)/bin/vault:
mkdir -p $$(dirname $@)
$(curl) https://releases.hashicorp.com/vault/1.7.1/vault_1.7.1_$(os)_$(goarch).zip --output $(tempdir)/vault.zip
unzip -d $(tempdir) $(tempdir)/vault.zip
install -m 755 $(tempdir)/vault $@
rm $(tempdir)/vault*
binaries: $(DESTDIR)/bin/kubectl
$(DESTDIR)/bin/kubectl:
mkdir -p $$(dirname $@)
-$(download) "https://storage.googleapis.com/kubernetes-release/release/v1.21.0/bin/$(os)/$(goarch)/kubectl"
-chmod +x $@