Skip to content

Commit

Permalink
cloudapi: add installer customizations to the API
Browse files Browse the repository at this point in the history
Adding both as a traditional compose request customization and in the
new blueprint customizations.
  • Loading branch information
achilleas-k committed Mar 12, 2024
1 parent 6f535bb commit e82335b
Show file tree
Hide file tree
Showing 4 changed files with 203 additions and 149 deletions.
21 changes: 21 additions & 0 deletions internal/cloudapi/v2/compose.go
Original file line number Diff line number Diff line change
Expand Up @@ -413,6 +413,16 @@ func (request *ComposeRequest) GetCustomizationsFromBlueprintRequest() (*bluepri
c.FIPS = rbpc.Fips
}

if installer := rbpc.Installer; installer != nil {
c.Installer = &blueprint.InstallerCustomization{}
if installer.Unattended != nil {
c.Installer.Unattended = *installer.Unattended
}
if installer.SudoNopasswd != nil {
c.Installer.SudoNopasswd = *installer.SudoNopasswd
}
}

return c, nil
}

Expand Down Expand Up @@ -872,6 +882,17 @@ func (request *ComposeRequest) GetBlueprintFromCustomizations() (blueprint.Bluep
bp.Customizations.FIPS = request.Customizations.Fips.Enabled
}

if request.Customizations.Installer != nil {
installer := &blueprint.InstallerCustomization{}
if request.Customizations.Installer.Unattended != nil {
installer.Unattended = *request.Customizations.Installer.Unattended
}
if request.Customizations.Installer.SudoNopasswd != nil {
installer.SudoNopasswd = *request.Customizations.Installer.SudoNopasswd
}
bp.Customizations.Installer = installer
}

// Did bp.Customizations get set at all? If not, set it back to nil
if reflect.DeepEqual(*bp.Customizations, blueprint.Customizations{}) {
bp.Customizations = nil
Expand Down
12 changes: 12 additions & 0 deletions internal/cloudapi/v2/compose_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,10 @@ func GetTestBlueprint() blueprint.Blueprint {
},
},
FIPS: common.ToPtr(true),
Installer: &blueprint.InstallerCustomization{
Unattended: true,
SudoNopasswd: []string{`%wheel`},
},
}

return expected
Expand Down Expand Up @@ -249,6 +253,10 @@ func TestGetBlueprintFromCustomizations(t *testing.T) {
}),
},
Fips: &FIPS{Enabled: common.ToPtr(true)},
Installer: &Installer{
Unattended: common.ToPtr(true),
SudoNopasswd: &[]string{`%wheel`},
},
}}

bp, err = cr.GetBlueprintFromCustomizations()
Expand Down Expand Up @@ -372,6 +380,10 @@ func TestGetBlueprintFromCompose(t *testing.T) {
}),
},
Fips: common.ToPtr(true),
Installer: &Installer{
Unattended: common.ToPtr(true),
SudoNopasswd: &[]string{`%wheel`},
},
},
}}

Expand Down
Loading

0 comments on commit e82335b

Please sign in to comment.