# Build vpcctl binary
FROM openshift/golang-builder@sha256:4820580c3368f320581eb9e32cf97aeec179a86c5749753a14ed76410a293d83 AS vpc-builder
ENV __doozer=update BUILD_RELEASE=202203081809.p0.ge303912.assembly.stream BUILD_VERSION=v4.10.0 OS_GIT_MAJOR=4 OS_GIT_MINOR=10 OS_GIT_PATCH=0 OS_GIT_TREE_STATE=clean OS_GIT_VERSION=4.10.0-202203081809.p0.ge303912.assembly.stream SOURCE_GIT_TREE_STATE=clean 
ENV __doozer=merge OS_GIT_COMMIT=e303912 OS_GIT_VERSION=4.10.0-202203081809.p0.ge303912.assembly.stream-e303912 SOURCE_DATE_EPOCH=1640271368 SOURCE_GIT_COMMIT=e30391202c3f02694b2f5b3c2d73cb560d9c133d SOURCE_GIT_TAG=e303912 SOURCE_GIT_URL=https://github.com/openshift/cloud-provider-ibm 
WORKDIR /build
COPY cloud-provider-vpc-controller .
RUN CGO_ENABLED=0 go build -ldflags "-s -w" -o vpcctl cmd/main.go

# Build IBM cloud controller manager binary
FROM openshift/golang-builder@sha256:4820580c3368f320581eb9e32cf97aeec179a86c5749753a14ed76410a293d83 AS ccm-builder
ENV __doozer=update BUILD_RELEASE=202203081809.p0.ge303912.assembly.stream BUILD_VERSION=v4.10.0 OS_GIT_MAJOR=4 OS_GIT_MINOR=10 OS_GIT_PATCH=0 OS_GIT_TREE_STATE=clean OS_GIT_VERSION=4.10.0-202203081809.p0.ge303912.assembly.stream SOURCE_GIT_TREE_STATE=clean 
ENV __doozer=merge OS_GIT_COMMIT=e303912 OS_GIT_VERSION=4.10.0-202203081809.p0.ge303912.assembly.stream-e303912 SOURCE_DATE_EPOCH=1640271368 SOURCE_GIT_COMMIT=e30391202c3f02694b2f5b3c2d73cb560d9c133d SOURCE_GIT_TAG=e303912 SOURCE_GIT_URL=https://github.com/openshift/cloud-provider-ibm 
WORKDIR /build
COPY . .
RUN CGO_ENABLED=0 go build -ldflags "-s -w" -o ibm-cloud-controller-manager .

# Assemble the final image
FROM openshift/ose-base:v4.10.0.20220308.182903
ENV __doozer=update BUILD_RELEASE=202203081809.p0.ge303912.assembly.stream BUILD_VERSION=v4.10.0 OS_GIT_MAJOR=4 OS_GIT_MINOR=10 OS_GIT_PATCH=0 OS_GIT_TREE_STATE=clean OS_GIT_VERSION=4.10.0-202203081809.p0.ge303912.assembly.stream SOURCE_GIT_TREE_STATE=clean 
ENV __doozer=merge OS_GIT_COMMIT=e303912 OS_GIT_VERSION=4.10.0-202203081809.p0.ge303912.assembly.stream-e303912 SOURCE_DATE_EPOCH=1640271368 SOURCE_GIT_COMMIT=e30391202c3f02694b2f5b3c2d73cb560d9c133d SOURCE_GIT_TAG=e303912 SOURCE_GIT_URL=https://github.com/openshift/cloud-provider-ibm 
COPY --from=vpc-builder /build/vpcctl /bin/vpcctl
COPY --from=ccm-builder /build/ibm-cloud-controller-manager /bin/ibm-cloud-controller-manager
ENTRYPOINT [ "/bin/ibm-cloud-controller-manager" ]

LABEL \
        description="IBM Cloud Controller Manager" \
        name="openshift/ose-ibm-cloud-controller-manager" \
        com.redhat.component="ose-ibm-cloud-controller-manager-container" \
        io.openshift.maintainer.product="OpenShift Container Platform" \
        io.openshift.maintainer.component="Cloud Compute" \
        io.openshift.maintainer.subcomponent="Cloud Controller Manager" \
        release="202203081809.p0.ge303912.assembly.stream" \
        io.openshift.build.commit.id="e30391202c3f02694b2f5b3c2d73cb560d9c133d" \
        io.openshift.build.source-location="https://github.com/openshift/cloud-provider-ibm" \
        io.openshift.build.commit.url="https://github.com/openshift/cloud-provider-ibm/commit/e30391202c3f02694b2f5b3c2d73cb560d9c133d" \
        version="v4.10.0"

