FROM openshift/golang-builder:rhel_8_golang_1.15 AS builder
ENV __doozer=update BUILD_RELEASE=202103270130.p0 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-202103270130.p0 SOURCE_GIT_TREE_STATE=clean 
ENV __doozer=merge KUBE_GIT_COMMIT=bafe72fb05eddc8246040b9945ec242b9f805935 KUBE_GIT_MAJOR=1 KUBE_GIT_MINOR=20+ KUBE_GIT_TREE_STATE=clean KUBE_GIT_VERSION=v1.20.0+bafe72f OS_GIT_COMMIT=bafe72f OS_GIT_VERSION=4.7.0-202103270130.p0-bafe72f SOURCE_DATE_EPOCH=1615737699 SOURCE_GIT_COMMIT=bafe72fb05eddc8246040b9945ec242b9f805935 SOURCE_GIT_TAG=v1.20.0-1054-gbafe72fb05e SOURCE_GIT_URL=https://github.com/openshift/kubernetes 
WORKDIR /go/src/k8s.io/kubernetes
COPY . .
RUN make WHAT='cmd/kube-apiserver cmd/kube-controller-manager cmd/kube-scheduler cmd/kubelet cmd/watch-termination' && \
    mkdir -p /tmp/build && \
    cp openshift-hack/images/hyperkube/hyperkube /tmp/build && \
    cp /go/src/k8s.io/kubernetes/_output/local/bin/linux/$(go env GOARCH)/{kube-apiserver,kube-controller-manager,kube-scheduler,kubelet,watch-termination} \
    /tmp/build

FROM openshift/ose-base:v4.7.0.20210327.020238
ENV __doozer=update BUILD_RELEASE=202103270130.p0 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-202103270130.p0 SOURCE_GIT_TREE_STATE=clean 
ENV __doozer=merge KUBE_GIT_COMMIT=bafe72fb05eddc8246040b9945ec242b9f805935 KUBE_GIT_MAJOR=1 KUBE_GIT_MINOR=20+ KUBE_GIT_TREE_STATE=clean KUBE_GIT_VERSION=v1.20.0+bafe72f OS_GIT_COMMIT=bafe72f OS_GIT_VERSION=4.7.0-202103270130.p0-bafe72f SOURCE_DATE_EPOCH=1615737699 SOURCE_GIT_COMMIT=bafe72fb05eddc8246040b9945ec242b9f805935 SOURCE_GIT_TAG=v1.20.0-1054-gbafe72fb05e SOURCE_GIT_URL=https://github.com/openshift/kubernetes 
RUN yum install -y --setopt=tsflags=nodocs --setopt=skip_missing_names_on_install=False iproute && yum clean all
COPY --from=builder /tmp/build/* /usr/bin/

LABEL \
        io.k8s.display-name="OpenShift Kubernetes Server Commands" \
        io.k8s.description="OpenShift is a platform for developing, building, and deploying containerized applications." \
        io.openshift.tags="openshift,hyperkube" \
        io.openshift.build.versions="kubernetes=1.20.0-beta.2" \
        License="GPLv2+" \
        vendor="Red Hat" \
        name="openshift/ose-hyperkube" \
        com.redhat.component="openshift-enterprise-hyperkube-container" \
        io.openshift.maintainer.product="OpenShift Container Platform" \
        release="202103270130.p0" \
        io.openshift.build.commit.id="bafe72fb05eddc8246040b9945ec242b9f805935" \
        io.openshift.build.source-location="https://github.com/openshift/kubernetes" \
        io.openshift.build.commit.url="https://github.com/openshift/kubernetes/commit/bafe72fb05eddc8246040b9945ec242b9f805935" \
        version="v4.7.0"

