diff --git a/components/serverless/internal/controllers/serverless/fsm.go b/components/serverless/internal/controllers/serverless/fsm.go index 99e0927a4..dfcac606d 100644 --- a/components/serverless/internal/controllers/serverless/fsm.go +++ b/components/serverless/internal/controllers/serverless/fsm.go @@ -287,12 +287,7 @@ func stateFnInitialize(ctx context.Context, r *reconciler, s *systemState) (stat return nil, errors.Wrap(err, "context error") } - instanceRuntime := s.instance.Status.Runtime - if instanceRuntime == "" { - instanceRuntime = s.instance.Spec.Runtime - } - - latestRuntimeImage, err := r.getRuntimeImageFromConfigMap(ctx, s.instance.GetNamespace(), instanceRuntime) + latestRuntimeImage, err := r.getRuntimeImageFromConfigMap(ctx, s.instance.GetNamespace(), s.instance.Spec.Runtime) if err != nil { return nil, errors.Wrap(err, "failed to fetch runtime image from config map") } @@ -322,10 +317,10 @@ func skipGitSourceCheck(f serverlessv1alpha2.Function, cfg cfg) bool { return time.Since(configured.LastTransitionTime.Time) < cfg.fn.FunctionReadyRequeueDuration } -func (m *reconciler) getRuntimeImageFromConfigMap(ctx context.Context, namespace string, runtime serverlessv1alpha2.Runtime) (string, error) { +func (r *reconciler) getRuntimeImageFromConfigMap(ctx context.Context, namespace string, runtime serverlessv1alpha2.Runtime) (string, error) { instance := &corev1.ConfigMap{} dockerfileConfigMapName := fmt.Sprintf("dockerfile-%s", runtime) - err := m.client.Get(ctx, types.NamespacedName{Namespace: namespace, Name: dockerfileConfigMapName}, instance) + err := r.client.Get(ctx, types.NamespacedName{Namespace: namespace, Name: dockerfileConfigMapName}, instance) if err != nil { return "", errors.Wrap(err, "while extracting correct config map for given runtime") } diff --git a/components/serverless/internal/controllers/serverless/validation_test.go b/components/serverless/internal/controllers/serverless/validation_test.go index a27e822be..6f4072ac4 100644 --- a/components/serverless/internal/controllers/serverless/validation_test.go +++ b/components/serverless/internal/controllers/serverless/validation_test.go @@ -41,8 +41,8 @@ func TestValidation_Invalid(t *testing.T) { //GIVEN ctx := context.TODO() - k8sClient := fake.NewClientBuilder().WithStatusSubresource(&serverlessv1alpha2.Function{}).Build() require.NoError(t, serverlessv1alpha2.AddToScheme(scheme.Scheme)) + k8sClient := fake.NewClientBuilder().WithScheme(scheme.Scheme).WithStatusSubresource(&serverlessv1alpha2.Function{}).Build() resourceClient := serverlessResource.New(k8sClient, scheme.Scheme) statsCollector := &automock.StatsCollector{} @@ -602,9 +602,7 @@ func TestValidation_Valid(t *testing.T) { cfg: cfg{fn: FunctionConfig{ResourceConfig: minResourcesCfg}}} //WHEN - nextFn, err := stateFnValidateFunction(ctx, r, s) - require.NoError(t, err) - _, err = nextFn(context.TODO(), r, s) + _, err := stateFnValidateFunction(ctx, r, s) //THEN require.NoError(t, err)