cli: Add more nil checking to service pretty-printer
Currently, if the service mode is not "global", this code assumes that Replicated is non-nil. This assumption may not be true in the future. Instead of making the assumption, explicitly check that Replicated is non-nil before using it. Similarly, for limits and reservations, enclose methods that read from Limits and Reservations within checks that those fields are non-nil. Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
This commit is contained in:
parent
c8a19aee09
commit
02cc464e1a
1 changed files with 7 additions and 5 deletions
|
@ -21,7 +21,7 @@ Labels:
|
|||
{{- end }}{{ end }}
|
||||
Mode:
|
||||
{{- if .IsModeGlobal }} Global
|
||||
{{- else }} Replicated
|
||||
{{- else if .IsModeReplicated }} Replicated
|
||||
{{- if .ModeReplicatedReplicas }}
|
||||
Replicas: {{ .ModeReplicatedReplicas }}
|
||||
{{- end }}{{ end }}
|
||||
|
@ -73,22 +73,20 @@ Mounts:
|
|||
Resources:
|
||||
{{- if .HasResourceReservations }}
|
||||
Reservations:
|
||||
{{- end }}
|
||||
{{- if gt .ResourceReservationNanoCPUs 0.0 }}
|
||||
CPU: {{ .ResourceReservationNanoCPUs }}
|
||||
{{- end }}
|
||||
{{- if .ResourceReservationMemory }}
|
||||
Memory: {{ .ResourceReservationMemory }}
|
||||
{{- end }}
|
||||
{{- end }}{{ end }}
|
||||
{{- if .HasResourceLimits }}
|
||||
Limits:
|
||||
{{- end }}
|
||||
{{- if gt .ResourceLimitsNanoCPUs 0.0 }}
|
||||
CPU: {{ .ResourceLimitsNanoCPUs }}
|
||||
{{- end }}
|
||||
{{- if .ResourceLimitMemory }}
|
||||
Memory: {{ .ResourceLimitMemory }}
|
||||
{{- end }}{{ end }}
|
||||
{{- end }}{{ end }}{{ end }}
|
||||
{{- if .Networks }}
|
||||
Networks:
|
||||
{{- range $network := .Networks }} {{ $network }}{{ end }} {{ end }}
|
||||
|
@ -156,6 +154,10 @@ func (ctx *serviceInspectContext) IsModeGlobal() bool {
|
|||
return ctx.Service.Spec.Mode.Global != nil
|
||||
}
|
||||
|
||||
func (ctx *serviceInspectContext) IsModeReplicated() bool {
|
||||
return ctx.Service.Spec.Mode.Replicated != nil
|
||||
}
|
||||
|
||||
func (ctx *serviceInspectContext) ModeReplicatedReplicas() *uint64 {
|
||||
return ctx.Service.Spec.Mode.Replicated.Replicas
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue