diff --git a/util/db/cluster.go b/util/db/cluster.go
index <HASH>..<HASH> 100644
--- a/util/db/cluster.go
+++ b/util/db/cluster.go
@@ -58,6 +58,7 @@ func (s *db) CreateCluster(ctx context.Context, c *appv1.Cluster) (*appv1.Cluste
 		},
 	}
 	clusterSecret.Data = clusterToData(c)
+	clusterSecret.Annotations = AnnotationsFromConnectionState(&c.ConnectionState)
 	clusterSecret, err = s.kubeclientset.CoreV1().Secrets(s.ns).Create(clusterSecret)
 	if err != nil {
 		if apierr.IsAlreadyExists(err) {
diff --git a/util/db/repository.go b/util/db/repository.go
index <HASH>..<HASH> 100644
--- a/util/db/repository.go
+++ b/util/db/repository.go
@@ -57,6 +57,7 @@ func (s *db) CreateRepository(ctx context.Context, r *appsv1.Repository) (*appsv
 		},
 	}
 	repoSecret.Data = repoToData(r)
+	repoSecret.Annotations = AnnotationsFromConnectionState(&r.ConnectionState)
 	repoSecret, err := s.kubeclientset.CoreV1().Secrets(s.ns).Create(repoSecret)
 	if err != nil {
 		if apierr.IsAlreadyExists(err) {
Issue #<I> - Fix saving default connection status for repos and clusters (#<I>)