Bug 1878213 - Unable to set the default channel for a Catalog Index Image using opm
Summary: Unable to set the default channel for a Catalog Index Image using opm
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: OLM
Version: 4.5
Hardware: All
OS: All
medium
medium
Target Milestone: ---
: 4.6.0
Assignee: Vu Dinh
QA Contact: kuiwang
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-09-11 15:24 UTC by Chris Johnson
Modified: 2020-10-27 16:40 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-10-27 16:40:12 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github operator-framework operator-registry pull 451 0 None closed Bug 1878213: Update index add func to handle optional default channel 2021-01-14 16:22:45 UTC
Red Hat Product Errata RHBA-2020:4196 0 None None None 2020-10-27 16:40:34 UTC

Description Chris Johnson 2020-09-11 15:24:30 UTC
Description of problem:
When using Operator Package Manager (opm) to create custom catalog index images using operator bundles, the last bundle added switches the default channel to that bundle's desired default channel.

We are using a x.y channel taxonomy, where each channel represents a major.minor release.  When we apply a z-build fix to an older version, that pipeline is unaware of other major versions and the holistic view of what the default channel should be.


See upstream git issue here:
https://github.com/operator-framework/operator-registry/issues/330


Version-Release number of selected component (if applicable):
4.5 and later

How reproducible:
Very.

Steps to Reproduce:
1. 
2.
3.

Actual results:


Expected results:


Additional info:
For details, see: https://github.com/operator-framework/operator-registry/issues/330

Comment 2 Daniel Messer 2020-09-15 09:53:15 UTC
Tracked via https://issues.redhat.com/browse/OLM-1957

Comment 4 Chris Johnson 2020-09-23 12:33:16 UTC
I reviewed PR 451 and have a few questions.

It looks like this solves a problem where you've previously chosen one bundle as the authority for setting the default channel, and don't want to accidentally override it when adding bundles for non-default channels. 

An additional use case we have is:  Package Rebuild.

There are times where we need to re-build the entire package and there's no guarantee that the bundles will be added in the same order, meaning that default channel may be expressed a couple of times.  This is especially true when using the opm registry add --mode semver-skippatch to build our catalogs.

I think we also need a way to explicitly set the channel outside of the bundle add verb.  Maybe I'm jumping the gun and there is another PR coming.

Comment 5 Vu Dinh 2020-09-23 14:53:37 UTC
Hey Chris,

I think eventually we will need a way to enable the users to set/change/update the default channel without requiring them to add a new bundle. That task can be accomplished either via a new command in opm or some other features that may be outside of opm as well. I believe there is a feature named declarative index config that is on development (https://github.com/operator-framework/enhancements/pull/37/files).

This PR is to address the short-term issues with default channel while waiting for a plan or decision on how to address this in a longer term.

Vu

Comment 6 Chris Johnson 2020-09-23 15:05:08 UTC
Ok, so then to adopt this in our pipelines, we will need to 
1. Preserve chronological order in which the bundles are to be added to the catalog.
2. For all bundles, selectively set the default channel (e.g. when a new channel is added, or when a channel is to be promoted to default)
3. Modify our existing bundles to remove the default channel on all of them except for the bundles that are to trigger the default channel switch.



Is that how you envisioned using this?

Comment 7 Vu Dinh 2020-09-24 15:00:07 UTC
Hey Chris,

I concur on the 3 points you made. Also, one note that the first bundle being added to the index needs to have default channel information because at the time there isn't a default channel being set yet and it is required. If that channel is not the eventual default channel, that is fine because you can update it using subsequent bundles.

Vu

Comment 9 kuiwang 2020-09-25 07:31:45 UTC
verify it. LGTM

--
[root@preserve-olm-env operator-registry]# ./bin/opm alpha bundle build --directory /root/kuiwang/operator-registry/manifests/etcd/0.6.1 --tag quay.io/kuiwangonlytag/etcd-bundle:v0.6.1 --package etcd --channels alpha
INFO[0000] Building annotations.yaml                    
INFO[0000] Writing annotations.yaml in /root/kuiwang/operator-registry/manifests/etcd/metadata 
INFO[0000] Building Dockerfile                          
INFO[0000] Writing bundle.Dockerfile in /root/kuiwang/operator-registry 
INFO[0000] Building bundle image                        
Sending build context to Docker daemon  104.8MB
Step 1/8 : FROM scratch
 ---> 
Step 2/8 : LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
 ---> Running in 196a3e5b4e80
Removing intermediate container 196a3e5b4e80
 ---> 7a692cf0a85d
Step 3/8 : LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
 ---> Running in 754514ce9d75
Removing intermediate container 754514ce9d75
 ---> c8ba31929ab7
Step 4/8 : LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
 ---> Running in a80b033c97a1
Removing intermediate container a80b033c97a1
 ---> d7c1956de218
Step 5/8 : LABEL operators.operatorframework.io.bundle.package.v1=etcd
 ---> Running in 348485944e41
Removing intermediate container 348485944e41
 ---> 08b77229830b
Step 6/8 : LABEL operators.operatorframework.io.bundle.channels.v1=alpha
 ---> Running in 7494d8f8140d
Removing intermediate container 7494d8f8140d
 ---> 286302b6d0c2
Step 7/8 : COPY manifests/etcd/0.6.1 /manifests/
 ---> 330838d4f255
Step 8/8 : COPY manifests/etcd/metadata /metadata/
 ---> 2cab1bce07a6
Successfully built 2cab1bce07a6
Successfully tagged quay.io/kuiwangonlytag/etcd-bundle:v0.6.1


[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-bundle:v0.6.1
The push refers to repository [quay.io/kuiwangonlytag/etcd-bundle]
e7cc367b6c74: Pushed 
8af28c2a5f5e: Pushed 
v0.6.1: digest: sha256:115976c7a96f4d46e32022bd5a64ffbeb734855d88f9c030d29e800ec5efc139 size: 732

[root@preserve-olm-env operator-registry]# ./bin/opm index add --bundles quay.io/kuiwangonlytag/etcd-bundle:v0.6.1 --tag quay.io/kuiwangonlytag/etcd-index:v1 -c docker
INFO[0000] building the index                            bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.6.1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] Could not find optional dependencies file     dir=bundle_tmp346478359 file=bundle_tmp346478359/metadata load=annotations
INFO[0000] found csv, loading bundle                     dir=bundle_tmp346478359 file=bundle_tmp346478359/manifests load=bundle
INFO[0000] loading bundle file                           dir=bundle_tmp346478359/manifests file=etcdclusters.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0000] loading bundle file                           dir=bundle_tmp346478359/manifests file=etcdoperator.v0.6.1.clusterserviceversion.yaml load=bundle
INFO[0001] Generating dockerfile                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0001] writing dockerfile: index.Dockerfile581819101  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0001] running docker build                          bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0001] [docker build -f index.Dockerfile581819101 -t quay.io/kuiwangonlytag/etcd-index:v1 .]  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-index:v1
The push refers to repository [quay.io/kuiwangonlytag/etcd-index]
cb52ea77af22: Pushed 
5a2855009e89: Mounted from operator-framework/upstream-opm-builder 
87b4d8523d6d: Mounted from operator-framework/upstream-opm-builder 
4150c4f2e6df: Mounted from kuiwang/olm-isv 
50644c29ef5a: Mounted from kuiwang/olm-isv 
v1: digest: sha256:cd007c3664c69d90fca53063b684486f0e5a8cfe4390913b0ff5ba4351cb4ff6 size: 1371

