Skip to content

Commit a9e3459

Browse files
authored
specify velero credentials secret name (#546)
1 parent ca051f0 commit a9e3459

File tree

1 file changed

+29
-2
lines changed

1 file changed

+29
-2
lines changed

pkg/addons/velero/velero.go

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,18 @@ import (
77
"github.com/k0sproject/k0s/pkg/apis/k0s/v1beta1"
88
"github.com/replicatedhq/troubleshoot/pkg/apis/troubleshoot/v1beta2"
99
"gopkg.in/yaml.v2"
10+
corev1 "k8s.io/api/core/v1"
11+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1012
"sigs.k8s.io/controller-runtime/pkg/client"
1113

1214
"github.com/replicatedhq/embedded-cluster/pkg/kubeutils"
1315
"github.com/replicatedhq/embedded-cluster/pkg/spinner"
1416
)
1517

1618
const (
17-
releaseName = "velero"
18-
namespace = "velero"
19+
releaseName = "velero"
20+
namespace = "velero"
21+
credentialsSecretName = "cloud-credentials"
1922
)
2023

2124
// Overwritten by -ldflags in Makefile
@@ -51,6 +54,9 @@ var helmValues = map[string]interface{}{
5154
},
5255
},
5356
},
57+
"credentials": map[string]interface{}{
58+
"existingSecret": credentialsSecretName,
59+
},
5460
}
5561

5662
// Velero manages the installation of the Velero helm chart.
@@ -121,6 +127,27 @@ func (o *Velero) Outro(ctx context.Context, cli client.Client) error {
121127
loading := spinner.Start()
122128
loading.Infof("Waiting for Velero to be ready")
123129

130+
if err := kubeutils.WaitForNamespace(ctx, cli, namespace); err != nil {
131+
loading.Close()
132+
return err
133+
}
134+
135+
credentialsSecret := corev1.Secret{
136+
TypeMeta: metav1.TypeMeta{
137+
Kind: "Secret",
138+
APIVersion: "v1",
139+
},
140+
ObjectMeta: metav1.ObjectMeta{
141+
Name: credentialsSecretName,
142+
Namespace: namespace,
143+
},
144+
Type: "Opaque",
145+
}
146+
if err := cli.Create(ctx, &credentialsSecret); err != nil {
147+
loading.Close()
148+
return fmt.Errorf("unable to create %s secret: %w", credentialsSecretName, err)
149+
}
150+
124151
if err := kubeutils.WaitForDeployment(ctx, cli, namespace, "velero"); err != nil {
125152
loading.Close()
126153
return fmt.Errorf("timed out waiting for Velero to deploy: %v", err)

0 commit comments

Comments
 (0)