bootstrap: use retry to wait for soft serve to come up
diff --git a/core/installer/cmd/bootstrap.go b/core/installer/cmd/bootstrap.go
index 805a5a0..9cd0a4c 100644
--- a/core/installer/cmd/bootstrap.go
+++ b/core/installer/cmd/bootstrap.go
@@ -9,6 +9,7 @@
 	"path/filepath"
 	"time"
 
+	"github.com/cenkalti/backoff/v4"
 	"github.com/spf13/cobra"
 	"helm.sh/helm/v3/pkg/action"
 	"helm.sh/helm/v3/pkg/chart/loader"
@@ -90,8 +91,12 @@
 	if err := installSoftServe(bootstrapJobKeys.Public); err != nil {
 		return err
 	}
-	time.Sleep(1 * time.Minute) // TODO(giolekva): implement proper wait
-	ss, err := soft.NewClient(bootstrapFlags.softServeIP, 22, []byte(bootstrapJobKeys.Private), log.Default())
+	var ss *soft.Client
+	err = backoff.Retry(func() error {
+		var err error
+		ss, err = soft.NewClient(bootstrapFlags.softServeIP, 22, []byte(bootstrapJobKeys.Private), log.Default())
+		return err
+	}, backoff.NewConstantBackOff(5*time.Second))
 	if err != nil {
 		return err
 	}
@@ -357,7 +362,12 @@
 	if err != nil {
 		return err
 	}
-	values := map[string]interface{}{
+	values := map[string]any{
+		"image": map[string]any{
+			"repository": "giolekva/flux",
+			"tag":        "2.0.0",
+			"pullPolicy": "IfNotPresent",
+		},
 		"repositoryAddress":       repoAddr,
 		"repositoryHost":          repoHost,
 		"repositoryHostPublicKey": repoHostPubKey,