[root@preserve-olm-env operator-registry]# rm -fr bundle.Dockerfile manifests/etcd/metadata/

[root@preserve-olm-env operator-registry]# bin/opm index export --index="quay.io/kuiwangonlytag/etcd-index:v1" --package="etcd" -c docker
INFO[0000] export from the index                         index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v1 to get metadata  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] Getting label data from previous image        index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker inspect                        index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker create                         index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker cp                             index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker rm                             index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] Preparing to pull bundles map["quay.io/kuiwangonlytag/etcd-bundle:v0.6.1":{"etcd" "0.6.1"}]  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.6.1  img="quay.io/kuiwangonlytag/etcd-bundle:v0.6.1"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.6.1"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.6.1"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.6.1"
INFO[0002] Writing package.yaml in downloaded/etcd      
[root@preserve-olm-env operator-registry]# cat downloaded/etcd/
0.6.1/        package.yaml  
[root@preserve-olm-env operator-registry]# cat downloaded/etcd/package.yaml 
packageName: etcd
channels:
- name: alpha
  currentCSV: etcdoperator.v0.6.1
defaultChannel: alpha


[root@preserve-olm-env operator-registry]# ./bin/opm alpha bundle build --directory /root/kuiwang/operator-registry/manifests/etcd/0.6.1 --tag quay.io/kuiwangonlytag/etcd-bundle:v0.6.1 --package etcd --channels alpha,stable
INFO[0000] Building annotations.yaml                    
INFO[0000] Writing annotations.yaml in /root/kuiwang/operator-registry/manifests/etcd/metadata 
INFO[0000] Building Dockerfile                          
INFO[0000] Writing bundle.Dockerfile in /root/kuiwang/operator-registry 
INFO[0000] Building bundle image                        
Sending build context to Docker daemon  104.8MB
Step 1/8 : FROM scratch
 ---> 
Step 2/8 : LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
 ---> Running in 4e4a96571d24
Removing intermediate container 4e4a96571d24
 ---> c0c980d415f6
Step 3/8 : LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
 ---> Running in a780c6660961
Removing intermediate container a780c6660961
 ---> 4ae64d70de9d
Step 4/8 : LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
 ---> Running in e143d0d49952
Removing intermediate container e143d0d49952
 ---> cfbcbddc6ae0
Step 5/8 : LABEL operators.operatorframework.io.bundle.package.v1=etcd
 ---> Running in f9f62bd504d2
Removing intermediate container f9f62bd504d2
 ---> 3ec610e0af0d
Step 6/8 : LABEL operators.operatorframework.io.bundle.channels.v1=alpha,stable
 ---> Running in 7eeff44d611c
Removing intermediate container 7eeff44d611c
 ---> 499bfb5d8a8d
Step 7/8 : COPY manifests/etcd/0.6.1 /manifests/
 ---> 85e6598231eb
Step 8/8 : COPY manifests/etcd/metadata /metadata/
 ---> 71d589762e69
Successfully built 71d589762e69
Successfully tagged quay.io/kuiwangonlytag/etcd-bundle:v0.6.1
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-bundle:v0.6.1
The push refers to repository [quay.io/kuiwangonlytag/etcd-bundle]
a2f803484445: Pushed 
121c55b9828f: Pushed 
v0.6.1: digest: sha256:655f0193a33decfc18cd25ba5fb83104bd637ee06bb09e11a8c7fe96f53f2e95 size: 732
[root@preserve-olm-env operator-registry]# cat manifests/etcd/metadata/annotations.yaml 
annotations:
  operators.operatorframework.io.bundle.channels.v1: alpha,stable
  operators.operatorframework.io.bundle.manifests.v1: manifests/
  operators.operatorframework.io.bundle.mediatype.v1: registry+v1
  operators.operatorframework.io.bundle.metadata.v1: metadata/
  operators.operatorframework.io.bundle.package.v1: etcd
[root@preserve-olm-env operator-registry]# rm -fr bundle.Dockerfile manifests/etcd/metadata/


[root@preserve-olm-env operator-registry]# ./bin/opm index add --bundles quay.io/kuiwangonlytag/etcd-bundle:v0.6.1 --tag quay.io/kuiwangonlytag/etcd-index:v1 -c docker
INFO[0000] building the index                            bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.6.1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] Could not find optional dependencies file     dir=bundle_tmp161192662 file=bundle_tmp161192662/metadata load=annotations
INFO[0000] found csv, loading bundle                     dir=bundle_tmp161192662 file=bundle_tmp161192662/manifests load=bundle
INFO[0000] loading bundle file                           dir=bundle_tmp161192662/manifests file=etcdclusters.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0000] loading bundle file                           dir=bundle_tmp161192662/manifests file=etcdoperator.v0.6.1.clusterserviceversion.yaml load=bundle
ERRO[0000] permissive mode disabled                      bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]" error="Could not translate annotations file into packageManifest Default channel is missing and can't be inferred"
Error: Could not translate annotations file into packageManifest Default channel is missing and can't be inferred
Usage:
  opm index add [flags]

Examples:
  # Create an index image from scratch with a single bundle image
  opm index add --bundles quay.io/operator-framework/operator-bundle-prometheus@sha256:a3ee653ffa8a0d2bbb2fabb150a94da6e878b6e9eb07defd40dc884effde11a0 --tag quay.io/operator-framework/monitoring:1.0.0
  
  # Add a single bundle image to an index image
  opm index add --bundles quay.io/operator-framework/operator-bundle-prometheus:0.15.0 --from-index quay.io/operator-framework/monitoring:1.0.0 --tag quay.io/operator-framework/monitoring:1.0.1
  
  # Add multiple bundles to an index and generate a Dockerfile instead of an image
  opm index add --bundles quay.io/operator-framework/operator-bundle-prometheus:0.15.0,quay.io/operator-framework/operator-bundle-prometheus:0.22.2 --generate

Flags:
  -i, --binary-image opm        container image for on-image opm command
  -u, --build-tool string       tool to build container images. One of: [docker, podman]. Defaults to podman. Overrides part of container-tool.
  -b, --bundles strings         comma separated list of bundles to add
  -c, --container-tool string   tool to interact with container images (save, build, etc.). One of: [docker, podman]
  -f, --from-index string       previous index to add to
      --generate                if enabled, just creates the dockerfile and saves it to local disk
  -h, --help                    help for add
      --mode string             graph update mode that defines how channel graphs are updated. One of: [replaces, semver, semver-skippatch] (default "replaces")
  -d, --out-dockerfile string   if generating the dockerfile, this flag is used to (optionally) specify a dockerfile name
      --permissive              allow registry load errors
  -p, --pull-tool string        tool to pull container images. One of: [none, docker, podman]. Defaults to none. Overrides part of container-tool.
  -t, --tag string              custom tag for container image being built

Global Flags:
      --skip-tls   skip TLS certificate verification for container image registries while pulling bundles or index


[root@preserve-olm-env operator-registry]# ./bin/opm alpha bundle build --directory /root/kuiwang/operator-registry/manifests/etcd/0.6.1 --tag quay.io/kuiwangonlytag/etcd-bundle:v0.6.1 --package etcd --channels alpha,stable --default alpha
INFO[0000] Building annotations.yaml                    
INFO[0000] Writing annotations.yaml in /root/kuiwang/operator-registry/manifests/etcd/metadata 
INFO[0000] Building Dockerfile                          
INFO[0000] Writing bundle.Dockerfile in /root/kuiwang/operator-registry 
INFO[0000] Building bundle image                        
Sending build context to Docker daemon  104.8MB
Step 1/9 : FROM scratch
 ---> 
Step 2/9 : LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
 ---> Running in 7a84b82eed4d
Removing intermediate container 7a84b82eed4d
 ---> 97d513295267
Step 3/9 : LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
 ---> Running in eeb80fa3e135
Removing intermediate container eeb80fa3e135
 ---> 35ee37b84097
Step 4/9 : LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
 ---> Running in e3e37a0703c1
Removing intermediate container e3e37a0703c1
 ---> 4eeeed0aee10
Step 5/9 : LABEL operators.operatorframework.io.bundle.package.v1=etcd
 ---> Running in 14ad902c0837
Removing intermediate container 14ad902c0837
 ---> 01444007c64f
Step 6/9 : LABEL operators.operatorframework.io.bundle.channels.v1=alpha,stable
 ---> Running in 4af52534c741
Removing intermediate container 4af52534c741
 ---> a17f6b52ee2b
Step 7/9 : LABEL operators.operatorframework.io.bundle.channel.default.v1=alpha
 ---> Running in 7c562ece0829
Removing intermediate container 7c562ece0829
 ---> eb0d69295f0b
Step 8/9 : COPY manifests/etcd/0.6.1 /manifests/
 ---> 93b43d4192a0
Step 9/9 : COPY manifests/etcd/metadata /metadata/
 ---> 1d3eea9967ae
Successfully built 1d3eea9967ae
Successfully tagged quay.io/kuiwangonlytag/etcd-bundle:v0.6.1
[root@preserve-olm-env operator-registry]# cat manifests/etcd/metadata/annotations.yaml 
annotations:
  operators.operatorframework.io.bundle.channel.default.v1: alpha
  operators.operatorframework.io.bundle.channels.v1: alpha,stable
  operators.operatorframework.io.bundle.manifests.v1: manifests/
  operators.operatorframework.io.bundle.mediatype.v1: registry+v1
  operators.operatorframework.io.bundle.metadata.v1: metadata/
  operators.operatorframework.io.bundle.package.v1: etcd
[root@preserve-olm-env operator-registry]# rm -fr bundle.Dockerfile manifests/etcd/metadata/
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-bundle:v0.6.1
The push refers to repository [quay.io/kuiwangonlytag/etcd-bundle]
b5e179e4169f: Pushed 
b0d6e23b7941: Pushed 
v0.6.1: digest: sha256:33b229c54dcfb91910f73155952c6de42db1f6340dd672a2f9be423becc06f40 size: 732
[root@preserve-olm-env operator-registry]# 
[root@preserve-olm-env operator-registry]# ./bin/opm index add --bundles quay.io/kuiwangonlytag/etcd-bundle:v0.6.1 --tag quay.io/kuiwangonlytag/etcd-index:v1 -c docker
INFO[0000] building the index                            bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.6.1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0000] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0001] Could not find optional dependencies file     dir=bundle_tmp741335614 file=bundle_tmp741335614/metadata load=annotations
INFO[0001] found csv, loading bundle                     dir=bundle_tmp741335614 file=bundle_tmp741335614/manifests load=bundle
INFO[0001] loading bundle file                           dir=bundle_tmp741335614/manifests file=etcdclusters.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0001] loading bundle file                           dir=bundle_tmp741335614/manifests file=etcdoperator.v0.6.1.clusterserviceversion.yaml load=bundle
INFO[0001] Generating dockerfile                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0001] writing dockerfile: index.Dockerfile659852844  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0001] running docker build                          bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
INFO[0001] [docker build -f index.Dockerfile659852844 -t quay.io/kuiwangonlytag/etcd-index:v1 .]  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.6.1]"
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-index:v1
The push refers to repository [quay.io/kuiwangonlytag/etcd-index]
cf6303bc1743: Pushed 
5a2855009e89: Mounted from operator-framework/upstream-opm-builder 
87b4d8523d6d: Mounted from operator-framework/upstream-opm-builder 
4150c4f2e6df: Mounted from kuiwang/olm-isv 
50644c29ef5a: Mounted from kuiwang/olm-isv 
v1: digest: sha256:987d2f73bc47302a18fcb40c3286904d3ab5f6a0fdeaccafc1cfd31e4f1e06a2 size: 1371
[root@preserve-olm-env operator-registry]# rm -fr downloaded/
[root@preserve-olm-env operator-registry]# bin/opm index export --index="quay.io/kuiwangonlytag/etcd-index:v1" --package="etcd" -c docker
INFO[0000] export from the index                         index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v1 to get metadata  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] Getting label data from previous image        index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker inspect                        index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker create                         index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker cp                             index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker rm                             index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] Preparing to pull bundles map["quay.io/kuiwangonlytag/etcd-bundle:v0.6.1":{"etcd" "0.6.1"}]  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.6.1  img="quay.io/kuiwangonlytag/etcd-bundle:v0.6.1"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.6.1"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.6.1"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.6.1"
INFO[0002] Writing package.yaml in downloaded/etcd      
[root@preserve-olm-env operator-registry]# cat downloaded/etcd/package.yaml 
packageName: etcd
channels:
- name: alpha
  currentCSV: etcdoperator.v0.6.1
- name: stable
  currentCSV: etcdoperator.v0.6.1
defaultChannel: alpha


[root@preserve-olm-env operator-registry]# ./bin/opm alpha bundle build --directory /root/kuiwang/operator-registry/manifests/etcd/0.9.0 --tag quay.io/kuiwangonlytag/etcd-bundle:v0.9.0 --package etcd --channels singlenamespace-alpha --default singlenamespace-alpha 
INFO[0000] Building annotations.yaml                    
INFO[0000] Writing annotations.yaml in /root/kuiwang/operator-registry/manifests/etcd/metadata 
INFO[0000] Building Dockerfile                          
INFO[0000] Writing bundle.Dockerfile in /root/kuiwang/operator-registry 
INFO[0000] Building bundle image                        
Sending build context to Docker daemon  104.8MB
Step 1/9 : FROM scratch
 ---> 
Step 2/9 : LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
 ---> Running in 1db46115e9f1
Removing intermediate container 1db46115e9f1
 ---> f31333cfa695
Step 3/9 : LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
 ---> Running in 7ea41479c9c3
Removing intermediate container 7ea41479c9c3
 ---> c92368fc7401
Step 4/9 : LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
 ---> Running in 1b915b081f42
Removing intermediate container 1b915b081f42
 ---> f223177f2473
Step 5/9 : LABEL operators.operatorframework.io.bundle.package.v1=etcd
 ---> Running in 37f1bb4521bb
Removing intermediate container 37f1bb4521bb
 ---> e1c051b03b35
Step 6/9 : LABEL operators.operatorframework.io.bundle.channels.v1=singlenamespace-alpha
 ---> Running in 5240affd0221
Step 7/9 : LABEL operators.operatorframework.io.bundle.channel.default.v1=clusterwide-alpha
 ---> de423b4f0ae7
Removing intermediate container 5240affd0221
Step 8/9 : COPY manifests/etcd/0.9.0 /manifests/
 ---> 079cbec59ead
Step 9/9 : COPY manifests/etcd/metadata /metadata/
 ---> af033c43e03c
Successfully built af033c43e03c
Successfully tagged quay.io/kuiwangonlytag/etcd-bundle:v0.9.0
[root@preserve-olm-env operator-registry]# cat manifests/etcd/metadata/annotations.yaml 
annotations:
  operators.operatorframework.io.bundle.channel.default.v1: singlenamespace-alpha
  operators.operatorframework.io.bundle.channels.v1: singlenamespace-alpha
  operators.operatorframework.io.bundle.manifests.v1: manifests/
  operators.operatorframework.io.bundle.mediatype.v1: registry+v1
  operators.operatorframework.io.bundle.metadata.v1: metadata/
  operators.operatorframework.io.bundle.package.v1: etcd
[root@preserve-olm-env operator-registry]# rm -fr bundle.Dockerfile manifests/etcd/metadata/
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-bundle:v0.9.0
The push refers to repository [quay.io/kuiwangonlytag/etcd-bundle]
d8b0c64a97df: Pushed 
f96e8453221e: Pushed 
v0.9.0: digest: sha256:4361d22134c66e1e1fff04b158f4ab556efc259b5bff2db1f83947f9e3bc7e9c size: 732

[root@preserve-olm-env operator-registry]# ./bin/opm index add --bundles quay.io/kuiwangonlytag/etcd-bundle:v0.9.0 --tag quay.io/kuiwangonlytag/etcd-index:v1 -c docker
INFO[0000] building the index                            bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.0  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
INFO[0000] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
INFO[0000] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
INFO[0000] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
INFO[0001] Could not find optional dependencies file     dir=bundle_tmp788408485 file=bundle_tmp788408485/metadata load=annotations
INFO[0001] found csv, loading bundle                     dir=bundle_tmp788408485 file=bundle_tmp788408485/manifests load=bundle
INFO[0001] loading bundle file                           dir=bundle_tmp788408485/manifests file=Dockerfile load=bundle
INFO[0001] loading bundle file                           dir=bundle_tmp788408485/manifests file=etcdbackups.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0001] loading bundle file                           dir=bundle_tmp788408485/manifests file=etcdclusters.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0001] loading bundle file                           dir=bundle_tmp788408485/manifests file=etcdoperator.v0.9.0.clusterserviceversion.yaml load=bundle
INFO[0001] loading bundle file                           dir=bundle_tmp788408485/manifests file=etcdrestores.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0001] skipping directory                            dir=bundle_tmp788408485/manifests file=metadata load=bundle
INFO[0001] Generating dockerfile                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
INFO[0001] writing dockerfile: index.Dockerfile895197371  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
INFO[0001] running docker build                          bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
INFO[0001] [docker build -f index.Dockerfile895197371 -t quay.io/kuiwangonlytag/etcd-index:v1 .]  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.0]"
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-index:v1
The push refers to repository [quay.io/kuiwangonlytag/etcd-index]
39e7cb5bcf87: Pushed 
5a2855009e89: Mounted from operator-framework/upstream-opm-builder 
87b4d8523d6d: Mounted from operator-framework/upstream-opm-builder 
4150c4f2e6df: Mounted from kuiwang/olm-isv 
50644c29ef5a: Mounted from kuiwang/olm-isv 
v1: digest: sha256:fc7bec442cecb5bee1cd94bd88d35e2a511bc1eef3f886815c036910ba655623 size: 1371
[root@preserve-olm-env operator-registry]# bin/opm index export --index="quay.io/kuiwangonlytag/etcd-index:v1" --package="etcd" -c docker
INFO[0000] export from the index                         index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v1 to get metadata  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] Getting label data from previous image        index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker inspect                        index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker create                         index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker cp                             index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker rm                             index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] Preparing to pull bundles map["quay.io/kuiwangonlytag/etcd-bundle:v0.9.0":{"etcd" "0.9.0"}]  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.0  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] Writing package.yaml in downloaded/etcd      
[root@preserve-olm-env operator-registry]# cat downloaded/etcd/package.yaml 
packageName: etcd
channels:
- name: singlenamespace-alpha
  currentCSV: etcdoperator.v0.9.0
defaultChannel: singlenamespace-alpha
[root@preserve-olm-env operator-registry]# rm -fr downloaded/

[root@preserve-olm-env operator-registry]# ./bin/opm alpha bundle build --directory /root/kuiwang/operator-registry/manifests/etcd/0.9.2 --tag quay.io/kuiwangonlytag/etcd-bundle:v0.9.2 --package etcd --channels singlenamespace-alpha
INFO[0000] Building annotations.yaml                    
INFO[0000] Writing annotations.yaml in /root/kuiwang/operator-registry/manifests/etcd/metadata 
INFO[0000] Building Dockerfile                          
INFO[0000] Writing bundle.Dockerfile in /root/kuiwang/operator-registry 
INFO[0000] Building bundle image                        
Sending build context to Docker daemon  104.8MB
Step 1/8 : FROM scratch
 ---> 
Step 2/8 : LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
 ---> Using cache
 ---> f31333cfa695
Step 3/8 : LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
 ---> Using cache
 ---> c92368fc7401
Step 4/8 : LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
 ---> Using cache
 ---> f223177f2473
Step 5/8 : LABEL operators.operatorframework.io.bundle.package.v1=etcd
 ---> Using cache
 ---> e1c051b03b35
Step 6/8 : LABEL operators.operatorframework.io.bundle.channels.v1=singlenamespace-alpha
 ---> Using cache
 ---> de423b4f0ae7
Step 7/8 : COPY manifests/etcd/0.9.2 /manifests/
 ---> 06f9e8e7faec
Step 8/8 : COPY manifests/etcd/metadata /metadata/
 ---> c3bc9be74d5b
Successfully built c3bc9be74d5b
Successfully tagged quay.io/kuiwangonlytag/etcd-bundle:v0.9.2
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-bundle:v0.9.2
The push refers to repository [quay.io/kuiwangonlytag/etcd-bundle]
f8cd9072248a: Pushed 
6ecf66eee4d2: Pushed 
v0.9.2: digest: sha256:504f876e45aab046aa01719ef28bccbf30d8a65cf963868088f01922e3914dec size: 732
[root@preserve-olm-env operator-registry]# rm -fr bundle.Dockerfile manifests/etcd/metadata/

[root@preserve-olm-env operator-registry]# ./bin/opm index add --bundles quay.io/kuiwangonlytag/etcd-bundle:v0.9.2 --from-index quay.io/kuiwangonlytag/etcd-index:v1  --tag quay.io/kuiwangonlytag/etcd-index:v1 -c docker
INFO[0000] building the index                            bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v1 to get metadata  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0001] Getting label data from previous image        bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0001] running docker inspect                        bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0001] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0001] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0001] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0002] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0002] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0002] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0002] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0003] Could not find optional dependencies file     dir=bundle_tmp845031630 file=bundle_tmp845031630/metadata load=annotations
INFO[0003] found csv, loading bundle                     dir=bundle_tmp845031630 file=bundle_tmp845031630/manifests load=bundle
INFO[0003] loading bundle file                           dir=bundle_tmp845031630/manifests file=etcdbackups.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0003] loading bundle file                           dir=bundle_tmp845031630/manifests file=etcdclusters.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0003] loading bundle file                           dir=bundle_tmp845031630/manifests file=etcdoperator.v0.9.2.clusterserviceversion.yaml load=bundle
INFO[0003] loading bundle file                           dir=bundle_tmp845031630/manifests file=etcdrestores.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0003] Generating dockerfile                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0003] writing dockerfile: index.Dockerfile658752060  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0003] running docker build                          bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
INFO[0003] [docker build -f index.Dockerfile658752060 -t quay.io/kuiwangonlytag/etcd-index:v1 .]  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2]"
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-index:v1
The push refers to repository [quay.io/kuiwangonlytag/etcd-index]
f4311157d0d7: Pushed 
5a2855009e89: Layer already exists 
87b4d8523d6d: Layer already exists 
4150c4f2e6df: Layer already exists 
50644c29ef5a: Layer already exists 
v1: digest: sha256:7f6966d99d71db6646e4fa0a9215fe60e11880810ed38c98a017cfd4f3a943ec size: 1371
[root@preserve-olm-env operator-registry]# bin/opm index export --index="quay.io/kuiwangonlytag/etcd-index:v1" --package="etcd" -c docker
INFO[0000] export from the index                         index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v1 to get metadata  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] Getting label data from previous image        index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker inspect                        index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker create                         index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker cp                             index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running docker rm                             index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] Preparing to pull bundles map["quay.io/kuiwangonlytag/etcd-bundle:v0.9.0":{"etcd" "0.9.0"} "quay.io/kuiwangonlytag/etcd-bundle:v0.9.2":{"etcd" "0.9.2"}]  index="quay.io/kuiwangonlytag/etcd-index:v1" package="[etcd]"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.0  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] Writing package.yaml in downloaded/etcd      
[root@preserve-olm-env operator-registry]# cat downloaded/etcd/package.yaml 
packageName: etcd
channels:
- name: singlenamespace-alpha
  currentCSV: etcdoperator.v0.9.2
