blob: 2ff42542ec2f7289a93e347b865bb14cfa9a7b94 [file] [log] [blame]
Mohammed Naser19d63122024-01-08 17:10:05 -05001VERSION 0.7
2
Mohammed Naser12207172024-02-05 18:49:35 -05003ARG --global REGISTRY=ghcr.io/vexxhost/atmosphere
Mohammed Naser19d63122024-01-08 17:10:05 -05004ARG --global SERIES=23.03
5ARG --global VERSION=23.03.0-69
6
Mohammed Naser12207172024-02-05 18:49:35 -05007ovn-kubernetes:
Mohammed Naser9b33fd72024-02-06 10:27:56 -05008 FROM --platform=linux/amd64 golang:1.20
Mohammed Naser12207172024-02-05 18:49:35 -05009 GIT CLONE --branch master https://github.com/ovn-org/ovn-kubernetes /src
10 WORKDIR /src
11 COPY patches/ovn-kubernetes /patches
12 DO ../+APT_INSTALL --PACKAGES "git"
13 RUN git apply --verbose /patches/*.patch
14 SAVE ARTIFACT /src/dist/images/ovndb-raft-functions.sh
15 SAVE ARTIFACT /src/dist/images/ovnkube.sh
Mohammed Naser9b33fd72024-02-06 10:27:56 -050016 ARG GOOS=linux
17 ARG GOARCH=amd64
Mohammed Naser12207172024-02-05 18:49:35 -050018 RUN \
19 cd /src/go-controller && \
20 go build -o /build/ovn-kube-util ./cmd/ovn-kube-util
21 SAVE ARTIFACT /build/ovn-kube-util
22
Mohammed Naser19d63122024-01-08 17:10:05 -050023component-image:
24 FROM ../openvswitch+platform-image
25 DO ../+DNF_INSTALL --PACKAGES "firewalld-filesystem hostname ovn${SERIES}-${VERSION}.el9s procps-ng"
26 ARG --required NAME
27 DO ../+DNF_INSTALL --PACKAGES "ovn${SERIES}-${NAME}-${VERSION}.el9s"
Mohammed Naser12207172024-02-05 18:49:35 -050028 COPY ../kubernetes+image/kubectl /usr/local/bin/kubectl
29 COPY +ovn-kubernetes/ovndb-raft-functions.sh /root
30 COPY +ovn-kubernetes/ovnkube.sh /root
Mohammed Naser9b33fd72024-02-06 10:27:56 -050031 ARG TARGETARCH
32 ARG TARGETVARIANT
33 COPY (+ovn-kubernetes/ovn-kube-util --GOARCH=$TARGETARCH --VARIANT=$TARGETVARIANT) /usr/bin
Mohammed Naser19d63122024-01-08 17:10:05 -050034 SAVE IMAGE --push \
Mohammed Naser12207172024-02-05 18:49:35 -050035 ${REGISTRY}/ovn-${NAME}:${SERIES} \
36 ${REGISTRY}/ovn-${NAME}:${VERSION}
Mohammed Naser19d63122024-01-08 17:10:05 -050037
38central:
39 BUILD +component-image --NAME central
40
41host:
42 BUILD +component-image --NAME host
43
44images:
45 BUILD +central
46 BUILD --platform linux/amd64 --platform linux/arm64 +host