Skip to content

Instantly share code, notes, and snippets.

@asvinours
Last active August 10, 2017 18:27
Show Gist options
  • Save asvinours/8458b3160d406696a70c7407d6775159 to your computer and use it in GitHub Desktop.
Save asvinours/8458b3160d406696a70c7407d6775159 to your computer and use it in GitHub Desktop.
Download, verify and create i386 and amd64 deb package for consul
VERSION=0.9.2
NAME=consul
.PHONY: package build download cleanup verify prepare
build: package cleanup
download: prepare
wget -O consul_$(VERSION)_SHA256SUMS https://releases.hashicorp.com/consul/$(VERSION)/consul_$(VERSION)_SHA256SUMS
wget -O consul_$(VERSION)_linux_amd64.zip https://releases.hashicorp.com/consul/$(VERSION)/consul_$(VERSION)_linux_amd64.zip
wget -O consul_$(VERSION)_linux_386.zip https://releases.hashicorp.com/consul/$(VERSION)/consul_$(VERSION)_linux_386.zip
verify: download
cat consul_$(VERSION)_SHA256SUMS | grep -P '_linux_amd64.zip|_linux_386.zip' > consul_SHA256SUMS
sha256sum -c consul_SHA256SUMS
package: verify
unzip -d consul_amd64 consul_$(VERSION)_linux_amd64.zip
fpm --force --verbose -a amd64 -s dir -t deb -n $(NAME) -v $(VERSION) --url=http://consul.io --vendor=HashiCorp --description "A distributed service discovery tool" ./consul_amd64/consul=/usr/local/bin/consul
unzip -d consul_i386 consul_$(VERSION)_linux_386.zip
fpm --force --verbose -a i386 -s dir -t deb -n $(NAME) -v $(VERSION) --url=http://consul.io --vendor=HashiCorp --description "A distributed service discovery tool" ./consul_i386/consul=/usr/local/bin/consul
prepare cleanup:
rm -rf consul_SHA256SUMS consul_$(VERSION)_SHA256SUMS
rm -rf consul_$(VERSION)_linux_386.zip consul_i386
rm -rf consul_$(VERSION)_linux_amd64.zip consul_amd64
VERSION=0.19.0
NAME=consul-template
.PHONY: package build download cleanup verify
build: package cleanup
download: prepare
wget -O consul-template_$(VERSION)_SHA256SUMS https://releases.hashicorp.com/consul-template/$(VERSION)/consul-template_$(VERSION)_SHA256SUMS
wget -O consul-template_$(VERSION)_linux_amd64.zip https://releases.hashicorp.com/consul-template/0.19.0/consul-template_0.19.0_linux_amd64.zip
wget -O consul-template_$(VERSION)_linux_386.zip https://releases.hashicorp.com/consul-template/0.19.0/consul-template_0.19.0_linux_386.zip
verify: download
cat consul-template_$(VERSION)_SHA256SUMS | grep -P '_linux_amd64.zip|_linux_386.zip' > consul-template_SHA256SUMS
sha256sum -c consul-template_SHA256SUMS
package: verify
unzip -d consul-template_amd64 consul-template_$(VERSION)_linux_amd64.zip
fpm --force --verbose -a amd64 -s dir -t deb -n $(NAME) -v $(VERSION) --url=https://github.com/hashicorp/consul-template --vendor=HashiCorp --description "Template rendering, notifier, and supervisor for Consul and Vault data." ./consul-template_amd64/consul-template=/usr/local/bin/consul-template
unzip -d consul-template_i386 consul-template_$(VERSION)_linux_386.zip
fpm --force --verbose -a i386 -s dir -t deb -n $(NAME) -v $(VERSION) --url=https://github.com/hashicorp/consul-template --vendor=HashiCorp --description "Template rendering, notifier, and supervisor for Consul and Vault data." ./consul-template_i386/consul-template=/usr/local/bin/consul-template
prepare cleanup:
rm -rf consul-template_SHA256SUMS consul-template_$(VERSION)_SHA256SUMS
rm -rf consul-template_$(VERSION)_linux_386.zip consul-template_i386
rm -rf consul-template_$(VERSION)_linux_amd64.zip consul-template_amd64
VERSION=1.4.1
NAME=marathon-consul
.PHONY: package build download cleanup prepare
build: package cleanup
download: prepare
wget -O marathon-consul_$(VERSION)_linux_amd64.tar.gz https://github.com/allegro/marathon-consul/releases/download/$(VERSION)/marathon-consul_$(VERSION)_linux_amd64.tar.gz
wget -O marathon-consul_$(VERSION)_linux_386.tar.gz https://github.com/allegro/marathon-consul/releases/download/$(VERSION)/marathon-consul_$(VERSION)_linux_386.tar.gz
package: download
tar -xzvf marathon-consul_$(VERSION)_linux_amd64.tar.gz
fpm --force --verbose -a amd64 -s dir -t deb -n $(NAME) -v $(VERSION) --url=https://github.com/allegro/marathon-consul --vendor=Allegro --description "Integrates Marathon apps with Consul service discovery" ./marathon-consul_$(VERSION)_linux_amd64/marathon-consul=/usr/local/bin/marathon-consul
tar -xzvf marathon-consul_$(VERSION)_linux_386.tar.gz
fpm --force --verbose -a i386 -s dir -t deb -n $(NAME) -v $(VERSION) --url=https://github.com/allegro/marathon-consul --vendor=Allegro --description "Integrates Marathon apps with Consul service discovery" ./marathon-consul_$(VERSION)_linux_386/marathon-consul=/usr/local/bin/marathon-consul
prepare cleanup:
rm -rf marathon-consul_$(VERSION)_linux_386.tar.gz marathon-consul_$(VERSION)_linux_386
rm -rf marathon-consul_$(VERSION)_linux_amd64.tar.gz marathon-consul_$(VERSION)_linux_amd64
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment