Skip to content

Commit a3ce62d

Browse files
committed
adapted server os-update schedules list command to align to expectations
1 parent 71e1b11 commit a3ce62d

2 files changed

Lines changed: 19 additions & 16 deletions

File tree

internal/cmd/server/os-update/schedule/list/list.go

Lines changed: 17 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -67,27 +67,25 @@ func NewCmd(params *types.CmdParams) *cobra.Command {
6767
if err != nil {
6868
return fmt.Errorf("list server os-update schedules: %w", err)
6969
}
70-
schedules := *resp.Items
71-
if len(schedules) == 0 {
72-
serverLabel := model.ServerId
73-
// Get server name
74-
if iaasApiClient, err := iaasClient.ConfigureClient(params.Printer, params.CliVersion); err == nil {
75-
serverName, err := iaasUtils.GetServerName(ctx, iaasApiClient, model.ProjectId, model.Region, model.ServerId)
76-
if err != nil {
77-
params.Printer.Debug(print.ErrorLevel, "get server name: %v", err)
78-
} else if serverName != "" {
79-
serverLabel = serverName
80-
}
70+
71+
schedules := resp.GetItems()
72+
73+
serverLabel := model.ServerId
74+
// Get server name
75+
if iaasApiClient, err := iaasClient.ConfigureClient(params.Printer, params.CliVersion); err == nil {
76+
serverName, err := iaasUtils.GetServerName(ctx, iaasApiClient, model.ProjectId, model.Region, model.ServerId)
77+
if err != nil {
78+
params.Printer.Debug(print.ErrorLevel, "get server name: %v", err)
79+
} else if serverName != "" {
80+
serverLabel = serverName
8181
}
82-
params.Printer.Info("No os-update schedules found for server %s\n", serverLabel)
83-
return nil
8482
}
8583

8684
// Truncate output
8785
if model.Limit != nil && len(schedules) > int(*model.Limit) {
8886
schedules = schedules[:*model.Limit]
8987
}
90-
return outputResult(params.Printer, model.OutputFormat, schedules)
88+
return outputResult(params.Printer, model.OutputFormat, serverLabel, schedules)
9189
},
9290
}
9391
configureFlags(cmd)
@@ -131,8 +129,12 @@ func buildRequest(ctx context.Context, model *inputModel, apiClient *serverupdat
131129
return req
132130
}
133131

134-
func outputResult(p *print.Printer, outputFormat string, schedules []serverupdate.UpdateSchedule) error {
132+
func outputResult(p *print.Printer, outputFormat, serverLabel string, schedules []serverupdate.UpdateSchedule) error {
135133
return p.OutputResult(outputFormat, schedules, func() error {
134+
if len(schedules) == 0 {
135+
p.Outputf("No os-update schedules found for server %s\n", serverLabel)
136+
return nil
137+
}
136138
table := tables.NewTable()
137139
table.SetHeader("SCHEDULE ID", "SCHEDULE NAME", "ENABLED", "RRULE", "MAINTENANCE WINDOW")
138140
for i := range schedules {

internal/cmd/server/os-update/schedule/list/list_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,7 @@ func TestBuildRequest(t *testing.T) {
157157
func TestOutputResult(t *testing.T) {
158158
type args struct {
159159
outputFormat string
160+
serverLabel string
160161
schedules []serverupdate.UpdateSchedule
161162
}
162163
tests := []struct {
@@ -173,7 +174,7 @@ func TestOutputResult(t *testing.T) {
173174
params := testparams.NewTestParams()
174175
for _, tt := range tests {
175176
t.Run(tt.name, func(t *testing.T) {
176-
if err := outputResult(params.Printer, tt.args.outputFormat, tt.args.schedules); (err != nil) != tt.wantErr {
177+
if err := outputResult(params.Printer, tt.args.outputFormat, tt.args.serverLabel, tt.args.schedules); (err != nil) != tt.wantErr {
177178
t.Errorf("outputResult() error = %v, wantErr %v", err, tt.wantErr)
178179
}
179180
})

0 commit comments

Comments
 (0)