diff --git a/orc8r/cloud/go/services/metricsd/obsidian/models/gettable_alert_swaggergen.go b/orc8r/cloud/go/services/metricsd/obsidian/models/gettable_alert_swaggergen.go new file mode 100644 index 000000000000..e7fafb83afad --- /dev/null +++ b/orc8r/cloud/go/services/metricsd/obsidian/models/gettable_alert_swaggergen.go @@ -0,0 +1,64 @@ +// Code generated by go-swagger; DO NOT EDIT. + +package models + +// This file was generated by the swagger tool. +// Editing this file might prove futile when you re-run the swagger generate command + +import ( + strfmt "github.com/go-openapi/strfmt" + + "github.com/go-openapi/errors" + "github.com/go-openapi/swag" + "github.com/go-openapi/validate" +) + +// GettableAlert gettable alert +// swagger:model gettable_alert +type GettableAlert struct { + + // name + // Required: true + Name *string `json:"name"` +} + +// Validate validates this gettable alert +func (m *GettableAlert) Validate(formats strfmt.Registry) error { + var res []error + + if err := m.validateName(formats); err != nil { + res = append(res, err) + } + + if len(res) > 0 { + return errors.CompositeValidationError(res...) + } + return nil +} + +func (m *GettableAlert) validateName(formats strfmt.Registry) error { + + if err := validate.Required("name", "body", m.Name); err != nil { + return err + } + + return nil +} + +// MarshalBinary interface implementation +func (m *GettableAlert) MarshalBinary() ([]byte, error) { + if m == nil { + return nil, nil + } + return swag.WriteJSON(m) +} + +// UnmarshalBinary interface implementation +func (m *GettableAlert) UnmarshalBinary(b []byte) error { + var res GettableAlert + if err := swag.ReadJSON(b, &res); err != nil { + return err + } + *m = res + return nil +} diff --git a/orc8r/cloud/go/services/metricsd/obsidian/models/prom_alert_config_swaggergen.go b/orc8r/cloud/go/services/metricsd/obsidian/models/prom_alert_config_swaggergen.go index 487e38ff6eed..ce86936aef66 100644 --- a/orc8r/cloud/go/services/metricsd/obsidian/models/prom_alert_config_swaggergen.go +++ b/orc8r/cloud/go/services/metricsd/obsidian/models/prom_alert_config_swaggergen.go @@ -22,20 +22,17 @@ type PromAlertConfig struct { Alert *string `json:"alert"` // annotations - // Required: true - Annotations PromAlertLabels `json:"annotations"` + Annotations PromAlertLabels `json:"annotations,omitempty"` // expr // Required: true Expr *string `json:"expr"` // for - // Required: true - For *string `json:"for"` + For string `json:"for,omitempty"` // labels - // Required: true - Labels PromAlertLabels `json:"labels"` + Labels PromAlertLabels `json:"labels,omitempty"` } // Validate validates this prom alert config @@ -54,10 +51,6 @@ func (m *PromAlertConfig) Validate(formats strfmt.Registry) error { res = append(res, err) } - if err := m.validateFor(formats); err != nil { - res = append(res, err) - } - if err := m.validateLabels(formats); err != nil { res = append(res, err) } @@ -79,6 +72,10 @@ func (m *PromAlertConfig) validateAlert(formats strfmt.Registry) error { func (m *PromAlertConfig) validateAnnotations(formats strfmt.Registry) error { + if swag.IsZero(m.Annotations) { // not required + return nil + } + if err := m.Annotations.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("annotations") @@ -98,17 +95,12 @@ func (m *PromAlertConfig) validateExpr(formats strfmt.Registry) error { return nil } -func (m *PromAlertConfig) validateFor(formats strfmt.Registry) error { +func (m *PromAlertConfig) validateLabels(formats strfmt.Registry) error { - if err := validate.Required("for", "body", m.For); err != nil { - return err + if swag.IsZero(m.Labels) { // not required + return nil } - return nil -} - -func (m *PromAlertConfig) validateLabels(formats strfmt.Registry) error { - if err := m.Labels.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("labels") diff --git a/orc8r/cloud/go/services/metricsd/obsidian/models/prom_firing_alert_swaggergen.go b/orc8r/cloud/go/services/metricsd/obsidian/models/prom_firing_alert_swaggergen.go index 2aef6261bc9e..c14dd899d387 100644 --- a/orc8r/cloud/go/services/metricsd/obsidian/models/prom_firing_alert_swaggergen.go +++ b/orc8r/cloud/go/services/metricsd/obsidian/models/prom_firing_alert_swaggergen.go @@ -30,8 +30,7 @@ type PromFiringAlert struct { Fingerprint *string `json:"fingerprint"` // generator URL - // Required: true - GeneratorURL *string `json:"generatorURL"` + GeneratorURL string `json:"generatorURL,omitempty"` // labels // Required: true @@ -39,7 +38,7 @@ type PromFiringAlert struct { // receivers // Required: true - Receivers *AlertReceiverConfig `json:"receivers"` + Receivers *GettableAlert `json:"receivers"` // starts at // Required: true @@ -70,10 +69,6 @@ func (m *PromFiringAlert) Validate(formats strfmt.Registry) error { res = append(res, err) } - if err := m.validateGeneratorURL(formats); err != nil { - res = append(res, err) - } - if err := m.validateLabels(formats); err != nil { res = append(res, err) } @@ -130,15 +125,6 @@ func (m *PromFiringAlert) validateFingerprint(formats strfmt.Registry) error { return nil } -func (m *PromFiringAlert) validateGeneratorURL(formats strfmt.Registry) error { - - if err := validate.Required("generatorURL", "body", m.GeneratorURL); err != nil { - return err - } - - return nil -} - func (m *PromFiringAlert) validateLabels(formats strfmt.Registry) error { if err := m.Labels.Validate(formats); err != nil { diff --git a/orc8r/cloud/go/services/metricsd/obsidian/models/sla_c_k_receiver_swaggergen.go b/orc8r/cloud/go/services/metricsd/obsidian/models/sla_c_k_receiver_swaggergen.go index 1758bb0c4c33..a28043ff6659 100644 --- a/orc8r/cloud/go/services/metricsd/obsidian/models/sla_c_k_receiver_swaggergen.go +++ b/orc8r/cloud/go/services/metricsd/obsidian/models/sla_c_k_receiver_swaggergen.go @@ -22,12 +22,10 @@ type SLACKReceiver struct { APIURL *string `json:"api_url"` // channel - // Required: true - Channel *string `json:"channel"` + Channel string `json:"channel,omitempty"` // username - // Required: true - Username *string `json:"username"` + Username string `json:"username,omitempty"` } // Validate validates this slack receiver @@ -38,14 +36,6 @@ func (m *SLACKReceiver) Validate(formats strfmt.Registry) error { res = append(res, err) } - if err := m.validateChannel(formats); err != nil { - res = append(res, err) - } - - if err := m.validateUsername(formats); err != nil { - res = append(res, err) - } - if len(res) > 0 { return errors.CompositeValidationError(res...) } @@ -61,24 +51,6 @@ func (m *SLACKReceiver) validateAPIURL(formats strfmt.Registry) error { return nil } -func (m *SLACKReceiver) validateChannel(formats strfmt.Registry) error { - - if err := validate.Required("channel", "body", m.Channel); err != nil { - return err - } - - return nil -} - -func (m *SLACKReceiver) validateUsername(formats strfmt.Registry) error { - - if err := validate.Required("username", "body", m.Username); err != nil { - return err - } - - return nil -} - // MarshalBinary interface implementation func (m *SLACKReceiver) MarshalBinary() ([]byte, error) { if m == nil { diff --git a/orc8r/cloud/go/services/metricsd/swagger/swagger.yml b/orc8r/cloud/go/services/metricsd/swagger/swagger.yml index db1cb77e040e..f59cb7408639 100644 --- a/orc8r/cloud/go/services/metricsd/swagger/swagger.yml +++ b/orc8r/cloud/go/services/metricsd/swagger/swagger.yml @@ -428,9 +428,6 @@ definitions: required: - alert - expr - - labels - - for - - annotations properties: alert: type: string @@ -484,8 +481,6 @@ definitions: type: object required: - api_url - - channel - - username properties: api_url: type: string @@ -504,7 +499,6 @@ definitions: - startsAt - status - updatedAt - - generatorURL - labels properties: annotations: @@ -514,7 +508,7 @@ definitions: fingerprint: type: string receivers: - $ref: '#/definitions/alert_receiver_config' + $ref: '#/definitions/gettable_alert' startsAt: type: string status: @@ -526,6 +520,14 @@ definitions: labels: $ref: '#/definitions/prom_alert_labels' + gettable_alert: + type: object + required: + - name + properties: + name: + type: string + prom_alert_status: type: object required: