There have been a number of releases for Submariner since the referenced image (v0.1.0) in the CSV. The issue is that CRD is trying to use feature(s) of apiextensions.k8s.io/v1 (per-version openapi validation) but having the CRD set to apiextensions.k8s.io/v1beta1; so basically the CRD's group/version is apiextensions.k8s.io/v1beta1 while the spec is for apiextensions.k8s.io/v1. I was able to resolve this by pulling in the CRD from their github repo tag 0.0.3 as suggested at the following issue - https://github.com/submariner-io/submariner-operator/issues/95 PR submitted to resolve - https://github.com/operator-framework/community-operators/pull/1272
Moving to MODIFIED since the PR is not merged yet and community-operators still have only 0.0.1 version available for testing.
PR submitted for v0.5.0 https://github.com/operator-framework/community-operators/pull/2195
{"level":"info","ts":1600097858.9175353,"logger":"cmd","msg":"Go Version: go1.14.6"} {"level":"info","ts":1600097858.91757,"logger":"cmd","msg":"Go OS/Arch: linux/amd64"} {"level":"info","ts":1600097858.9175794,"logger":"cmd","msg":"Version of operator-sdk: v0.17.0"} {"level":"info","ts":1600097858.9183242,"logger":"leader","msg":"Trying to become the leader."} {"level":"info","ts":1600097861.1945431,"logger":"leader","msg":"Found existing lock with my name. I was likely restarted."} {"level":"info","ts":1600097861.1945748,"logger":"leader","msg":"Continuing as the leader."} {"level":"info","ts":1600097863.4490895,"logger":"controller-runtime.metrics","msg":"metrics server is starting to listen","addr":"0.0.0.0:8383"} {"level":"info","ts":1600097863.4493637,"logger":"cmd","msg":"Registering Components."} {"level":"info","ts":1600097872.521724,"logger":"metrics","msg":"Metrics Service object updated","Service.Name":"submariner-operator-metrics","Service.Namespace":"submariner"} {"level":"info","ts":1600097874.8444562,"logger":"cmd","msg":"Could not create ServiceMonitor object","error":"servicemonitors.monitoring.coreos.com \"submariner-operator-metrics\" already exists"} {"level":"info","ts":1600097874.844497,"logger":"cmd","msg":"Starting the Cmd."} {"level":"info","ts":1600097874.8447564,"logger":"controller-runtime.manager","msg":"starting metrics server","path":"/metrics"} {"level":"info","ts":1600097874.8449123,"logger":"controller-runtime.controller","msg":"Starting EventSource","controller":"servicediscovery-controller","source":"kind source: /, Kind="} {"level":"info","ts":1600097874.8451977,"logger":"controller-runtime.controller","msg":"Starting EventSource","controller":"submariner-controller","source":"kind source: /, Kind="} {"level":"info","ts":1600097874.94537,"logger":"controller-runtime.controller","msg":"Starting EventSource","controller":"servicediscovery-controller","source":"kind source: /, Kind="} {"level":"info","ts":1600097874.9455693,"logger":"controller-runtime.controller","msg":"Starting EventSource","controller":"submariner-controller","source":"kind source: /, Kind="} {"level":"info","ts":1600097875.04587,"logger":"controller-runtime.controller","msg":"Starting Controller","controller":"servicediscovery-controller"} {"level":"info","ts":1600097875.0459197,"logger":"controller-runtime.controller","msg":"Starting workers","controller":"servicediscovery-controller","worker count":1} {"level":"info","ts":1600097875.0459907,"logger":"controller-runtime.controller","msg":"Starting EventSource","controller":"submariner-controller","source":"kind source: /, Kind="} {"level":"error","ts":1600097875.04609,"logger":"controller-runtime.source","msg":"if kind is a CRD, it should be installed before calling Start","kind":"Gateway.submariner.io","error":"no matches for kind \"Gateway\" in version \"submariner.io/v1\"","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tsubmariner-operator/vendor/github.com/go-logr/zapr/zapr.go:128\nsigs.k8s.io/controller-runtime/pkg/source.(*Kind).Start\n\tsubmariner-operator/vendor/sigs.k8s.io/controller-runtime/pkg/source/source.go:116\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func1\n\tsubmariner-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:153\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start\n\tsubmariner-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:188\nsigs.k8s.io/controller-runtime/pkg/manager.(*controllerManager).startLeaderElectionRunnables.func1\n\tsubmariner-operator/vendor/sigs.k8s.io/controller-runtime/pkg/manager/internal.go:473"} {"level":"error","ts":1600097875.0461988,"logger":"cmd","msg":"Manager exited non-zero","error":"no matches for kind \"Gateway\" in version \"submariner.io/v1\"","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tsubmariner-operator/vendor/github.com/go-logr/zapr/zapr.go:128\nmain.main\n\tsubmariner-operator/cmd/manager/main.go:166\nruntime.main\n\t/usr/lib/golang/src/runtime/proc.go:203"}
The latest problem (no matches for kind "Gateway" in version "submariner.io/v1") is due to a missing CRD declaration in the CSV. This will be handled differently in Submariner 0.7: the operator will take care of missing CRDs.
The operator is still failing to install. It's hanging at installing instead of pending: oc get sub,csv,pod NAME PACKAGE SOURCE CHANNEL subscription.operators.coreos.com/submariner submariner community-operators alpha NAME DISPLAY VERSION REPLACES PHASE clusterserviceversion.operators.coreos.com/submariner.v0.6.1 Submariner Operator 0.6.1 submariner-operator.v0.5.0 Installing NAME READY STATUS RESTARTS AGE pod/submariner-operator-7c6b5dd778-9tn8h 0/1 CrashLoopBackOff 7 14m oc logs pod/submariner-operator-7c6b5dd778-9tn8h {"level":"error","ts":1601052976.9237263,"logger":"controller-runtime.source","msg":"if kind is a CRD, it should be installed before calling Start","kind":"Gateway.submariner.io","error":"no matches for kind \"Gateway\" in version \"submariner.io/v1\"","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tsubmariner-operator/vendor/github.com/go-logr/zapr/zapr.go:128\nsigs.k8s.io/controller-runtime/pkg/source.(*Kind).Start\n\tsubmariner-operator/vendor/sigs.k8s.io/controller-runtime/pkg/source/source.go:116\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func1\n\tsubmariner-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:153\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start\n\tsubmariner-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:188\nsigs.k8s.io/controller-runtime/pkg/manager.(*controllerManager).startLeaderElectionRunnables.func1\n\tsubmariner-operator/vendor/sigs.k8s.io/controller-runtime/pkg/manager/internal.go:473"} {"level":"error","ts":1601052976.9238126,"logger":"cmd","msg":"Manager exited non-zero","error":"no matches for kind \"Gateway\" in version \"submariner.io/v1\"","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tsubmariner-operator/vendor/github.com/go-logr/zapr/zapr.go:128\nmain.main\n\tsubmariner-operator/cmd/manager/main.go:166\nruntime.main\n\t/usr/lib/golang/src/runtime/proc.go:203"}
was fixed in 0.8