Source
FROM scratch AS build
ARG VERSION
COPY --from=stagex/core-busybox . /
COPY --from=stagex/core-musl . /
COPY --from=stagex/core-python . /
COPY --from=stagex/core-zlib . /
ADD fetch/py-gpep517-${VERSION}.tar.gz .
WORKDIR /gpep517-${VERSION}
COPY <<-'EOF' gpep517-cli
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
from gpep517.__main__ import main
if __name__ == "__main__":
sys.exit(main())
EOF
RUN --network=none <<-EOF
set -eux
sitedir="$(python3 -c 'import site;print(site.getsitepackages()[0])')"
mkdir -p "/rootfs/${sitedir}"
cp -a gpep517 "/rootfs/$sitedir"
python3 -m compileall "/rootfs/$sitedir"
install -Dm755 gpep517-cli /rootfs/usr/bin/gpep517
find /rootfs | grep -E "(/__pycache__$|\.pyc$|\.pyo$)" | xargs rm -rf
EOF
FROM stagex/core-filesystem AS package
COPY --from=build /rootfs/ /