build: from: type: docker url: docker://ghcr.io/project-zot/golang:1.22 binds: - ../. -> /zotcopy run: | export GO111MODULE=on export GOPATH='/go' export HOME='/root' export PATH='/go/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' mkdir -p /go/src/github.com/project-zot cd /go/src/github.com/project-zot git clone /zotcopy zot cd /go/src/github.com/project-zot/zot make COMMIT=${{COMMIT}} OS=${{OS}} ARCH=${{ARCH}} clean exporter-minimal cat > config.json << EOF { "Server":{ "protocol":"http", "host": "127.0.0.1", "port": "5000" }, "Exporter":{ "port":"5001", "log":{ "level":"debug" } } } EOF cat config.json mkdir -p /zotcopy/.build/${{REPO_NAME}}/binary mkdir -p /zotcopy/.build/${{REPO_NAME}}/config cp /go/src/github.com/project-zot/zot/bin/zxp-${{OS}}-${{ARCH}} /zotcopy/.build/${{REPO_NAME}}/binary cp /go/src/github.com/project-zot/zot/config.json /zotcopy/.build/${{REPO_NAME}}/config build_only: true "${{REPO_NAME:zxp}}": annotations: org.opencontainers.image.description: "a metrics exporter for zot-minimal image" os: ${{OS}} arch: ${{ARCH}} from: type: docker url: docker://gcr.io/distroless/base-debian12:latest-${{ARCH}} overlay_dirs: - source: ../.build/${{REPO_NAME}}/binary dest: /usr/local/bin - source: ../.build/${{REPO_NAME}}/config dest: /etc/zxp entrypoint: - /usr/local/bin/zxp-${{OS}}-${{ARCH}} cmd: - config - /etc/zxp/config.json