Skip to content

Commit bc2fec2

Browse files
Merge pull request #269 from r4f4/installer-etcd-add-native
CORS-3191: DOWNSTREAM <carry>: add native binary to installer images
2 parents f6dd3fb + f04df1e commit bc2fec2

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

Dockerfile.installer

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,22 @@ WORKDIR /go/src/go.etcd.io/etcd
2525
COPY . .
2626
RUN CGO_ENABLED=0 GOOS=linux GOARCH=arm64 GOFLAGS='-mod=readonly' GO_BUILD_FLAGS='-v' ./build.sh
2727

28+
FROM registry.ci.openshift.org/ocp/builder:rhel-9-golang-1.20-openshift-4.16 AS builder
29+
ENV GO_COMPLIANCE_EXCLUDE=".*"
30+
WORKDIR /go/src/go.etcd.io/etcd
31+
COPY . .
32+
RUN CGO_ENABLED=0 GOFLAGS='-mod=readonly' GO_BUILD_FLAGS='-v' ./build.sh
33+
RUN mkdir -p /usr/share/openshift/$(go env GOOS)/$(go env GOHOSTARCH) && \
34+
mv bin/etcd /usr/share/openshift/$(go env GOOS)/$(go env GOHOSTARCH)/
35+
2836
# stage 2
2937
FROM registry.ci.openshift.org/ocp/4.16:base-rhel9
3038

3139
COPY --from=macbuilder /go/src/go.etcd.io/etcd/bin/etcd /usr/share/openshift/darwin/amd64/etcd
3240
COPY --from=macarmbuilder /go/src/go.etcd.io/etcd/bin/etcd /usr/share/openshift/darwin/arm64/etcd
3341
COPY --from=linuxbuilder /go/src/go.etcd.io/etcd/bin/etcd /usr/share/openshift/linux/amd64/etcd
3442
COPY --from=linuxarmbuilder /go/src/go.etcd.io/etcd/bin/etcd /usr/share/openshift/linux/arm64/etcd
43+
COPY --from=builder /usr/share/openshift/ /usr/share/openshift/
3544

3645
# This image is not an operator, it is only used as part of the build pipeline
3746
LABEL io.openshift.release.operator=false

Dockerfile.installer.art

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,29 @@ RUN source $REMOTE_SOURCES_DIR/cachito-gomod-with-deps/cachito.env \
5757
&& export GOFLAGS='-mod=readonly' && export GO_BUILD_FLAGS='-v' \
5858
&& CGO_ENABLED=0 GOOS=linux GOARCH=arm64 ./build.sh
5959

60+
FROM registry.ci.openshift.org/ocp/builder:rhel-9-golang-1.20-openshift-4.16 AS builder
61+
ENV GO_COMPLIANCE_EXCLUDE=".*"
62+
COPY $REMOTE_SOURCES $REMOTE_SOURCES_DIR
63+
WORKDIR $REMOTE_SOURCES_DIR/cachito-gomod-with-deps/app
64+
RUN cat $REMOTE_SOURCES_DIR/cachito-gomod-with-deps/cachito.env
65+
RUN mkdir -p /go/src/go.etcd.io/
66+
RUN ln -s $REMOTE_SOURCES_DIR/cachito-gomod-with-deps/app /go/src/go.etcd.io/etcd
67+
WORKDIR /go/src/go.etcd.io/etcd
68+
COPY . .
69+
RUN source $REMOTE_SOURCES_DIR/cachito-gomod-with-deps/cachito.env \
70+
&& export GOFLAGS='-mod=readonly' && export GO_BUILD_FLAGS='-v' \
71+
&& CGO_ENABLED=0 ./build.sh
72+
RUN mkdir -p /usr/share/openshift/$(go env GOOS)/$(go env GOHOSTARCH) && \
73+
mv bin/etcd /usr/share/openshift/$(go env GOOS)/$(go env GOHOSTARCH)/
74+
6075
# stage 2
6176
FROM registry.ci.openshift.org/ocp/4.16:base-rhel9
6277

6378
COPY --from=macbuilder /go/src/go.etcd.io/etcd/bin/etcd /usr/share/openshift/darwin/amd64/etcd
6479
COPY --from=macarmbuilder /go/src/go.etcd.io/etcd/bin/etcd /usr/share/openshift/darwin/arm64/etcd
6580
COPY --from=linuxbuilder /go/src/go.etcd.io/etcd/bin/etcd /usr/share/openshift/linux/amd64/etcd
6681
COPY --from=linuxarmbuilder /go/src/go.etcd.io/etcd/bin/etcd /usr/share/openshift/linux/arm64/etcd
82+
COPY --from=builder /usr/share/openshift/ /usr/share/openshift/
6783

6884
# This image is not an operator, it is only used as part of the build pipeline
6985
LABEL io.openshift.release.operator=false

0 commit comments

Comments
 (0)