Skip to content

Commit 7b6b1fa

Browse files
committed
fix: generate configs without comments/examples
Fixes #196 Signed-off-by: Andrey Smirnov <[email protected]>
1 parent d08a0bb commit 7b6b1fa

File tree

3 files changed

+15
-8
lines changed

3 files changed

+15
-8
lines changed

controllers/talosconfig_controller.go

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import (
1818
"github.com/siderolabs/talos/pkg/machinery/config"
1919
"github.com/siderolabs/talos/pkg/machinery/config/configloader"
2020
"github.com/siderolabs/talos/pkg/machinery/config/configpatcher"
21+
"github.com/siderolabs/talos/pkg/machinery/config/encoder"
2122
"github.com/siderolabs/talos/pkg/machinery/config/generate"
2223
"github.com/siderolabs/talos/pkg/machinery/config/generate/secrets"
2324
"github.com/siderolabs/talos/pkg/machinery/config/machine"
@@ -337,12 +338,15 @@ func (r *TalosConfigReconciler) reconcileGenerate(ctx context.Context, tcScope *
337338
return fmt.Errorf("failure applying StrategicPatches: %w", err)
338339
}
339340

340-
outBytes, err := out.Bytes()
341+
outCfg, err := out.Config()
341342
if err != nil {
342343
return fmt.Errorf("failure converting result to bytes: %w", err)
343344
}
344345

345-
retData.BootstrapData = string(outBytes)
346+
retData.BootstrapData, err = outCfg.EncodeString(encoder.WithComments(encoder.CommentsDisabled))
347+
if err != nil {
348+
return fmt.Errorf("failure converting config to string: %w", err)
349+
}
346350
}
347351

348352
// Packet acts a fool if you don't prepend #!talos to the userdata
@@ -422,7 +426,7 @@ func (r *TalosConfigReconciler) userConfigs(ctx context.Context, scope *TalosCon
422426
}
423427
}
424428

425-
userConfigStr, err := userConfig.EncodeString()
429+
userConfigStr, err := userConfig.EncodeString(encoder.WithComments(encoder.CommentsDisabled))
426430
if err != nil {
427431
return retBundle, err
428432
}
@@ -548,7 +552,7 @@ func (r *TalosConfigReconciler) genConfigs(ctx context.Context, scope *TalosConf
548552
data.RawV1Alpha1().MachineConfig.MachineNetwork.NetworkHostname = scope.ConfigOwner.GetName()
549553
}
550554

551-
dataOut, err := data.EncodeString()
555+
dataOut, err := data.EncodeString(encoder.WithComments(encoder.CommentsDisabled))
552556
if err != nil {
553557
return retBundle, err
554558
}

internal/integration/assertions_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ func assertMachineConfiguration(ctx context.Context, t *testing.T, c client.Clie
5959

6060
assert.Len(t, bootstrapDataSecret.Data, 1)
6161

62+
assert.Less(t, len(bootstrapDataSecret.Data["value"]), 32*1024) // 32KB limit on user-data size
63+
6264
provider, err := configloader.NewFromBytes(bootstrapDataSecret.Data["value"])
6365
require.NoError(t, err)
6466

internal/integration/integration_test.go

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import (
1313

1414
bootstrapv1alpha3 "github.com/siderolabs/cluster-api-bootstrap-provider-talos/api/v1alpha3"
1515
"github.com/siderolabs/talos/pkg/machinery/config"
16+
"github.com/siderolabs/talos/pkg/machinery/config/encoder"
1617
"github.com/siderolabs/talos/pkg/machinery/config/generate"
1718
"github.com/siderolabs/talos/pkg/machinery/config/generate/secrets"
1819
talosmachine "github.com/siderolabs/talos/pkg/machinery/config/machine"
@@ -320,12 +321,12 @@ func TestIntegration(t *testing.T) {
320321
machineconfig, err := input.Config(talosmachine.TypeWorker)
321322
require.NoError(t, err)
322323

323-
configdata, err := machineconfig.Bytes()
324+
configdata, err := machineconfig.EncodeString(encoder.WithComments(encoder.CommentsDisabled))
324325
require.NoError(t, err)
325326

326327
talosConfig := createTalosConfig(ctx, t, c, namespaceName, bootstrapv1alpha3.TalosConfigSpec{
327328
GenerateType: "none",
328-
Data: string(configdata),
329+
Data: configdata,
329330
})
330331
createMachine(ctx, t, c, cluster, talosConfig, true)
331332

@@ -344,12 +345,12 @@ func TestIntegration(t *testing.T) {
344345
machineconfig, err := input.Config(machineType)
345346
require.NoError(t, err)
346347

347-
configdata, err := machineconfig.Bytes()
348+
configdata, err := machineconfig.EncodeString(encoder.WithComments(encoder.CommentsDisabled))
348349
require.NoError(t, err)
349350

350351
talosConfig := createTalosConfig(ctx, t, c, namespaceName, bootstrapv1alpha3.TalosConfigSpec{
351352
GenerateType: "none",
352-
Data: string(configdata),
353+
Data: configdata,
353354
})
354355
createMachine(ctx, t, c, cluster, talosConfig, false)
355356

0 commit comments

Comments
 (0)