diff options
Diffstat (limited to 'app-containers/docker-buildx/docker-buildx-0.10.4.ebuild')
-rw-r--r-- | app-containers/docker-buildx/docker-buildx-0.10.4.ebuild | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/app-containers/docker-buildx/docker-buildx-0.10.4.ebuild b/app-containers/docker-buildx/docker-buildx-0.10.4.ebuild new file mode 100644 index 000000000000..e46ea450eaef --- /dev/null +++ b/app-containers/docker-buildx/docker-buildx-0.10.4.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit go-module + +MY_PN="buildx" +DESCRIPTION="Docker CLI plugin for extended build capabilities with BuildKit" +HOMEPAGE="https://github.com/docker/buildx" +if [[ ${PV} == 9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/docker/buildx.git" +else + SRC_URI="https://github.com/docker/buildx/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm64" + S="${WORKDIR}/${MY_PN}-${PV}" +fi + +LICENSE="Apache-2.0" +SLOT="0" + +# This gives us the ability to neatly `-skip` tests. +# not required once ::gentoo is all > 1.20 +RESTRICT="!test? ( test )" +IUSE="test" + +BDEPEND=" + test? ( >=dev-lang/go-1.20 ) +" +DEPEND="app-containers/docker" +RDEPEND="${DEPEND}" + +src_compile() { + local _buildx_r='github.com/docker/buildx' + local version=${PV} + if [[ ${PV} == 9999 ]]; then + version="$(git rev-parse --short HEAD)" + fi + ego build -mod=vendor -o docker-buildx \ + -ldflags "-linkmode=external \ + -X $_buildx_r/version.Version=${version} \ + -X $_buildx_r/version.Revision=$(date -u +%FT%T%z) \ + -X $_buildx_r/version.Package=$_buildx_r" \ + ./cmd/buildx +} + +src_test() { + # TestGit can't work in a source tarball; TestReadTargets fails seemingly due to parallelism. + if [[ ${PV} == 9999 ]]; then + ego test ./... -skip "TestReadTargets" + else + ego test ./... -skip "TestGit|TestReadTargets" + fi +} + +src_install() { + exeinto /usr/libexec/docker/cli-plugins + doexe docker-buildx + + dodoc README.md +} |