blob: 19cbcd064ac9f111e89c94fcb9ad622a06332211 [file] [log] [blame]
Mohammed Naser86615772024-06-01 10:02:09 -04001# SPDX-License-Identifier: Apache-2.0
Rico Lin81e4e362024-11-01 12:46:23 +08002# Atmosphere-Rebuild-Time: 2024-10-31T12:56:04Z
Mohammed Naserda994232024-04-13 12:34:01 -04003
Mohammed Naserbcd53112025-01-15 16:49:44 -05004ARG REGISTRY
Mohammed Naserd30f18d2024-04-17 01:20:43 -04005ARG RELEASE
6
Mohammed Naser4ad7b512024-12-11 23:34:48 -05007FROM 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 Naserbcd53112025-01-15 16:49:44 -050017FROM ${REGISTRY}/openvswitch:${RELEASE}
Yaguang Tange4321552025-01-17 20:14:29 +080018ENV OVS_USER_ID=42424
Tadas Sutkaitis1bb945e2024-06-21 08:46:05 +030019ARG TARGETPLATFORM
20ADD --chmod=755 https://dl.k8s.io/release/v1.29.3/bin/${TARGETPLATFORM}/kubectl /usr/local/bin/kubectl
Mohammed Nasere786d962024-06-26 01:08:34 -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 Tange4321552025-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