defaultChannel: singlenamespace-alpha
[root@preserve-olm-env operator-registry]# rm -fr downloaded/


[root@preserve-olm-env ope./bin/opm alpha bundle build --directory /root/kuiwang/operator-registry/manifests/etcd/0.9.2-clusterwide --tag quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide --package etcd --channels clusterwide-alpha
INFO[0000] Building annotations.yaml                    
INFO[0000] Writing annotations.yaml in /root/kuiwang/operator-registry/manifests/etcd/metadata 
INFO[0000] Building Dockerfile                          
INFO[0000] Writing bundle.Dockerfile in /root/kuiwang/operator-registry 
INFO[0000] Building bundle image                        
Sending build context to Docker daemon  104.8MB
Step 1/8 : FROM scratch
 ---> 
Step 2/8 : LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
 ---> Using cache
 ---> f31333cfa695
Step 3/8 : LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
 ---> Using cache
 ---> c92368fc7401
Step 4/8 : LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
 ---> Using cache
 ---> f223177f2473
Step 5/8 : LABEL operators.operatorframework.io.bundle.package.v1=etcd
 ---> Using cache
 ---> e1c051b03b35
Step 6/8 : LABEL operators.operatorframework.io.bundle.channels.v1=clusterwide-alpha
 ---> Running in d98c3c0644c2
Removing intermediate container d98c3c0644c2
 ---> eb1411688890
Step 7/8 : COPY manifests/etcd/0.9.2-clusterwide /manifests/
 ---> 9a228c5a9260
Step 8/8 : COPY manifests/etcd/metadata /metadata/
 ---> d27d422efce7
Successfully built d27d422efce7
Successfully tagged quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide
[root@preserve-olm-env operator-registry]# cat manifests/etcd/metadata/annotations.yaml 
annotations:
  operators.operatorframework.io.bundle.channels.v1: clusterwide-alpha
  operators.operatorframework.io.bundle.manifests.v1: manifests/
  operators.operatorframework.io.bundle.mediatype.v1: registry+v1
  operators.operatorframework.io.bundle.metadata.v1: metadata/
  operators.operatorframework.io.bundle.package.v1: etcd
[root@preserve-olm-env operator-registry]# rm -fr bundle.Dockerfile manifests/etcd/metadata/
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide
The push refers to repository [quay.io/kuiwangonlytag/etcd-bundle]
dba1541f3dfb: Pushed 
ef4c2e05d8bd: Pushed 
v0.9.2-clusterwide: digest: sha256:015720662ec3de2f10b8faf1463b3799a78c524383021754f71ef1a53a4b26af size: 732

[root@preserve-olm-env operator-registry]# ./bin/opm index add --bundles quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide --from-index quay.io/kuiwangonlytag/etcd-index:v1  --tag quay.io/kuiwangonlytag/etcd-index:v2 -c docker
INFO[0000] building the index                            bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v1 to get metadata  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] Getting label data from previous image        bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running docker inspect                        bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] Could not find optional dependencies file     dir=bundle_tmp199092526 file=bundle_tmp199092526/metadata load=annotations
INFO[0002] found csv, loading bundle                     dir=bundle_tmp199092526 file=bundle_tmp199092526/manifests load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp199092526/manifests file=etcdbackups.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp199092526/manifests file=etcdclusters.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp199092526/manifests file=etcdoperator.v0.9.2-clusterwide.clusterserviceversion.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp199092526/manifests file=etcdrestores.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] Generating dockerfile                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] writing dockerfile: index.Dockerfile125121436  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running docker build                          bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] [docker build -f index.Dockerfile125121436 -t quay.io/kuiwangonlytag/etcd-index:v2 .]  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-index:v2
The push refers to repository [quay.io/kuiwangonlytag/etcd-index]
826e8e64b97d: Pushed 
5a2855009e89: Layer already exists 
87b4d8523d6d: Layer already exists 
4150c4f2e6df: Layer already exists 
50644c29ef5a: Layer already exists 
v2: digest: sha256:fbac987ae70921ae66c4cdd7fc024dc575a2afc86f0e5435a7332264a234f91d size: 1371
[root@preserve-olm-env operator-registry]# bin/opm index export --index="quay.io/kuiwangonlytag/etcd-index:v2" --package="etcd" -c docker
INFO[0000] export from the index                         index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v2 to get metadata  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v2  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v2  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] Getting label data from previous image        index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker inspect                        index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker create                         index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker cp                             index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker rm                             index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0002] Preparing to pull bundles map["quay.io/kuiwangonlytag/etcd-bundle:v0.9.0":{"etcd" "0.9.0"} "quay.io/kuiwangonlytag/etcd-bundle:v0.9.2":{"etcd" "0.9.2"} "quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide":{"etcd" "0.9.2-clusterwide"}]  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0002] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.0  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0003] Writing package.yaml in downloaded/etcd      
[root@preserve-olm-env operator-registry]# cat downloaded/etcd/package.yaml 
packageName: etcd
channels:
- name: clusterwide-alpha
  currentCSV: etcdoperator.v0.9.2-clusterwide
- name: singlenamespace-alpha
  currentCSV: etcdoperator.v0.9.2
defaultChannel: singlenamespace-alpha
[root@preserve-olm-env operator-registry]# rm -fr downloaded/


