summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Molik <dan@danmolik.com>2019-01-05 07:01:08 -0500
committerGeorgy Yakovlev <gyakovlev@gentoo.org>2019-01-06 14:46:20 -0800
commit70311e8fba3a14b5e5680970a6ceff9424603323 (patch)
treed1a206d67822cc06aafa4c4ece5f405325249e43
parentapp-arch/tar: arm64 stable (bug #674210) (diff)
downloadgentoo-70311e8fba3a14b5e5680970a6ceff9424603323.tar.gz
gentoo-70311e8fba3a14b5e5680970a6ceff9424603323.tar.bz2
gentoo-70311e8fba3a14b5e5680970a6ceff9424603323.zip
dev-util/packer: new package
Adding Hashicorp's packer utility to better support automated image building. One can find documentation here: https://packer.io and find the code base here: https://github.com/hashicorp/packer Closes: https://github.com/gentoo/gentoo/pull/10744 Closes: https://bugs.gentoo.org/624472 Package-Manager: Portage-2.3.54, Repoman-2.3.12 Signed-off-by: Dan Molik <dan@danmolik.com> Tested-by: Dan Molik <dan@danmolik.com> Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
-rw-r--r--dev-util/packer/Manifest1
-rw-r--r--dev-util/packer/metadata.xml31
-rw-r--r--dev-util/packer/packer-1.3.3.ebuild36
3 files changed, 68 insertions, 0 deletions
diff --git a/dev-util/packer/Manifest b/dev-util/packer/Manifest
new file mode 100644
index 000000000000..cdad351d0861
--- /dev/null
+++ b/dev-util/packer/Manifest
@@ -0,0 +1 @@
+DIST packer-1.3.3.tar.gz 8988302 BLAKE2B d6357624f7aa8af73961be9b8f75ec36650d3ccbf299ccdb85776699332fcaa90ff38349837f17962b9587cbbd051a75b0f3429b4459ee9aa46f2a897a3511ed SHA512 fc8965fc4c71d12e2d4bf0c2c7cb565834205749390cdbb879acb23143d4b7f4c566b6513afbec61ad73bf3e08a551ce001367ffad105dba68b72f2092d4bb97
diff --git a/dev-util/packer/metadata.xml b/dev-util/packer/metadata.xml
new file mode 100644
index 000000000000..bda27c75a682
--- /dev/null
+++ b/dev-util/packer/metadata.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>dan@danmolik.com</email>
+ <name>Dan Molik</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <longdescription lang="en">
+ Packer is an open source tool for creating identical machine images for
+ multiple platforms from a single source configuration. Packer is lightweight,
+ runs on every major operating system, and is highly performant, creating
+ machine images for multiple platforms in parallel. Packer does not replace
+ configuration management like Chef or Puppet. In fact, when building images,
+ Packer is able to use tools like Chef or Puppet to install software onto the
+ image.
+
+ A machine image is a single static unit that contains a pre-configured
+ operating system and installed software which is used to quickly create new
+ running machines. Machine image formats change for each platform. Some
+ examples include AMIs for EC2, VMDK/VMX files for VMware, OVF exports for
+ VirtualBox, etc.
+ </longdescription>
+ <upstream>
+ <changelog>https://github.com/hashicorp/packer/blob/master/CHANGELOG.md</changelog>
+ <remote-id type="github">hashicorp/packer</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-util/packer/packer-1.3.3.ebuild b/dev-util/packer/packer-1.3.3.ebuild
new file mode 100644
index 000000000000..8cae3f47d007
--- /dev/null
+++ b/dev-util/packer/packer-1.3.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit golang-vcs-snapshot
+
+DESCRIPTION="A tool to create identical machine images for multiple platforms"
+HOMEPAGE="https://www.packer.io"
+
+EGO_PN="github.com/hashicorp/packer"
+SRC_URI="https://github.com/hashicorp/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+DEPEND=">=dev-lang/go-1.11.0"
+
+DOCS="README.md CHANGELOG.md"
+
+src_compile() {
+ cd "src/${EGO_PN}" || die
+ GOPATH="${S}" GOCACHE="${T}/go-cache" go build \
+ -v -work -o "${S}/${PN}" ./ || die
+}
+
+src_install() {
+ dobin packer
+
+ pushd "src/${EGO_PN}" || die
+ einstalldocs
+ insinto /usr/share/zsh/site-functions
+ doins contrib/zsh-completion/_packer
+ popd || die
+}