-
Bug
-
Resolution: Done
-
Major
-
fuse-7.7-GA
-
None
The `syndesis crc` script contains a couple of errors which prevent correct installation of fuse-online and its addons. The result is that although the jaeger addon is installed, it crashes resulting in other addons not being installed (see here.
The script has the following problems:
- The check_error function does not correctly check for error messages prefixed with the word "error" but only with "ERROR". As such any such errors are swallowed and the script continues;
- The script cannot be run unless the logged-in user is a cluster-admin since the CRDs can only be installed by a user with that role;
- The grant command is not executed by the script (since it was assumed to be run as cluster-admin). This means that the jaeger role permissions are never applied to the syndesis-operator service account, leading to this error:
{"level":"error","ts":1591262966.0492928,"logger":"controller","msg":"Error reconciling","action":"*action.installAction","phase":"Installing","error":"jaegers.jaegertracing.io \"syndesis-jaeger\" is forbidden: User \"system:serviceaccount:syndesis:syndesis-operator\" cannot get resource \"jaegers\" in API group \"jaegertracing.io\" in the namespace \"syndesis\"","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tsrc/github.com/syndesisio/syndesis/install/operator/vendor/github.com/go-logr/zapr/zapr.go:128\ngithub.com/syndesisio/syndesis/install/operator/pkg/controller/syndesis.(*ReconcileSyndesis).Reconcile\n\tsrc/github.com/syndesisio/syndesis/install/operator/pkg/controller/syndesis/syndesis_controller.go:124\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tsrc/github.com/syndesisio/syndesis/install/operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:256\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tsrc/github.com/syndesisio/syndesis/install/operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:232\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).worker\n\tsrc/github.com/syndesisio/syndesis/install/operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:211\nk8s.io/apimachinery/pkg/util/wait.JitterUntil.func1\n\tsrc/github.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:152\nk8s.io/apimachinery/pkg/util/wait.JitterUntil\n\tsrc/github.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:153\nk8s.io/apimachinery/pkg/util/wait.Until\n\tsrc/github.com/syndesisio/syndesis/install/operator/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:88"}
The culmination of these errors results in the jaeger addon throwing the error. The fail-fast nature of the syndesis-operator means that this error stops any further installation of the remaining addon resources. This can be observed here. An improvement would suggest that although fail-fast is fine for the core components, the addons perhaps should be treated as independant artefacts and an error in one should not cause a failure to install in another.
- relates to
-
ENTESB-13802 DV addon in Syndesis is not able to be enabled
- Done