@@ -8,11 +8,13 @@ import (
8
8
"context"
9
9
"fmt"
10
10
"sort"
11
+ "time"
11
12
12
13
"github.com/go-logr/logr"
13
14
"github.com/siderolabs/crypto/x509"
14
- "github.com/siderolabs/talos/pkg/machinery/config/types/v1alpha1/generate"
15
- talosmachine "github.com/siderolabs/talos/pkg/machinery/config/types/v1alpha1/machine"
15
+ "github.com/siderolabs/talos/pkg/machinery/config"
16
+ "github.com/siderolabs/talos/pkg/machinery/config/generate/secrets"
17
+ talosmachine "github.com/siderolabs/talos/pkg/machinery/config/machine"
16
18
"gopkg.in/yaml.v2"
17
19
corev1 "k8s.io/api/core/v1"
18
20
k8serrors "k8s.io/apimachinery/pkg/api/errors"
@@ -26,7 +28,7 @@ import (
26
28
27
29
func (r * TalosConfigReconciler ) fetchSecret (ctx context.Context , config * bootstrapv1alpha3.TalosConfig , secretName string ) (* corev1.Secret , error ) {
28
30
retSecret := & corev1.Secret {}
29
- err := r .Client .Get (context . Background () , client.ObjectKey {
31
+ err := r .Client .Get (ctx , client.ObjectKey {
30
32
Namespace : config .GetNamespace (),
31
33
Name : secretName ,
32
34
}, retSecret )
@@ -39,8 +41,8 @@ func (r *TalosConfigReconciler) fetchSecret(ctx context.Context, config *bootstr
39
41
}
40
42
41
43
// getSecretsBundle either generates or loads existing secret.
42
- func (r * TalosConfigReconciler ) getSecretsBundle (ctx context.Context , scope * TalosConfigScope , allowGenerate bool , opts ... generate. GenOption ) (* generate. SecretsBundle , error ) {
43
- var secretsBundle * generate. SecretsBundle
44
+ func (r * TalosConfigReconciler ) getSecretsBundle (ctx context.Context , scope * TalosConfigScope , allowGenerate bool , versionContract * config. VersionContract ) (* secrets. Bundle , error ) {
45
+ var secretsBundle * secrets. Bundle
44
46
45
47
secretName := scope .Cluster .Name + "-talos"
46
48
54
56
}
55
57
56
58
// no cluster secret yet, generate new one
57
- secretsBundle , err = generate . NewSecretsBundle ( generate . NewClock (), opts ... )
59
+ secretsBundle , err = secrets . NewBundle ( secrets . NewFixedClock ( time . Now ()), versionContract )
58
60
if err != nil {
59
61
return nil , fmt .Errorf ("error generating new secrets bundle: %w" , err )
60
62
}
71
73
return nil , fmt .Errorf ("error reading secrets bundle: %w" , err )
72
74
default :
73
75
// successfully loaded secret, initialize secretsBundle from it
74
- secretsBundle = & generate. SecretsBundle {
75
- Clock : generate . NewClock ( ),
76
+ secretsBundle = & secrets. Bundle {
77
+ Clock : secrets . NewFixedClock ( time . Now () ),
76
78
}
77
79
78
80
if _ , ok := secret .Data ["bundle" ]; ok {
@@ -95,14 +97,14 @@ retry:
95
97
}
96
98
97
99
// not stored in legacy format, use empty values
98
- secretsBundle .Cluster = & generate .Cluster {}
100
+ secretsBundle .Cluster = & secrets .Cluster {}
99
101
}
100
102
}
101
103
102
104
return secretsBundle , nil
103
105
}
104
106
105
- func (r * TalosConfigReconciler ) writeSecretsBundleSecret (ctx context.Context , scope * TalosConfigScope , secretName string , secretsBundle * generate. SecretsBundle ) error {
107
+ func (r * TalosConfigReconciler ) writeSecretsBundleSecret (ctx context.Context , scope * TalosConfigScope , secretName string , secretsBundle * secrets. Bundle ) error {
106
108
bundle , err := yaml .Marshal (secretsBundle )
107
109
if err != nil {
108
110
return fmt .Errorf ("error marshaling secrets bundle: %w" , err )
@@ -225,7 +227,7 @@ func (r *TalosConfigReconciler) reconcileClientConfig(ctx context.Context, log l
225
227
226
228
sort .Strings (endpoints )
227
229
228
- secretBundle , err := r .getSecretsBundle (ctx , scope , false )
230
+ secretBundle , err := r .getSecretsBundle (ctx , scope , false , defaultVersionContract ) // version contract doesn't matter, as we're getting the secrets
229
231
if err != nil {
230
232
return err
231
233
}
0 commit comments