Skip to content

Commit

Permalink
dev-util/packer: new package
Browse files Browse the repository at this point in the history
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: gentoo#10744
Closes: https://bugs.gentoo.org/624472
Package-Manager: Portage-2.3.54, Repoman-2.3.12
Signed-off-by: Dan Molik <[email protected]>
Tested-by: Dan Molik <[email protected]>
Signed-off-by: Georgy Yakovlev <[email protected]>
  • Loading branch information
dmolik authored and gyakovlev committed Jan 6, 2019
1 parent 5b44bc8 commit 70311e8
Show file tree
Hide file tree
Showing 3 changed files with 68 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-util/packer/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DIST packer-1.3.3.tar.gz 8988302 BLAKE2B d6357624f7aa8af73961be9b8f75ec36650d3ccbf299ccdb85776699332fcaa90ff38349837f17962b9587cbbd051a75b0f3429b4459ee9aa46f2a897a3511ed SHA512 fc8965fc4c71d12e2d4bf0c2c7cb565834205749390cdbb879acb23143d4b7f4c566b6513afbec61ad73bf3e08a551ce001367ffad105dba68b72f2092d4bb97
31 changes: 31 additions & 0 deletions dev-util/packer/metadata.xml
Original file line number Diff line number Diff line change
@@ -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>[email protected]</email>
<name>Dan Molik</name>
</maintainer>
<maintainer type="project">
<email>[email protected]</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>
36 changes: 36 additions & 0 deletions dev-util/packer/packer-1.3.3.ebuild
Original file line number Diff line number Diff line change
@@ -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
}

0 comments on commit 70311e8

Please sign in to comment.