pantry/projects/podman.io/package.yml
Jacob Heider 856c9e3901 fix(podman)
closes #4229
2023-11-27 17:16:16 -05:00

67 lines
2 KiB
YAML

distributable:
url: https://github.com/containers/podman/archive/refs/tags/v{{version}}.tar.gz
strip-components: 1
versions:
github: containers/podman/releases/tags
provides:
linux:
- bin/podman
- bin/podman-remote
darwin:
- bin/podman
- bin/podman-remote
- bin/podman-mac-helper
dependencies:
qemu.org: '*'
github.com/containers/gvisor-tap-vsock: '*'
build:
dependencies:
go.dev: ^1.18
gnu.org/coreutils: '*'
script:
# podman searches a compile-time configured set of paths for helper binaries
# so we add a relative lookup for the major version of gvproxy we require
- run: |
sed -i.bak -f $PROP config_{darwin,linux}.go
rm config_{darwin,linux}.go.bak
working-directory: vendor/github.com/containers/common/pkg/config
prop: |-
s_\(^var defaultHelperBinariesDir.*\)_\
\1\n "\$BINDIR/../../../$GVISOR_MAJOR/bin",_
- mkdir -p "{{ prefix }}"/bin
- make --jobs {{ hw.concurrency }} podman-remote
- run: |
mv bin/podman-remote "{{ prefix }}"/bin/
ln -s podman-remote "{{ prefix }}"/bin/podman
if: linux
- run: |
make --jobs {{ hw.concurrency }} podman-mac-helper
mv bin/darwin/podman{-mac-helper,} "{{ prefix }}"/bin/
ln -s podman "{{ prefix }}"/bin/podman-remote
if: darwin
env:
# path for gvproxy to add to platform config
GVISOR_MAJOR: |-
$(cd "{{deps.github.com/containers/gvisor-tap-vsock.prefix}}/../\
/v{{deps.github.com/containers/gvisor-tap-vsock.version.major}}" \
&& pwd | sed -e "s_$PKGX_DIR/__")
CGO_ENABLED: 1
linux:
EXTRA_LDFLAGS: -buildmode=pie
test:
script:
- podman-remote -v | grep "podman-remote version {{ version }}"
- (podman info 2>&1 || true) | grep "Cannot connect to Podman."
# won't run as root
- |
if test $(id -g) != 0; then
(podman machine init --image-path fake-testimage fake-testvm 2>&1 || true) | grep 'Error: open fake-testimage: no such file or directory'
fi