Skip to content

Commit 8dc9f14

Browse files
committed
fix(azure): custom image for Azure RHEL AI
Flag custom-ami (AWS-specific name) renamed to custom-image (more neutral). The flag was completely ignored, it always was searching for 3.0.0 Signed-off-by: Pavol Pitonak <ppitonak@redhat.com>
1 parent 05b801e commit 8dc9f14

4 files changed

Lines changed: 17 additions & 7 deletions

File tree

cmd/mapt/cmd/azure/hosts/rhelai.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ func getRHELAICreate() *cobra.Command {
5757
Prefix: "main",
5858
Version: viper.GetString(params.RhelAIVersion),
5959
Accelerator: viper.GetString(params.RhelAIAccelerator),
60-
CustomAMI: viper.GetString(params.RhelAIAMICustom),
60+
CustomImage: viper.GetString(params.RhelAIImageCustom),
6161
ComputeRequest: params.ComputeRequestArgs(),
6262
Spot: params.SpotArgs(),
6363
Timeout: viper.GetString(params.Timeout),
@@ -69,7 +69,7 @@ func getRHELAICreate() *cobra.Command {
6969
flagSet.StringToStringP(params.Tags, "", nil, params.TagsDesc)
7070
flagSet.StringP(params.RhelAIVersion, "", params.RhelAIVersionDefault, params.RhelAIVersionDesc)
7171
flagSet.StringP(params.RhelAIAccelerator, "", params.RhelAIAccelearatorDefault, params.RhelAIAccelearatorDesc)
72-
flagSet.StringP(params.RhelAIAMICustom, "", "", params.RhelAIAMICustomDesc)
72+
flagSet.StringP(params.RhelAIImageCustom, "", "", params.RhelAIImageCustomDesc)
7373
flagSet.StringP(params.Timeout, "", "", params.TimeoutDesc)
7474
params.AddComputeRequestFlags(flagSet)
7575
params.AddSpotFlags(flagSet)

cmd/mapt/cmd/params/params.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,8 @@ const (
108108
RhelAIAccelearatorDefault string = "cuda"
109109
RhelAIAMICustom string = "custom-ami"
110110
RhelAIAMICustomDesc string = "custom AMI to spin RHEL AI OS"
111+
RhelAIImageCustom string = "custom-image"
112+
RhelAIImageCustomDesc string = "custom image ID to spin RHEL AI OS"
111113

112114
// Serverless
113115
Timeout string = "timeout"

pkg/provider/azure/action/rhel-ai/rhelai.go

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,25 +22,32 @@ const (
2222
username = "azureuser"
2323
)
2424

25-
func imageId(accelerator, version string) string {
26-
iName := fmt.Sprintf(imageNameRegex, accelerator, version)
27-
gName := strings.ReplaceAll(iName, "-", "_")
25+
func imageIdFromName(imageName string) string {
26+
gName := strings.ReplaceAll(imageName, "-", "_")
2827
return fmt.Sprintf(imageIdRegex,
2928
imageOwnerSubscriptionId,
3029
gName,
31-
iName)
30+
imageName)
31+
}
32+
33+
func imageId(accelerator, version string) string {
34+
return imageIdFromName(fmt.Sprintf(imageNameRegex, accelerator, version))
3235
}
3336

3437
func Create(mCtxArgs *maptContext.ContextArgs, args *apiRHELAI.RHELAIArgs) (err error) {
3538
logging.Debug("Creating RHEL Server")
39+
sharedImageID := imageId(args.Accelerator, args.Version)
40+
if args.CustomImage != "" {
41+
sharedImageID = imageIdFromName(args.CustomImage)
42+
}
3643
azureLinuxRequest :=
3744
&azureLinux.LinuxArgs{
3845
Prefix: args.Prefix,
3946
// Location: args.Location,
4047
ComputeRequest: args.ComputeRequest,
4148
Spot: args.Spot,
4249
ImageRef: &data.ImageReference{
43-
SharedImageID: imageId(args.Accelerator, args.Version),
50+
SharedImageID: sharedImageID,
4451
},
4552
Username: username,
4653
ReadinessCommand: command.CommandPing}

pkg/target/host/rhelai/api.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ type RHELAIArgs struct {
1010
Accelerator string
1111
Version string
1212
CustomAMI string
13+
CustomImage string
1314
Arch string
1415
ComputeRequest *cr.ComputeRequestArgs
1516
Spot *spotTypes.SpotArgs

0 commit comments

Comments
 (0)