github.com/ActiveState/cli@v0.0.0-20240508170324-6801f60cd051/pkg/platform/api/headchef/headchef_models/v2_build_status_response.go (about) 1 // Code generated by go-swagger; DO NOT EDIT. 2 3 package headchef_models 4 5 // This file was generated by the swagger tool. 6 // Editing this file might prove futile when you re-run the swagger generate command 7 8 import ( 9 "encoding/json" 10 "strconv" 11 12 strfmt "github.com/go-openapi/strfmt" 13 14 "github.com/go-openapi/errors" 15 "github.com/go-openapi/swag" 16 "github.com/go-openapi/validate" 17 ) 18 19 // V2BuildStatusResponse Build Status Response (V2) 20 // 21 // A snapshot of the current state of a particular build plan-driven build 22 // swagger:model V2BuildStatusResponse 23 type V2BuildStatusResponse struct { 24 25 // An array containing all the artifacts output from all the steps in this build, post-ordered from the build dependency graph. 26 // Required: true 27 Artifacts []*V2Artifact `json:"artifacts"` 28 29 // The ID of build plan for this build 30 // Required: true 31 // Format: uuid 32 BuildPlanID *strfmt.UUID `json:"build_plan_id"` 33 34 // Current state of the build's execution. 35 // Required: true 36 // Enum: [build_failed build_running build_succeeded] 37 BuildState *string `json:"build_state"` 38 } 39 40 // Validate validates this v2 build status response 41 func (m *V2BuildStatusResponse) Validate(formats strfmt.Registry) error { 42 var res []error 43 44 if err := m.validateArtifacts(formats); err != nil { 45 res = append(res, err) 46 } 47 48 if err := m.validateBuildPlanID(formats); err != nil { 49 res = append(res, err) 50 } 51 52 if err := m.validateBuildState(formats); err != nil { 53 res = append(res, err) 54 } 55 56 if len(res) > 0 { 57 return errors.CompositeValidationError(res...) 58 } 59 return nil 60 } 61 62 func (m *V2BuildStatusResponse) validateArtifacts(formats strfmt.Registry) error { 63 64 if err := validate.Required("artifacts", "body", m.Artifacts); err != nil { 65 return err 66 } 67 68 for i := 0; i < len(m.Artifacts); i++ { 69 if swag.IsZero(m.Artifacts[i]) { // not required 70 continue 71 } 72 73 if m.Artifacts[i] != nil { 74 if err := m.Artifacts[i].Validate(formats); err != nil { 75 if ve, ok := err.(*errors.Validation); ok { 76 return ve.ValidateName("artifacts" + "." + strconv.Itoa(i)) 77 } 78 return err 79 } 80 } 81 82 } 83 84 return nil 85 } 86 87 func (m *V2BuildStatusResponse) validateBuildPlanID(formats strfmt.Registry) error { 88 89 if err := validate.Required("build_plan_id", "body", m.BuildPlanID); err != nil { 90 return err 91 } 92 93 if err := validate.FormatOf("build_plan_id", "body", "uuid", m.BuildPlanID.String(), formats); err != nil { 94 return err 95 } 96 97 return nil 98 } 99 100 var v2BuildStatusResponseTypeBuildStatePropEnum []interface{} 101 102 func init() { 103 var res []string 104 if err := json.Unmarshal([]byte(`["build_failed","build_running","build_succeeded"]`), &res); err != nil { 105 panic(err) 106 } 107 for _, v := range res { 108 v2BuildStatusResponseTypeBuildStatePropEnum = append(v2BuildStatusResponseTypeBuildStatePropEnum, v) 109 } 110 } 111 112 const ( 113 114 // V2BuildStatusResponseBuildStateBuildFailed captures enum value "build_failed" 115 V2BuildStatusResponseBuildStateBuildFailed string = "build_failed" 116 117 // V2BuildStatusResponseBuildStateBuildRunning captures enum value "build_running" 118 V2BuildStatusResponseBuildStateBuildRunning string = "build_running" 119 120 // V2BuildStatusResponseBuildStateBuildSucceeded captures enum value "build_succeeded" 121 V2BuildStatusResponseBuildStateBuildSucceeded string = "build_succeeded" 122 ) 123 124 // prop value enum 125 func (m *V2BuildStatusResponse) validateBuildStateEnum(path, location string, value string) error { 126 if err := validate.Enum(path, location, value, v2BuildStatusResponseTypeBuildStatePropEnum); err != nil { 127 return err 128 } 129 return nil 130 } 131 132 func (m *V2BuildStatusResponse) validateBuildState(formats strfmt.Registry) error { 133 134 if err := validate.Required("build_state", "body", m.BuildState); err != nil { 135 return err 136 } 137 138 // value enum 139 if err := m.validateBuildStateEnum("build_state", "body", *m.BuildState); err != nil { 140 return err 141 } 142 143 return nil 144 } 145 146 // MarshalBinary interface implementation 147 func (m *V2BuildStatusResponse) MarshalBinary() ([]byte, error) { 148 if m == nil { 149 return nil, nil 150 } 151 return swag.WriteJSON(m) 152 } 153 154 // UnmarshalBinary interface implementation 155 func (m *V2BuildStatusResponse) UnmarshalBinary(b []byte) error { 156 var res V2BuildStatusResponse 157 if err := swag.ReadJSON(b, &res); err != nil { 158 return err 159 } 160 *m = res 161 return nil 162 }