diff --git a/internal/namespaces/domain/v2beta1/custom.go b/internal/namespaces/domain/v2beta1/custom.go index fe9cf7f63b..7a114834a2 100644 --- a/internal/namespaces/domain/v2beta1/custom.go +++ b/internal/namespaces/domain/v2beta1/custom.go @@ -22,5 +22,6 @@ func GetCommands() *core.Commands { )) human.RegisterMarshalerFunc(domain.DNSZoneStatus(""), human.EnumMarshalFunc(zoneStatusMarshalSpecs)) + human.RegisterMarshalerFunc(domain.SSLCertificateStatus(""), human.EnumMarshalFunc(certificateStatusMarshalSpecs)) return cmds } diff --git a/internal/namespaces/domain/v2beta1/custom_certificate.go b/internal/namespaces/domain/v2beta1/custom_certificate.go new file mode 100644 index 0000000000..24676cba2d --- /dev/null +++ b/internal/namespaces/domain/v2beta1/custom_certificate.go @@ -0,0 +1,18 @@ +package domain + +import ( + "github.com/fatih/color" + "github.com/scaleway/scaleway-cli/internal/human" + domain "github.com/scaleway/scaleway-sdk-go/api/domain/v2beta1" +) + +// certificateStatusMarshalSpecs marshals a domain.SSLCertificateStatus. +var ( + certificateStatusMarshalSpecs = human.EnumMarshalSpecs{ + domain.SSLCertificateStatusError: &human.EnumMarshalSpec{Attribute: color.FgRed}, + domain.SSLCertificateStatusNew: &human.EnumMarshalSpec{Attribute: color.FgBlue}, + domain.SSLCertificateStatusPending: &human.EnumMarshalSpec{Attribute: color.FgBlue}, + domain.SSLCertificateStatusSuccess: &human.EnumMarshalSpec{Attribute: color.FgGreen}, + domain.SSLCertificateStatusUnknown: &human.EnumMarshalSpec{Attribute: color.Faint}, + } +)