FROM rhel7:7-released AS builder

ARG LINUX_NAME=${ARCH_BASENAME}-linux-amd64

RUN yum install -y git golang patch

COPY ovs-cni-*.tar.gz /usr/lib/golang/src/kubevirt.io/
RUN \
    cd /usr/lib/golang/src/kubevirt.io/ && \
    tar -xzf ovs-cni-*.tar.gz && \
    rm ovs-cni-*.tar.gz && \
    mv ovs-cni-* ovs-cni

WORKDIR /usr/lib/golang/src/kubevirt.io/ovs-cni/

RUN GOOS=linux GOARCH=amd64 go build -i -o /ovs ./cmd/...

FROM rhel7:7-released

RUN mkdir -p /usr/src/ovs-cni/bin
COPY --from=builder /ovs /usr/src/ovs-cni/bin/ovs

CMD ["sh", "-c", "cp /usr/src/ovs-cni/bin/ovs /host/opt/cni/bin/ovs && sleep infinity"]

LABEL com.redhat.component="ovs-cni-plugin-container" \
      name="cnv-tech-preview/ovs-cni-plugin" \
      version="v1.3.0" \
      summary="OVS CNI Plugin" \
      io.openshift.expose-services="" \
      io.openshift.tags="cnv,cni,ovs" \
      io.k8s.display-name="ovs-cni-plugin" \
      maintainer="The KubeVirt Project <kubevirt-dev@googlegroups.com>" \
      description="OVS CNI Plugin"
