59922af528
Signed-off-by: Alexei Dodon <adodon@cisco.com>
77 lines
1.9 KiB
YAML
77 lines
1.9 KiB
YAML
build:
|
|
from:
|
|
type: docker
|
|
url: docker://ghcr.io/project-zot/golang:1.20
|
|
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}} RELEASE_TAG=${{RELEASE_TAG}} clean binary
|
|
cat > config.json << EOF
|
|
{
|
|
"storage":{
|
|
"rootDirectory":"/var/lib/registry"
|
|
},
|
|
"http":{
|
|
"address":"0.0.0.0",
|
|
"port":"5000"
|
|
},
|
|
"log":{
|
|
"level":"debug"
|
|
},
|
|
"extensions": {
|
|
"search": {
|
|
"enable": true,
|
|
"cve": {
|
|
"updateInterval": "2h"
|
|
}
|
|
},
|
|
"ui": {
|
|
"enable": true
|
|
},
|
|
"mgmt": {
|
|
"enable": true
|
|
}
|
|
}
|
|
}
|
|
EOF
|
|
|
|
cat config.json
|
|
mkdir -p /zotcopy/.build/${{REPO_NAME}}
|
|
cd /zotcopy/.build/${{REPO_NAME}}
|
|
|
|
mkdir -p binary/ cert/ config/
|
|
|
|
cp /go/src/github.com/project-zot/zot/bin/zot-${{OS}}-${{ARCH}} binary/
|
|
cp /go/src/github.com/project-zot/zot/config.json config/
|
|
cp /etc/ssl/certs/ca-certificates.crt cert/
|
|
build_only: true
|
|
|
|
"${{REPO_NAME:zot}}":
|
|
os: ${{OS}}
|
|
arch: ${{ARCH}}
|
|
from:
|
|
type: docker
|
|
url: docker://gcr.io/distroless/base:latest-${{ARCH}}
|
|
overlay_dirs:
|
|
- source: ../.build/${{REPO_NAME}}/binary
|
|
dest: /usr/local/bin
|
|
- source: ../.build/${{REPO_NAME}}/cert
|
|
dest: /etc/ssl/certs
|
|
- source: ../.build/${{REPO_NAME}}/config
|
|
dest: /etc/zot
|
|
entrypoint:
|
|
- /usr/local/bin/zot-${{OS}}-${{ARCH}}
|
|
volumes:
|
|
- /var/lib/registry
|
|
cmd:
|
|
- serve
|
|
- /etc/zot/config.json
|