debian-forge-composer/internal/ignition/ignition.go
Antonio Murdaca 1672fb1cf6 wire ignition bp customization to simplified-installer and raw image
Signed-off-by: Antonio Murdaca <antoniomurdaca@gmail.com>
2023-01-17 14:02:02 +01:00

33 lines
846 B
Go

package ignition
import (
"encoding/base64"
"errors"
"github.com/osbuild/osbuild-composer/internal/blueprint"
)
type FirstBootOptions struct {
ProvisioningURL string
}
func FirstbootOptionsFromBP(bpIgnitionFirstboot blueprint.FirstBootIgnitionCustomization) *FirstBootOptions {
ignition := FirstBootOptions(bpIgnitionFirstboot)
return &ignition
}
type EmbeddedOptions struct {
ProvisioningURL string
Config string
}
func EmbeddedOptionsFromBP(bpIgnitionEmbedded blueprint.EmbeddedIgnitionCustomization) (*EmbeddedOptions, error) {
decodedConfig, err := base64.StdEncoding.DecodeString(bpIgnitionEmbedded.Config)
if err != nil {
return nil, errors.New("can't decode Ignition config")
}
return &EmbeddedOptions{
ProvisioningURL: bpIgnitionEmbedded.ProvisioningURL,
Config: string(decodedConfig),
}, nil
}