# This Dockerfile builds an image containing the Mac and Windows version of oc
# layered on top of the Linux cli image.
FROM openshift/golang-builder:1.15 AS builder
ENV __doozer=update BUILD_RELEASE=202107141046.p0.git.8b4b094.assembly.stream BUILD_VERSION=v4.7.0 OS_GIT_MAJOR=4 OS_GIT_MINOR=7 OS_GIT_PATCH=0 OS_GIT_TREE_STATE=clean OS_GIT_VERSION=4.7.0-202107141046.p0.git.8b4b094.assembly.stream SOURCE_GIT_TREE_STATE=clean 
ENV __doozer=merge KUBE_GIT_COMMIT=8b4b09487463415374368af3bbc4ff2e6366477b KUBE_GIT_MAJOR=1 KUBE_GIT_MINOR=13+ KUBE_GIT_TREE_STATE=clean KUBE_GIT_VERSION=v1.13.0+8b4b094 OS_GIT_COMMIT=8b4b094 OS_GIT_VERSION=4.7.0-202107141046.p0.git.8b4b094.assembly.stream-8b4b094 SOURCE_DATE_EPOCH=1624652768 SOURCE_GIT_COMMIT=8b4b09487463415374368af3bbc4ff2e6366477b SOURCE_GIT_TAG=openshift-clients-4.6.0-202006250705.p0-344-g8b4b09487 SOURCE_GIT_URL=https://github.com/openshift/oc 
WORKDIR /go/src/github.com/openshift/oc
COPY . .
RUN make cross-build --warn-undefined-variables

FROM openshift/ose-cli:v4.7.0.20210714.105810
ENV __doozer=update BUILD_RELEASE=202107141046.p0.git.8b4b094.assembly.stream BUILD_VERSION=v4.7.0 OS_GIT_MAJOR=4 OS_GIT_MINOR=7 OS_GIT_PATCH=0 OS_GIT_TREE_STATE=clean OS_GIT_VERSION=4.7.0-202107141046.p0.git.8b4b094.assembly.stream SOURCE_GIT_TREE_STATE=clean 
ENV __doozer=merge KUBE_GIT_COMMIT=8b4b09487463415374368af3bbc4ff2e6366477b KUBE_GIT_MAJOR=1 KUBE_GIT_MINOR=13+ KUBE_GIT_TREE_STATE=clean KUBE_GIT_VERSION=v1.13.0+8b4b094 OS_GIT_COMMIT=8b4b094 OS_GIT_VERSION=4.7.0-202107141046.p0.git.8b4b094.assembly.stream-8b4b094 SOURCE_DATE_EPOCH=1624652768 SOURCE_GIT_COMMIT=8b4b09487463415374368af3bbc4ff2e6366477b SOURCE_GIT_TAG=openshift-clients-4.6.0-202006250705.p0-344-g8b4b09487 SOURCE_GIT_URL=https://github.com/openshift/oc 
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/darwin_amd64/oc /usr/share/openshift/mac/oc
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/windows_amd64/oc.exe /usr/share/openshift/windows/oc.exe
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/linux_amd64/oc /usr/share/openshift/linux_amd64/oc
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/linux_arm64/oc /usr/share/openshift/linux_arm64/oc
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/linux_ppc64le/oc /usr/share/openshift/linux_ppc64le/oc
COPY --from=builder /go/src/github.com/openshift/oc/_output/bin/linux_s390x/oc /usr/share/openshift/linux_s390x/oc
COPY --from=builder /go/src/github.com/openshift/oc/LICENSE /usr/share/openshift/LICENSE

LABEL \
        io.k8s.display-name="OpenShift Clients" \
        io.k8s.description="OpenShift is a platform for developing, building, and deploying containerized applications." \
        io.openshift.tags="openshift,cli" \
        name="openshift/ose-cli-artifacts" \
        com.redhat.component="ose-cli-artifacts-container" \
        io.openshift.maintainer.product="OpenShift Container Platform" \
        io.openshift.maintainer.component="oc" \
        release="202107141046.p0.git.8b4b094.assembly.stream" \
        io.openshift.build.commit.id="8b4b09487463415374368af3bbc4ff2e6366477b" \
        io.openshift.build.source-location="https://github.com/openshift/oc" \
        io.openshift.build.commit.url="https://github.com/openshift/oc/commit/8b4b09487463415374368af3bbc4ff2e6366477b" \
        version="v4.7.0"

