summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Barć <xgqt@gentoo.org>2023-08-03 17:38:40 +0200
committerMaciej Barć <xgqt@gentoo.org>2023-08-03 21:03:12 +0200
commit5001d33528d66ca31881ff152b326d754d06926f (patch)
tree60e174bc11f200a7403336210b5267bd08ef54e8
parentnet-misc/gallery-dl: Stabilize 1.25.7 arm64, #911670 (diff)
downloadgentoo-5001d33528d66ca31881ff152b326d754d06926f.tar.gz
gentoo-5001d33528d66ca31881ff152b326d754d06926f.tar.bz2
gentoo-5001d33528d66ca31881ff152b326d754d06926f.zip
app-containers/earthly: new package; add 0.7.14
Signed-off-by: Maciej Barć <xgqt@gentoo.org>
-rw-r--r--app-containers/earthly/Manifest2
-rw-r--r--app-containers/earthly/earthly-0.7.14.ebuild74
-rw-r--r--app-containers/earthly/metadata.xml22
3 files changed, 98 insertions, 0 deletions
diff --git a/app-containers/earthly/Manifest b/app-containers/earthly/Manifest
new file mode 100644
index 000000000000..ba0aba65424e
--- /dev/null
+++ b/app-containers/earthly/Manifest
@@ -0,0 +1,2 @@
+DIST earthly-0.7.14-deps.tar.xz 152887572 BLAKE2B a5cb8940b863d1f0ef6caf976a59b03cc6cbb422c66ed30eff3597631073caeeb09397a81116ff5d0c70d7c10c98d8016379b079c95a83ef0e06557e08b7e166 SHA512 8d7014b67cdf55311fad0be48c068b2338136d21ab1b98df571c38b74cd1f8b5711b5c3d9e52fc2d2365bfb1cd3fe4a5a39c4955a176f1cce07d6d59f7f7da24
+DIST earthly-0.7.14.tar.gz 7750445 BLAKE2B 7333342c85fe2c7efb0bd5222e2ce1e820886b851f43945098bff0f0326ac1f881305fe5b909bcc1c14f427dfdcb3ace2e32aa299cd38d94c9b0a7c8bd95e82f SHA512 a739bb1d2eb46285a545e831f9f40ebc6d3954e791687bb79bef8ff02a719ec72d970860de9319bb825a917a83b621e7745eb34dbe11bd66239c819a9fc46840
diff --git a/app-containers/earthly/earthly-0.7.14.ebuild b/app-containers/earthly/earthly-0.7.14.ebuild
new file mode 100644
index 000000000000..857cb5a898c3
--- /dev/null
+++ b/app-containers/earthly/earthly-0.7.14.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Build automation tool that executes in containers"
+HOMEPAGE="https://earthly.dev/
+ https://github.com/earthly/earthly/"
+SRC_URI="
+ https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz
+ -> ${P}.tar.gz
+ https://dev.gentoo.org/~xgqt/distfiles/deps/${P}-deps.tar.xz
+"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ || (
+ app-containers/docker
+ app-containers/podman
+ )
+"
+
+DOCS=( CHANGELOG.md CONTRIBUTING.md README.md )
+
+src_compile() {
+ mkdir -p bin || die
+
+ # Git SHA is needed at runtime by earthly to pull and bootstrap images.
+ local git_sha
+ if [[ ${PV} == 0.7.14 ]] ; then
+ git_sha=e665c11fdfbe594cc23a1df09e2d6249e4c02241
+ else
+ die 'Could not detect "git_sha", please update the ebuild.'
+ fi
+
+ local go_tags="dfrunmount,dfrunsecurity,dfsecrets,dfssh,dfrunnetwork,dfheredoc,forceposix"
+ local go_ldflags="
+ -X main.DefaultBuildkitdImage=docker.io/earthly/buildkitd:v${PV}
+ -X main.GitSha=${git_sha}
+ -X main.Version=v${PV}
+ "
+ local -a go_buildargs=(
+ -tags "${go_tags}"
+ -ldflags "${go_ldflags}"
+ -o bin
+ )
+ ego build "${go_buildargs[@]}" ./cmd/...
+}
+
+src_install() {
+ exeinto /usr/bin
+ doexe bin/earthly
+ newexe bin/debugger earthly-debugger
+
+ einstalldocs
+}
+
+pkg_postinst() {
+ if has_version "app-containers/podman" ; then
+ ewarn "Podman is supported but not recommended."
+ ewarn "If issues arise, then please try running earthly with docker."
+ fi
+
+ if has_version "app-containers/podman[rootless]" ; then
+ ewarn "Running podman in rootless mode is not supported because"
+ ewarn "earthly/dind and earthly/buildkit require privileged access."
+ ewarn "For more info see: https://docs.earthly.dev/docs/guides/podman/"
+ fi
+}
diff --git a/app-containers/earthly/metadata.xml b/app-containers/earthly/metadata.xml
new file mode 100644
index 000000000000..f0f168c87b07
--- /dev/null
+++ b/app-containers/earthly/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+
+<pkgmetadata>
+ <maintainer type="person">
+ <email>xgqt@gentoo.org</email>
+ <name>Maciej Barć</name>
+ </maintainer>
+ <longdescription>
+ Earthly is a versatile, approachable CI/CD framework that runs every
+ pipeline inside containers, giving you repeatable builds that you write
+ once and run anywhere. It has a super simple, instantly recognizable syntax
+ that is easy to write and understand – like Dockerfile and Makefile had a
+ baby. And it leverages and augments popular build tools instead of
+ replacing them, so you don’t have to rewrite all your builds no matter what
+ languages you use.
+ </longdescription>
+ <upstream>
+ <bugs-to>https://github.com/earthly/earthly/issues/</bugs-to>
+ <remote-id type="github">earthly/earthly</remote-id>
+ </upstream>
+</pkgmetadata>