[root@preserve-olm-env operator-registry]# ./bin/opm alpha bundle build --directory /root/kuiwang/operator-registry/manifests/etcd/0.9.2-clusterwide --tag quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide --package etcd --channels clusterwide-alpha --default clusterwide-alpha
INFO[0000] Building annotations.yaml                    
INFO[0000] Writing annotations.yaml in /root/kuiwang/operator-registry/manifests/etcd/metadata 
INFO[0000] Building Dockerfile                          
INFO[0000] Writing bundle.Dockerfile in /root/kuiwang/operator-registry 
INFO[0000] Building bundle image                        
Sending build context to Docker daemon  104.8MB
Step 1/9 : FROM scratch
 ---> 
Step 2/9 : LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
 ---> Using cache
 ---> f31333cfa695
Step 3/9 : LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
 ---> Using cache
 ---> c92368fc7401
Step 4/9 : LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
 ---> Using cache
 ---> f223177f2473
Step 5/9 : LABEL operators.operatorframework.io.bundle.package.v1=etcd
 ---> Using cache
 ---> e1c051b03b35
Step 6/9 : LABEL operators.operatorframework.io.bundle.channels.v1=clusterwide-alpha
 ---> Using cache
 ---> eb1411688890
Step 7/9 : LABEL operators.operatorframework.io.bundle.channel.default.v1=clusterwide-alpha
 ---> Running in 250a8708cd5a
Removing intermediate container 250a8708cd5a
 ---> 385a8e39dd78
Step 8/9 : COPY manifests/etcd/0.9.2-clusterwide /manifests/
 ---> b94d652fd22e
Step 9/9 : COPY manifests/etcd/metadata /metadata/
 ---> ed5bcb96d133
Successfully built ed5bcb96d133
Successfully tagged quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide
[root@preserve-olm-env operator-registry]# cat manifests/etcd/metadata/annotations.yaml 
annotations:
  operators.operatorframework.io.bundle.channel.default.v1: clusterwide-alpha
  operators.operatorframework.io.bundle.channels.v1: clusterwide-alpha
  operators.operatorframework.io.bundle.manifests.v1: manifests/
  operators.operatorframework.io.bundle.mediatype.v1: registry+v1
  operators.operatorframework.io.bundle.metadata.v1: metadata/
  operators.operatorframework.io.bundle.package.v1: etcd
[root@preserve-olm-env operator-registry]# rm -fr bundle.Dockerfile manifests/etcd/metadata/
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide
The push refers to repository [quay.io/kuiwangonlytag/etcd-bundle]
a6e0ab89d927: Pushed 
764451c0635f: Pushed 
v0.9.2-clusterwide: digest: sha256:82282b4fdcdf27ac1a5f21ef036cf957efa9a5c3bac4e380695c8cfcf8845c34 size: 732

[root@preserve-olm-env operator-registry]# ./bin/opm index add --bundles quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide --from-index quay.io/kuiwangonlytag/etcd-index:v1  --tag quay.io/kuiwangonlytag/etcd-index:v2 -c docker
INFO[0000] building the index                            bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v1 to get metadata  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v1  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] Getting label data from previous image        bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running docker inspect                        bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0001] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] Could not find optional dependencies file     dir=bundle_tmp790347332 file=bundle_tmp790347332/metadata load=annotations
INFO[0002] found csv, loading bundle                     dir=bundle_tmp790347332 file=bundle_tmp790347332/manifests load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp790347332/manifests file=etcdbackups.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp790347332/manifests file=etcdclusters.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp790347332/manifests file=etcdoperator.v0.9.2-clusterwide.clusterserviceversion.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp790347332/manifests file=etcdrestores.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] Generating dockerfile                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] writing dockerfile: index.Dockerfile817726914  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] running docker build                          bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
INFO[0002] [docker build -f index.Dockerfile817726914 -t quay.io/kuiwangonlytag/etcd-index:v2 .]  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide]"
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-index:v2 
The push refers to repository [quay.io/kuiwangonlytag/etcd-index]
b1fa7e7d4d6a: Pushed 
5a2855009e89: Layer already exists 
87b4d8523d6d: Layer already exists 
4150c4f2e6df: Layer already exists 
50644c29ef5a: Layer already exists 
v2: digest: sha256:bcf09423eca31184044cde37baaa03ad516890eefbb5ca1d8aa35b96b31f8745 size: 1371
[root@preserve-olm-env operator-registry]# bin/opm index export --index="quay.io/kuiwangonlytag/etcd-index:v2" --package="etcd" -c docker
INFO[0000] export from the index                         index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v2 to get metadata  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v2  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v2  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] Getting label data from previous image        index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker inspect                        index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker create                         index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker cp                             index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker rm                             index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] Preparing to pull bundles map["quay.io/kuiwangonlytag/etcd-bundle:v0.9.0":{"etcd" "0.9.0"} "quay.io/kuiwangonlytag/etcd-bundle:v0.9.2":{"etcd" "0.9.2"} "quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide":{"etcd" "0.9.2-clusterwide"}]  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.0  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] Writing package.yaml in downloaded/etcd      
[root@preserve-olm-env operator-registry]# cat downloaded/etcd/package.yaml 
packageName: etcd
channels:
- name: clusterwide-alpha
  currentCSV: etcdoperator.v0.9.2-clusterwide
- name: singlenamespace-alpha
  currentCSV: etcdoperator.v0.9.2
defaultChannel: clusterwide-alpha

[root@preserve-olm-env operator-registry]# rm -fr downloaded/
[root@preserve-olm-env operator-registry]# ./bin/opm alpha bundle build --directory /root/kuiwang/operator-registry/manifests/etcd/0.9.4 --tag quay.io/kuiwangonlytag/etcd-bundle:v0.9.4 --package etcd --channels singlenamespace-alpha
INFO[0000] Building annotations.yaml                    
INFO[0000] Writing annotations.yaml in /root/kuiwang/operator-registry/manifests/etcd/metadata 
INFO[0000] Building Dockerfile                          
INFO[0000] Writing bundle.Dockerfile in /root/kuiwang/operator-registry 
INFO[0000] Building bundle image                        
Sending build context to Docker daemon  104.8MB
Step 1/8 : FROM scratch
 ---> 
