blob: 1fdcc2e42e58ec45a1a1c8790c7f59f9851a3fe2 [file] [log] [blame]
Mohammed Naser19d63122024-01-08 17:10:05 -05001VERSION 0.7
2
3ARG --global SERIES=23.03
4ARG --global VERSION=23.03.0-69
5
Mohammed Naser12207172024-02-05 18:49:35 -05006ovn-kubernetes:
Mohammed Naser9b33fd72024-02-06 10:27:56 -05007 FROM --platform=linux/amd64 golang:1.20
Mohammed Naser12207172024-02-05 18:49:35 -05008 GIT CLONE --branch master https://github.com/ovn-org/ovn-kubernetes /src
9 WORKDIR /src
10 COPY patches/ovn-kubernetes /patches
11 DO ../+APT_INSTALL --PACKAGES "git"
12 RUN git apply --verbose /patches/*.patch
13 SAVE ARTIFACT /src/dist/images/ovndb-raft-functions.sh
14 SAVE ARTIFACT /src/dist/images/ovnkube.sh
Mohammed Naser9b33fd72024-02-06 10:27:56 -050015 ARG GOOS=linux
16 ARG GOARCH=amd64
Mohammed Naser12207172024-02-05 18:49:35 -050017 RUN \
18 cd /src/go-controller && \
19 go build -o /build/ovn-kube-util ./cmd/ovn-kube-util
20 SAVE ARTIFACT /build/ovn-kube-util
21
Mohammed Naser19d63122024-01-08 17:10:05 -050022component-image:
23 FROM ../openvswitch+platform-image
24 DO ../+DNF_INSTALL --PACKAGES "firewalld-filesystem hostname ovn${SERIES}-${VERSION}.el9s procps-ng"
25 ARG --required NAME
26 DO ../+DNF_INSTALL --PACKAGES "ovn${SERIES}-${NAME}-${VERSION}.el9s"
Mohammed Naser12207172024-02-05 18:49:35 -050027 COPY ../kubernetes+image/kubectl /usr/local/bin/kubectl
28 COPY +ovn-kubernetes/ovndb-raft-functions.sh /root
29 COPY +ovn-kubernetes/ovnkube.sh /root
Mohammed Naser9b33fd72024-02-06 10:27:56 -050030 ARG TARGETARCH
31 ARG TARGETVARIANT
32 COPY (+ovn-kubernetes/ovn-kube-util --GOARCH=$TARGETARCH --VARIANT=$TARGETVARIANT) /usr/bin
Mohammed Naser1dfea6b2024-02-09 01:04:26 -050033 ARG REGISTRY=ghcr.io/vexxhost/atmosphere
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