There are currently no mac and windows builds of `opm` downstream. These should be available so that opm users have a supported build to use on mac and windows.
verify it on 4.6. LGTM -- [root@preserve-olm-env operator-registry]# git branch * master [root@preserve-olm-env operator-registry]# git log -n 1 commit cccf27a2efe982269cdeec69a7b4643c2824a614 Merge: e92049a f1a3c75 Author: OpenShift Merge Robot <openshift-merge-robot.github.com> Date: Wed Sep 9 20:36:14 2020 -0400 Merge pull request #437 from ecordell/fix-workdir Bug 1877603: add workdir permissions back [root@preserve-olm-env operator-registry]# docker build -t quay.io/kuiwang/operator-registry:v1875557 . Sending build context to Docker daemon 103.6MB Step 1/22 : FROM registry.svc.ci.openshift.org/ocp/builder:rhel-8-golang-openshift-4.6-clang as builder ---> acc230bbf2b6 Step 2/22 : ENV GOPATH /go ---> Using cache ---> e55c661f0e1c Step 3/22 : ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH ---> Using cache ---> 00e4d004c111 Step 4/22 : WORKDIR /src ---> Using cache ---> 501412824955 Step 5/22 : COPY vendor vendor ---> Using cache ---> 5dde04d03e95 Step 6/22 : COPY cmd cmd ---> 8e91a97dc095 Step 7/22 : COPY pkg pkg ---> e20b6e67cc97 Step 8/22 : COPY Makefile go.mod go.sum ./ ---> 7a19dd0bf552 Step 9/22 : RUN make build cross ---> Running in e16b60b912bd GOFLAGS="-mod=vendor" go build -tags "json1" -o bin/appregistry-server ./cmd/appregistry-server GOFLAGS="-mod=vendor" go build -tags "json1" -o bin/configmap-server ./cmd/configmap-server GOFLAGS="-mod=vendor" go build -tags "json1" -o bin/initializer ./cmd/initializer GOFLAGS="-mod=vendor" go build -tags "json1" -o bin/registry-server ./cmd/registry-server GOFLAGS="-mod=vendor" go build -ldflags "-X 'github.com/operator-framework/operator-registry/cmd/opm/version.gitCommit=14acf96abf0970c46e31f54de3358e7a25444195' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.opmVersion=14acf96' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.buildDate=2020-09-11T02:07:31Z'" -tags "json1" -o bin/opm ./cmd/opm GOOS=darwin CC=o64-clang CXX=o64-clang++ CGO_ENABLED=1 GOFLAGS="-mod=vendor" go build -ldflags "-X 'github.com/operator-framework/operator-registry/cmd/opm/version.gitCommit=14acf96abf0970c46e31f54de3358e7a25444195' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.opmVersion=14acf96' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.buildDate=2020-09-11T02:07:31Z'" -tags "json1" -o "bin/darwin-amd64-opm" --ldflags "-extld=o64-clang" ./cmd/opm GOOS=windows CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ CGO_ENABLED=1 GOFLAGS="-mod=vendor" go build -ldflags "-X 'github.com/operator-framework/operator-registry/cmd/opm/version.gitCommit=14acf96abf0970c46e31f54de3358e7a25444195' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.opmVersion=14acf96' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.buildDate=2020-09-11T02:07:31Z'" -tags "json1" -o "bin/windows-amd64-opm" --ldflags "-extld=x86_64-w64-mingw32-gcc" ./cmd/opm Removing intermediate container e16b60b912bd ---> e1d7e65234ac Step 10/22 : RUN CGO_ENABLED=0 go build -mod=vendor -tags netgo -ldflags "-w" ./vendor/github.com/grpc-ecosystem/grpc-health-probe/... ---> Running in 31c1155bd445 Removing intermediate container 31c1155bd445 ---> 50f74a863d72 Step 11/22 : FROM registry.svc.ci.openshift.org/ocp/4.6:base ---> bb4c863efb39 Step 12/22 : COPY --from=builder /src/bin/* /tmp/bin/ ---> 4c1c2a108ad8 Step 13/22 : COPY --from=builder /src/grpc-health-probe /bin/grpc_health_probe ---> e75f78d6b02a Step 14/22 : RUN cp -avr /tmp/bin/. /bin/ ---> Running in 2043455a657e '/tmp/bin/./appregistry-server' -> '/bin/./appregistry-server' '/tmp/bin/./configmap-server' -> '/bin/./configmap-server' '/tmp/bin/./darwin-amd64-opm' -> '/bin/./darwin-amd64-opm' '/tmp/bin/./initializer' -> '/bin/./initializer' '/tmp/bin/./opm' -> '/bin/./opm' '/tmp/bin/./registry-server' -> '/bin/./registry-server' '/tmp/bin/./windows-amd64-opm' -> '/bin/./windows-amd64-opm' Removing intermediate container 2043455a657e ---> 43952447f702 Step 15/22 : RUN mkdir /registry ---> Running in ef2e513f1f5e Removing intermediate container ef2e513f1f5e ---> bd0d0fef55a8 Step 16/22 : RUN chgrp -R 0 /registry && chmod -R g+rwx /registry ---> Running in 91bc6e0052ca Removing intermediate container 91bc6e0052ca ---> 097d3b27058c Step 17/22 : WORKDIR /registry ---> Running in 8bf21aa663d5 Removing intermediate container 8bf21aa663d5 ---> 8ac285ecc80d Step 18/22 : USER 1001 ---> Running in 0ecd9a53bced Removing intermediate container 0ecd9a53bced ---> 858a4e2a722c Step 19/22 : EXPOSE 50051 ---> Running in 4ccebac10ef5 Removing intermediate container 4ccebac10ef5 ---> 0ccc5d31a0b1 Step 20/22 : ENTRYPOINT ["/bin/registry-server"] ---> Running in aafc8be84129 Removing intermediate container aafc8be84129 ---> 3d3987502ca1 Step 21/22 : CMD ["--database", "/bundles.db"] ---> Running in 35b40ad25e7a Removing intermediate container 35b40ad25e7a ---> aeee5225c24a Step 22/22 : LABEL io.k8s.display-name="OpenShift Operator Registry" io.k8s.description="This is a component of OpenShift Operator Lifecycle Manager and is the base for operator catalog API containers." maintainer="Odin Team <aos-odin>" summary="Operator Registry runs in a Kubernetes or OpenShift cluster to provide operator catalog data to Operator Lifecycle Manager." ---> Running in 9020fd45c022 Removing intermediate container 9020fd45c022 ---> f83bd04f893d Successfully built f83bd04f893d Successfully tagged quay.io/kuiwang/operator-registry:v1875557 --
Had some issues with the downstream builds, which caused us to remove this and then re-add it back. If it's okay, I'm just re-using this BZ - when the linked PR merges and the downstream build happens, we should see mac/windows builds in the downstream images.
LGTM -- [root@preserve-olm-env operator-registry]# git log -n 1 commit 54441b00eb0554dcf2b6117bc42fad675ef913d4 Merge: b54d23b 244ce52 Author: OpenShift Merge Robot <openshift-merge-robot.github.com> Date: Mon Sep 14 17:22:58 2020 -0400 Merge pull request #443 from ecordell/readd-cross Bug 1875557: add cross build back [root@preserve-olm-env operator-registry]# docker build -t quay.io/kuiwang/operator-registry:v1875557 . Sending build context to Docker daemon 103.8MB Step 1/22 : FROM registry.svc.ci.openshift.org/ocp/builder:rhel-8-golang-openshift-4.6-clang as builder rhel-8-golang-openshift-4.6-clang: Pulling from ocp/builder 77c58f19bd6e: Pull complete 47db82df7f3f: Pull complete fa172450bf3a: Pull complete 8e7469d151d3: Pull complete Digest: sha256:651519861e108295d76f4791874146e051d08282cc3899cd7d7e148ab5b11198 Status: Downloaded newer image for registry.svc.ci.openshift.org/ocp/builder:rhel-8-golang-openshift-4.6-clang ---> acc230bbf2b6 Step 2/22 : ENV GOPATH /go ---> Running in 57810acaae43 Removing intermediate container 57810acaae43 ---> 0e3fd634a909 Step 3/22 : ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH ---> Running in 4db7d40b8de3 Removing intermediate container 4db7d40b8de3 ---> af5b85a5e8b3 Step 4/22 : WORKDIR /src ---> Running in 5918a8d23de6 Removing intermediate container 5918a8d23de6 ---> c83462f601d9 Step 5/22 : COPY vendor vendor ---> d5dab2297726 Step 6/22 : COPY cmd cmd ---> b21b540ffbda Step 7/22 : COPY pkg pkg ---> 499068439d86 Step 8/22 : COPY Makefile go.mod go.sum ./ ---> ad29b445f21b Step 9/22 : RUN make build cross ---> Running in 0b8a0d6dd58a GOFLAGS="-mod=vendor" go build -tags "json1" -o bin/appregistry-server ./cmd/appregistry-server GOFLAGS="-mod=vendor" go build -tags "json1" -o bin/configmap-server ./cmd/configmap-server GOFLAGS="-mod=vendor" go build -tags "json1" -o bin/initializer ./cmd/initializer GOFLAGS="-mod=vendor" go build -tags "json1" -o bin/registry-server ./cmd/registry-server GOFLAGS="-mod=vendor" go build -ldflags "-X 'github.com/operator-framework/operator-registry/cmd/opm/version.gitCommit=14acf96abf0970c46e31f54de3358e7a25444195' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.opmVersion=14acf96' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.buildDate=2020-09-15T01:20:17Z'" -tags "json1" -o bin/opm ./cmd/opm GOOS=darwin CC=o64-clang CXX=o64-clang++ CGO_ENABLED=1 GOFLAGS="-mod=vendor" go build -ldflags "-X 'github.com/operator-framework/operator-registry/cmd/opm/version.gitCommit=14acf96abf0970c46e31f54de3358e7a25444195' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.opmVersion=14acf96' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.buildDate=2020-09-15T01:20:17Z'" -tags "json1" -o "bin/darwin-amd64-opm" --ldflags "-extld=o64-clang" ./cmd/opm GOOS=windows CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ CGO_ENABLED=1 GOFLAGS="-mod=vendor" go build -ldflags "-X 'github.com/operator-framework/operator-registry/cmd/opm/version.gitCommit=14acf96abf0970c46e31f54de3358e7a25444195' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.opmVersion=14acf96' -X 'github.com/operator-framework/operator-registry/cmd/opm/version.buildDate=2020-09-15T01:20:17Z'" -tags "json1" -o "bin/windows-amd64-opm" --ldflags "-extld=x86_64-w64-mingw32-gcc" ./cmd/opm Removing intermediate container 0b8a0d6dd58a ---> 72505c3118b8 Step 10/22 : RUN CGO_ENABLED=0 go build -mod=vendor -tags netgo -ldflags "-w" ./vendor/github.com/grpc-ecosystem/grpc-health-probe/... ---> Running in 49861bf5624e Removing intermediate container 49861bf5624e ---> 4e4dfd8c80f9 Step 11/22 : FROM registry.svc.ci.openshift.org/ocp/4.6:base base: Pulling from ocp/4.6 77c58f19bd6e: Already exists 47db82df7f3f: Already exists 5bae0134722c: Pull complete 22cbc6ff4c1f: Pull complete 6e9dcd2984f6: Pull complete Digest: sha256:2a9204ed0ed258ca4ab731839d72bb02e767b9462a3e8ee6c38cfd8c164af48d Status: Downloaded newer image for registry.svc.ci.openshift.org/ocp/4.6:base ---> bb4c863efb39 Step 12/22 : COPY --from=builder /src/bin/* /tmp/bin/ ---> d3ce75d2aa2a Step 13/22 : COPY --from=builder /src/grpc-health-probe /bin/grpc_health_probe ---> 9569510fb383 Step 14/22 : RUN cp -avr /tmp/bin/. /bin/ ---> Running in b4e34898f3e0 '/tmp/bin/./appregistry-server' -> '/bin/./appregistry-server' '/tmp/bin/./configmap-server' -> '/bin/./configmap-server' '/tmp/bin/./darwin-amd64-opm' -> '/bin/./darwin-amd64-opm' '/tmp/bin/./initializer' -> '/bin/./initializer' '/tmp/bin/./opm' -> '/bin/./opm' '/tmp/bin/./registry-server' -> '/bin/./registry-server' '/tmp/bin/./windows-amd64-opm' -> '/bin/./windows-amd64-opm' Removing intermediate container b4e34898f3e0 ---> 1aacd6862741 Step 15/22 : RUN mkdir /registry ---> Running in 75a535b140b4 Removing intermediate container 75a535b140b4 ---> eab0889bb62a Step 16/22 : RUN chgrp -R 0 /registry && chmod -R g+rwx /registry ---> Running in 0f0217283bf8 Removing intermediate container 0f0217283bf8 ---> 79c0c2acecb9 Step 17/22 : WORKDIR /registry ---> Running in 35afa34631bc Removing intermediate container 35afa34631bc ---> a0bebd1ad8ef Step 18/22 : USER 1001 ---> Running in 81639a99d011 Removing intermediate container 81639a99d011 ---> 72e3b4fe514e Step 19/22 : EXPOSE 50051 ---> Running in cc850128e0af Removing intermediate container cc850128e0af ---> 90aff6b3adbe Step 20/22 : ENTRYPOINT ["/bin/registry-server"] ---> Running in f59db31149d0 Removing intermediate container f59db31149d0 ---> bf5aabf110bd Step 21/22 : CMD ["--database", "/bundles.db"] ---> Running in ffeafd8938c9 Removing intermediate container ffeafd8938c9 ---> e71c90c86e34 Step 22/22 : LABEL io.k8s.display-name="OpenShift Operator Registry" io.k8s.description="This is a component of OpenShift Operator Lifecycle Manager and is the base for operator catalog API containers." maintainer="Odin Team <aos-odin>" summary="Operator Registry runs in a Kubernetes or OpenShift cluster to provide operator catalog data to Operator Lifecycle Manager." ---> Running in 330ade5d0ee8 Removing intermediate container 330ade5d0ee8 ---> 5e9beb8475e4 Successfully built 5e9beb8475e4 Successfully tagged quay.io/kuiwang/operator-registry:v1875557 [root@preserve-olm-env operator-registry]# docker create registry-proxy.engineering.redhat.com/rh-osbs/openshift-ose-operator-registry:v4.6 18db10aff015f49589537bdeb2d5a333c26b49d3e312d1fbfbab2b17a7cb026d [root@preserve-olm-env operator-registry]# docker cp 18db10aff015f49589537bdeb2d5a333c26b49d3e312d1fbfbab2b17a7cb026d:/bin/ tmp [root@preserve-olm-env operator-registry]# ls -lrt tmp/bin/*opm* -rwxr-xr-x. 1 root root 57070160 Sep 14 18:36 tmp/bin/opm -rwxr-xr-x. 1 root root 66962408 Sep 14 18:37 tmp/bin/darwin-amd64-opm -rwxr-xr-x. 1 root root 92657305 Sep 14 18:38 tmp/bin/windows-amd64-opm --
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (OpenShift Container Platform 4.6 GA Images), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:4196