blob: d9a192b38721a6e86936f41b27af7ad6f9b3e58f [file] [log] [blame]
Mohammed Naser86615772024-06-01 10:02:09 -04001# SPDX-License-Identifier: Apache-2.0
vexxhost-botc2fd4282024-06-26 07:04:25 +02002# Atmosphere-Rebuild-Time: 2024-06-25T13:53:44Z
Mohammed Naserda994232024-04-13 12:34:01 -04003
Mohammed Nasere5b6ff72025-01-15 16:49:44 -05004ARG REGISTRY
Mohammed Naserd30f18d2024-04-17 01:20:43 -04005ARG RELEASE
6
Yaguang Tang0953b612024-12-13 04:14:34 +08007FROM harbor.atmosphere.dev/docker.io/library/golang:1.20 AS ovn-kubernetes
Rico Lin1b101192024-04-16 05:57:09 +08008ARG OVN_KUBERNETES_REF=5359e7d7f872058b6e5bf884c9f19d1922451f29
Mohammed Naserda994232024-04-13 12:34:01 -04009ADD https://github.com/ovn-org/ovn-kubernetes.git#${OVN_KUBERNETES_REF} /src
10COPY patches/ovn-kubernetes /patches/ovn-kubernetes
11RUN git -C /src apply --verbose /patches/ovn-kubernetes/*
12RUN <<EOF bash -xe
13cd /src/go-controller
14go build -o /usr/bin/ovn-kube-util ./cmd/ovn-kube-util
15EOF
16
Mohammed Nasere5b6ff72025-01-15 16:49:44 -050017FROM ${REGISTRY}/openvswitch:${RELEASE}
Yaguang Tang6db2e112025-01-17 20:14:29 +080018ENV OVS_USER_ID=42424
vexxhost-botf77e4ba2024-06-21 14:24:28 +020019ARG TARGETPLATFORM
20ADD --chmod=755 https://dl.k8s.io/release/v1.29.3/bin/${TARGETPLATFORM}/kubectl /usr/local/bin/kubectl
Mohammed Naser2433adc2024-06-26 15:34:45 -040021ARG OVN_SERIES=24.03
22ARG OVN_VERSION=${OVN_SERIES}.1-44
Mohammed Naserda994232024-04-13 12:34:01 -040023RUN <<EOF sh -xe
24dnf -y --setopt=install_weak_deps=False --setopt=tsflags=nodocs install \
25 firewalld-filesystem hostname ovn${OVN_SERIES}-${OVN_VERSION}.el9s procps-ng
26dnf -y clean all
27rm -rf /var/cache/dnf
28EOF
29ARG OVN_COMPONENT
30RUN <<EOF sh -xe
31dnf -y --setopt=install_weak_deps=False --setopt=tsflags=nodocs install \
32 ovn${OVN_SERIES}-${OVN_COMPONENT}-${OVN_VERSION}.el9s
33dnf -y clean all
34rm -rf /var/cache/dnf
35EOF
36COPY --from=ovn-kubernetes --link /src/dist/images/ovndb-raft-functions.sh /root/ovndb-raft-functions.sh
37COPY --from=ovn-kubernetes --link /src/dist/images/ovnkube.sh /root/ovnkube.sh
38COPY --from=ovn-kubernetes --link /usr/bin/ovn-kube-util /usr/bin/ovn-kube-util
Yaguang Tang6db2e112025-01-17 20:14:29 +080039
40RUN <<EOF bash -xe
41 usermod -u 42424 openvswitch
42 mkdir -p /var/log/ovn /var/lib/ovn /var/run/ovn
43 chown -Rv 42424:42424 /var/log/ovn /var/lib/ovn /var/run/ovn
44EOF