#@follow_tag(registry.redhat.io/rhel8-2-els/rhel)
FROM registry.redhat.io/rhel8-2-els/rhel:8.2-7 AS builder

ENV GOPATH=/go

RUN echo -e "[go-toolset]\nname=go-toolset\nprofiles=\nstate=enabled\nstream=rhel8" > /etc/dnf/modules.d/go-toolset.module \
    && dnf install -y go-compilers-golang-compiler tar gzip
COPY ovs-cni-*.tar.gz /go/src/github.com/kubevirt/
RUN \
    cd /go/src/github.com/kubevirt/ && \
    tar -xzf ovs-cni-*.tar.gz && \
    rm ovs-cni-*.tar.gz && \
    mv ovs-cni-* ovs-cni

WORKDIR /go/src/github.com/kubevirt/ovs-cni/

RUN \
    GOOS=linux \
    GOARCH=amd64 \
    CGO_ENABLED=0 \
    GOFLAGS=-mod=vendor \
    go build -tags no_openssl -i -o /ovs-marker ./cmd/marker

#@follow_tag(registry.redhat.io/rhel8-2-els/rhel)
FROM registry.redhat.io/rhel8-2-els/rhel:8.2-7

RUN dnf install -y openvswitch2.11
RUN mkdir -p /usr/src/ovs-cni/bin
COPY --from=builder /ovs-marker /usr/src/ovs-cni/bin/ovs-marker

ENTRYPOINT [ "/usr/src/ovs-cni/bin/ovs-marker", "-v", "3", "-logtostderr"]

LABEL com.redhat.component="ovs-cni-marker-container" \
      name="container-native-virtualization/ovs-cni-marker" \
      version="v2.4.6" \
      summary="OVS CNI Marker" \
      io.openshift.expose-services="" \
      io.openshift.tags="cnv,ovs" \
      io.k8s.display-name="ovs-cni-marker" \
      maintainer="phoracek@redhat.com" \
      description="OVS CNI Marker"