Step 2/8 : LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
 ---> Using cache
 ---> f31333cfa695
Step 3/8 : LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
 ---> Using cache
 ---> c92368fc7401
Step 4/8 : LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
 ---> Using cache
 ---> f223177f2473
Step 5/8 : LABEL operators.operatorframework.io.bundle.package.v1=etcd
 ---> Using cache
 ---> e1c051b03b35
Step 6/8 : LABEL operators.operatorframework.io.bundle.channels.v1=singlenamespace-alpha
 ---> Using cache
 ---> de423b4f0ae7
Step 7/8 : COPY manifests/etcd/0.9.4 /manifests/
 ---> f3529508cda3
Step 8/8 : COPY manifests/etcd/metadata /metadata/
 ---> 7a0930325ad8
Successfully built 7a0930325ad8
Successfully tagged quay.io/kuiwangonlytag/etcd-bundle:v0.9.4
[root@preserve-olm-env operator-registry]# cat manifests/etcd/metadata/annotations.yaml 
annotations:
  operators.operatorframework.io.bundle.channels.v1: singlenamespace-alpha
  operators.operatorframework.io.bundle.manifests.v1: manifests/
  operators.operatorframework.io.bundle.mediatype.v1: registry+v1
  operators.operatorframework.io.bundle.metadata.v1: metadata/
  operators.operatorframework.io.bundle.package.v1: etcd
[root@preserve-olm-env operator-registry]# rm -fr bundle.Dockerfile manifests/etcd/metadata/
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-bundle:v0.9.4
The push refers to repository [quay.io/kuiwangonlytag/etcd-bundle]
13ca541a2e93: Pushed 
a1946b155b4c: Pushed 
v0.9.4: digest: sha256:da55b836603be1eeb7c7bc6442e38ffb272ddcaf31f62b123cc6ff00221fdaa5 size: 732

[root@preserve-olm-env operator-registry]# ./bin/opm index add --bundles quay.io/kuiwangonlytag/etcd-bundle:v0.9.4 --from-index quay.io/kuiwangonlytag/etcd-index:v2  --tag quay.io/kuiwangonlytag/etcd-index:v2 -c docker
INFO[0000] building the index                            bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v2 to get metadata  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v2  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v2  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0001] Getting label data from previous image        bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0001] running docker inspect                        bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0001] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0001] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0001] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.4  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0002] running docker create                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0002] running docker cp                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0002] running docker rm                             bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0002] Could not find optional dependencies file     dir=bundle_tmp774681257 file=bundle_tmp774681257/metadata load=annotations
INFO[0002] found csv, loading bundle                     dir=bundle_tmp774681257 file=bundle_tmp774681257/manifests load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp774681257/manifests file=etcdbackups.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp774681257/manifests file=etcdclusters.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp774681257/manifests file=etcdoperator.v0.9.4.clusterserviceversion.yaml load=bundle
INFO[0002] loading bundle file                           dir=bundle_tmp774681257/manifests file=etcdrestores.etcd.database.coreos.com.crd.yaml load=bundle
INFO[0002] Generating dockerfile                         bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0002] writing dockerfile: index.Dockerfile231237919  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0002] running docker build                          bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
INFO[0002] [docker build -f index.Dockerfile231237919 -t quay.io/kuiwangonlytag/etcd-index:v2 .]  bundles="[quay.io/kuiwangonlytag/etcd-bundle:v0.9.4]"
[root@preserve-olm-env operator-registry]# docker push quay.io/kuiwangonlytag/etcd-index:v2
The push refers to repository [quay.io/kuiwangonlytag/etcd-index]
e7793f7ae3d0: Pushed 
5a2855009e89: Layer already exists 
87b4d8523d6d: Layer already exists 
4150c4f2e6df: Layer already exists 
50644c29ef5a: Layer already exists 
v2: digest: sha256:a838c2b46d388552c13c3d9e07cd5b16a9f71ef02b5e3c3141c417d412a75ef4 size: 1371
[root@preserve-olm-env operator-registry]# bin/opm index export --index="quay.io/kuiwangonlytag/etcd-index:v2" --package="etcd" -c docker
INFO[0000] export from the index                         index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] Pulling previous image quay.io/kuiwangonlytag/etcd-index:v2 to get metadata  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v2  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0000] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-index:v2  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] Getting label data from previous image        index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker inspect                        index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker create                         index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker cp                             index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running docker rm                             index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] Preparing to pull bundles map["quay.io/kuiwangonlytag/etcd-bundle:v0.9.0":{"etcd" "0.9.0"} "quay.io/kuiwangonlytag/etcd-bundle:v0.9.2":{"etcd" "0.9.2"} "quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide":{"etcd" "0.9.2-clusterwide"} "quay.io/kuiwangonlytag/etcd-bundle:v0.9.4":{"etcd" "0.9.4"}]  index="quay.io/kuiwangonlytag/etcd-index:v2" package="[etcd]"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.4  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.4"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.0  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0001] running /usr/bin/docker pull quay.io/kuiwangonlytag/etcd-bundle:v0.9.2  img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.4"
INFO[0002] running docker create                         img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.4"
INFO[0002] running docker cp                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.4"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.2-clusterwide"
INFO[0002] running docker rm                             img="quay.io/kuiwangonlytag/etcd-bundle:v0.9.0"
INFO[0002] Writing package.yaml in downloaded/etcd      
[root@preserve-olm-env operator-registry]# cat downloaded/etcd/package.yaml 
packageName: etcd
channels:
- name: clusterwide-alpha
  currentCSV: etcdoperator.v0.9.2-clusterwide
- name: singlenamespace-alpha
  currentCSV: etcdoperator.v0.9.4
defaultChannel: clusterwide-alpha
[root@preserve-olm-env operator-registry]# rm -fr downloaded/



--

Comment 12 errata-xmlrpc 2020-10-27 16:40:12 UTC
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


Note You need to log in before you can comment on or make changes to this bug.