app-admin/vault: version bump to 0.4.1
authorZac Medico <zmedico@gentoo.org>
Sat, 23 Jan 2016 22:43:31 +0000 (14:43 -0800)
committerZac Medico <zmedico@gentoo.org>
Sat, 23 Jan 2016 22:44:37 +0000 (14:44 -0800)
Package-Manager: portage-2.2.27

app-admin/vault/Manifest
app-admin/vault/vault-0.4.1.ebuild [new file with mode: 0644]

index 9b5f8e0d029ec2d081e089133f1c1f6ea6359c66..72df6cfc6ccd31b15bbb15f9638a8fce28364ba5 100644 (file)
@@ -1,3 +1,4 @@
 DIST gox-0.3.0.tar.gz 13735 SHA256 29dc6b689f670a5444cc54cd9111549ccb01501901bc9197d0e1325a35157802 SHA512 cbc737a780403d1233af10a85b30676e0fcfbfbe99a740d0eff69bef4fd557c65d102c43b3b0dde0b8b935967be8cb33fab50d2baf481d27fa53285be6b1aef2 WHIRLPOOL f3a10a965c4cfe0707bad2f8307162564b00d2b0279d61311445714f28a17d97a4ee4d5a442a7aaaf25b9f44eff656a8b84485bdb0e5776cc7a1014350cff216
 DIST iochan-b584a329b193e206025682ae6c10cdbe03b0cd77.tar.gz 1110 SHA256 27aa65991036fe736d3c383378e49758097f5a11a20b40f44cc434eac97659f7 SHA512 a4314506416d6ab84c9cd96aeadc8d08c88df8f2a146b1e6a51e5f756c2e2409f39adf274487998d0229a46d81b2d0899717064459966f4dbfa5571cc9e85400 WHIRLPOOL 9fd40b227de5452642696326b0b0a66d95e2ddf738a1b6e7e712e201101bb84cc854161609836cae82515ba95ba1e5efd331ce68abdf79c654a9d7a874f849f3
 DIST vault-0.1.2.tar.gz 1158880 SHA256 b8d56f1ebd11f5d80a6a6728b6c9ac399c7e507e3e9fe8830966be50ba15d1b3 SHA512 49488d4fac62521e485a623a3f5fa384643e84bb9aff616efec2169d84731f9892b5ffa1ae475ce905032f6f8e816a372535bc328daf4ee5caf0344a3cd2e9bc WHIRLPOOL f1d678145fad5b8a988dacb8aabf02394a81b267aeabdd2a2968c0efc9576997e980800fe0f08fb70d2f6052fce5d9d94c6d46ee0b50d97ca68b404a78c2c381
+DIST vault-0.4.1.tar.gz 2108269 SHA256 e986424d9bb0ace5450e8ed576d102f1d2d3a9d2d4c2046710aa55464a9fc296 SHA512 5b46e7f28e4b79f48bdc03ee65177a2cc3e10b71a05f34bb78f9c00ee6b4249447c39f3830ce5bfa7a8289fad5fa532420f769c21bfc33168cfed86bacc228f5 WHIRLPOOL 5b5d65931dcb381f659fa423765783a78f812420c4de29102a50da8d7215fb96e34de39f407917a12a7aa21c3bbc01c751df278676aaefdd620edf6910949dbc
diff --git a/app-admin/vault/vault-0.4.1.ebuild b/app-admin/vault/vault-0.4.1.ebuild
new file mode 100644 (file)
index 0000000..a73de60
--- /dev/null
@@ -0,0 +1,90 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils fcaps golang-build systemd user
+
+EGO_PN="github.com/hashicorp/${PN}/..."
+DESCRIPTION="A tool for managing secrets"
+HOMEPAGE="https://vaultproject.io/"
+SRC_URI="https://${EGO_PN%/*}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+SLOT="0"
+LICENSE="MPL-2.0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RESTRICT="test"
+
+DEPEND="dev-go/go-oauth2:="
+RDEPEND=""
+
+STRIP_MASK="*.a"
+
+S="${WORKDIR}/${P}"
+
+FILECAPS=(
+       -m 755 'cap_ipc_lock=+ei' usr/bin/${PN}
+)
+
+pkg_setup() {
+       enewgroup ${PN}
+       enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+src_unpack() {
+       local x
+
+       default
+       mv "${S}" "${S}_"
+       mkdir -p "$(dirname "${S}/src/${EGO_PN%/*}")" || die
+       mv "${S}_" "${S}/src/${EGO_PN%/*}" || die
+
+       # Create a writable GOROOT in order to avoid sandbox violations.
+       export GOROOT="${WORKDIR}/goroot"
+       cp -sR "${EPREFIX}"/usr/lib/go "${GOROOT}" || die
+       rm -rf "${GOROOT}"/{src,pkg/$(go env GOOS)_$(go env GOARCH)}/"${EGO_PN%/*}" || die
+
+       export GOPATH=${S}:${S}/src/github.com/hashicorp/vault/Godeps/_workspace:$(get_golibdir_gopath)
+
+       while read -r -d '' x; do
+               rm -rf "${GOROOT}/src/${x}" "${GOROOT}/pkg/$(go env GOOS)_$(go env GOARCH)/${x}"{,.a} || die
+       done < <(find "${P}/src/github.com/hashicorp/vault/Godeps/_workspace/src" -maxdepth 3 -mindepth 3 -type d -print0)
+}
+
+src_compile() {
+       go build -v -work -x ${EGO_BUILD_FLAGS} "${EGO_PN}" || die
+       go install -v -work -x ${EGO_BUILD_FLAGS} "${EGO_PN}" || die
+}
+
+src_install() {
+       local x
+
+       newinitd "${FILESDIR}/${PN}.initd" "${PN}"
+       newconfd "${FILESDIR}/${PN}.confd" "${PN}"
+       systemd_dounit "${FILESDIR}/${PN}.service"
+
+       keepdir /etc/${PN}.d
+       insinto /etc/${PN}.d
+       doins "${FILESDIR}/"*.json.example
+
+       keepdir /var/log/${PN}
+       fowners ${PN}:${PN} /var/log/${PN}
+
+       dobin "${S}/bin/${PN}"
+
+       find "${S}"/src/${EGO_PN%/*} -mindepth 1 -maxdepth 1 -type f -delete || die
+
+       while read -r -d '' x; do
+               x=${x#${S}/src}
+               [[ -d ${S}/pkg/$(go env GOOS)_$(go env GOARCH)/${x} ||
+                       -f ${S}/pkg/$(go env GOOS)_$(go env GOARCH)/${x}.a ]] && continue
+               rm -rf "${S}"/src/${x}
+       done < <(find "${S}"/src/${EGO_PN%/*} -mindepth 1 -maxdepth 1 -type d -print0)
+       insopts -m0644 -p # preserve timestamps for bug 551486
+       insinto /usr/lib/go/pkg/$(go env GOOS)_$(go env GOARCH)/${GO_PN%/*}
+       doins -r "${S}"/pkg/$(go env GOOS)_$(go env GOARCH)/${EGO_PN%/*}
+       insinto /usr/lib/go/src/${GO_PN%/*}
+       doins -r "${S}"/src/${EGO_PN%/*}
+}