Documentation
¶
Index ¶
- Constants
- func CustomData(cfg *aksnodeconfigv1.Configuration) (string, error)
- func CustomDataFlatcar(cfg *aksnodeconfigv1.Configuration) (string, error)
- func MarshalConfigurationV1(cfg *aksnodeconfigv1.Configuration) ([]byte, error)
- func PopulateAllFields(msg proto.Message)
- func UnmarshalConfigurationV1(data []byte) (*aksnodeconfigv1.Configuration, error)
- func Validate(cfg *aksnodeconfigv1.Configuration) error
Constants ¶
const ( CSE = "/opt/azure/containers/aks-node-controller provision-wait" AKSNodeConfigFilePath = "/opt/azure/containers/aks-node-controller-config.json" // EnabledFeaturesFilePath is read by the wrapper; must match its FEATURES_PATH. EnabledFeaturesFilePath = "/opt/azure/containers/enabled_features.sh" )
Variables ¶
This section is empty.
Functions ¶
func CustomData ¶
func CustomData(cfg *aksnodeconfigv1.Configuration) (string, error)
CustomData builds base64-encoded VM custom data for cloud-init. The boothook writes the node configuration and starts aks-node-controller. CustomData-only provisioning uses a plain boothook so patched cloud-init recognizes the top-level Ready reporting marker. Other modes pair the boothook with a cloud-config part in a MIME multipart document.
func CustomDataFlatcar ¶ added in v0.20260324.0
func CustomDataFlatcar(cfg *aksnodeconfigv1.Configuration) (string, error)
CustomDataFlatcar builds base64-encoded custom data for Flatcar Container Linux nodes. Unlike Ubuntu/Azure Linux which use cloud-init, Flatcar uses Ignition (configured via Butane) to process machine configuration. Ignition consumes a JSON document that declaratively specifies files to write to disk, so we embed the node config directly as a base64 data URI in an Ignition storage entry instead of wrapping it in a MIME multipart boothook script.
func MarshalConfigurationV1 ¶
func MarshalConfigurationV1(cfg *aksnodeconfigv1.Configuration) ([]byte, error)
func PopulateAllFields ¶
PopulateAllFields recursively populates all fields in a protobuf message with non-zero test values. This is used for testing to ensure all fields can be marshaled/unmarshaled correctly.
func UnmarshalConfigurationV1 ¶
func UnmarshalConfigurationV1(data []byte) (*aksnodeconfigv1.Configuration, error)
func Validate ¶
func Validate(cfg *aksnodeconfigv1.Configuration) error
Validate checks required fields, then validates and normalizes provisioning settings in place. Producers (RP, E2E) call it before serialization and ANC calls it before rendering, so both sides enforce the same contract. It is idempotent.
Types ¶
This section is empty.