zotregistry.io/zot@v1.4.4-0.20231124084042-02a8ed785457/build/stacker.yaml (about)

     1  build:
     2    from:
     3      type: docker
     4      url: docker://ghcr.io/project-zot/golang:1.20
     5    binds:
     6      - ../. -> /zotcopy
     7    run: |
     8      export GO111MODULE=on
     9      export GOPATH='/go'
    10      export HOME='/root'
    11      export PATH='/go/bin:/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
    12      mkdir -p /go/src/github.com/project-zot
    13      cd /go/src/github.com/project-zot
    14      git clone /zotcopy zot
    15      cd /go/src/github.com/project-zot/zot
    16      make COMMIT=${{COMMIT}} OS=${{OS}} ARCH=${{ARCH}} RELEASE_TAG=${{RELEASE_TAG}} clean binary
    17      cat > config.json << EOF
    18      {
    19        "storage":{
    20            "rootDirectory":"/var/lib/registry"
    21        },
    22        "http":{
    23            "address":"0.0.0.0",
    24            "port":"5000"
    25        },
    26        "log":{
    27            "level":"debug"
    28        },
    29        "extensions": {
    30          "search": {
    31              "enable": true,
    32              "cve": {
    33                  "updateInterval": "2h"
    34              }
    35          },
    36          "ui": {
    37              "enable": true
    38          },
    39          "mgmt": {
    40            "enable": true
    41          }
    42        }
    43      }
    44      EOF
    45  
    46      cat config.json
    47      mkdir -p /zotcopy/.build/${{REPO_NAME}}
    48      cd /zotcopy/.build/${{REPO_NAME}}
    49  
    50      mkdir -p binary/ cert/ config/
    51  
    52      cp /go/src/github.com/project-zot/zot/bin/zot-${{OS}}-${{ARCH}} binary/
    53      cp /go/src/github.com/project-zot/zot/config.json config/
    54      cp /etc/ssl/certs/ca-certificates.crt cert/
    55    build_only: true
    56  
    57  "${{REPO_NAME:zot}}":
    58    os: ${{OS}}
    59    arch: ${{ARCH}}
    60    from:
    61      type: docker
    62      url: docker://gcr.io/distroless/base-debian12:latest-${{ARCH}}
    63    overlay_dirs:
    64      - source: ../.build/${{REPO_NAME}}/binary
    65        dest: /usr/local/bin
    66      - source: ../.build/${{REPO_NAME}}/cert
    67        dest: /etc/ssl/certs
    68      - source: ../.build/${{REPO_NAME}}/config
    69        dest: /etc/zot
    70    entrypoint:
    71      - /usr/local/bin/zot-${{OS}}-${{ARCH}}
    72    volumes:
    73      - /var/lib/registry
    74    cmd:
    75      - serve
    76      - /etc/zot/config.json