# Contributor: Olivier Mauras # Maintainer: Francesco Colista pkgname=consul pkgver=1.7.1 pkgrel=0 pkgdesc="Tool for service discovery, monitoring and configuration" url="https://www.consul.io" arch="all !aarch64" license="MPL-2.0" makedepends="bash go" install="$pkgname.pre-install" pkgusers="consul" pkggroups="consul" subpackages="$pkgname-openrc" source="consul-$pkgver.tar.gz::https://github.com/hashicorp/consul/archive/v$pkgver.tar.gz consul.initd consul.confd acl.json.sample encrypt.json.sample server.json tls.json.sample" builddir="$srcdir/src/github.com/hashicorp/$pkgname" prepare() { default_prepare mkdir -p "$srcdir/src/github.com/hashicorp" mv "$srcdir"/$pkgname-$pkgver "$builddir"/ } build() { GOPATH="$srcdir" go build -v -o bin/$pkgname \ -ldflags "-X github.com/hashicorp/consul/version.GitDescribe='$pkgver'" \ --tags consul } check() { GOPATH="$srcdir" go test } package() { # Consul init script install -m755 -D "$srcdir"/$pkgname.initd \ "$pkgdir"/etc/init.d/$pkgname # Consul init conf install -m644 -D "$srcdir"/$pkgname.confd \ "$pkgdir"/etc/conf.d/$pkgname # Main binary install -m750 -o root -g consul \ -D bin/$pkgname \ "$pkgdir"/usr/sbin/$pkgname # Consul datadir install -m750 -o consul -g consul -d "$pkgdir"/var/$pkgname # Consul configdir install -m750 -o root -g consul -d "$pkgdir"/etc/$pkgname # Consul sample config files for cf in acl.json.sample encrypt.json.sample server.json tls.json.sample; do install -m640 -o root -g consul "$srcdir"/$cf "$pkgdir"/etc/$pkgname done } cleanup_srcdir() { [ -d src ] && chmod -R +w src default_cleanup_srcdir } sha512sums="bcd7d309c4fc5a89713e3badbf88ff2f7363cd2f09bd52030965811b43bfb0b36fc573ea7cd726f847d822785f3e700885b7cf3c0ad025e2b879b62b1d5aef0e consul-1.7.1.tar.gz 74c2581bcafa119b4fc8ce72cf0c73584316a4bf3007130ae8864e97a91dcc4aab15f39faa423d90bfa667e26db11f7f581982f9fe7e1870df72e2dc0240676a consul.initd f2c5af74dfcbca2fea8ebea31139d93f44455b93ef17ec611b880d7071af4125615dbbd23969d0d04ca636c26d7b4e7eb97f1266baa89252097f4cbc5173d817 consul.confd d4310dde63d3b8fc4791124bd255bf2a1402b86d00f6b1732e18b0caedb75eae6c77382e1a48f12469828ef4bb363db4580fb1aafa63fcdc97b1431f6ea96d58 acl.json.sample ec30ad73c13f9dd5ba15389567436dbf74c24e822cb959c6ccc40a35e36e212313c70f3cf1ccee3f63a7bb98760173d6c2478161a25b85e14dd889a47572aff1 encrypt.json.sample a8b984db03f0bfb652d541dbdd3f1bc9be22f16cce78f73e495cc54adea1e09e9ac0e2f306ca8436590433c80a2ef824641f790b30aea9acb806b01fcabc918e server.json 7582f1845a742cf570db5aa52077eb4c4cbfe68ee2ae9569cc2806444217eba0ee960a3a52f3edd1a7c36ca8b7811df5cab6dd062b060ab43ed57b8c811c85de tls.json.sample"