diff --git a/castai/resource_edge_location.go b/castai/resource_edge_location.go index 19d1723f..a2e2a901 100644 --- a/castai/resource_edge_location.go +++ b/castai/resource_edge_location.go @@ -383,7 +383,7 @@ func (r *edgeLocationResource) Create(ctx context.Context, req resource.CreateRe createReq := omni.EdgeLocationsAPICreateEdgeLocationJSONRequestBody{ Name: plan.Name.ValueString(), - Region: plan.Region.ValueString(), + Region: plan.Region.ValueStringPointer(), Zones: lo.ToPtr(r.toZones(plan.Zones)), } @@ -463,7 +463,9 @@ func (r *edgeLocationResource) Read(ctx context.Context, req resource.ReadReques edgeLocation := apiResp.JSON200 - state.Region = types.StringValue(edgeLocation.Region) + if edgeLocation.Region != nil { + state.Region = types.StringValue(*edgeLocation.Region) + } state.Name = types.StringValue(edgeLocation.Name) state.Description = types.StringNull() if edgeLocation.Description != nil { diff --git a/castai/sdk/api.gen.go b/castai/sdk/api.gen.go index 991eebe1..d154b8c9 100644 --- a/castai/sdk/api.gen.go +++ b/castai/sdk/api.gen.go @@ -736,7 +736,6 @@ const ( WorkloadoptimizationV1EventTypeEVENTTYPEFAILEDHELMTESTHOOK WorkloadoptimizationV1EventType = "EVENT_TYPE_FAILED_HELM_TEST_HOOK" WorkloadoptimizationV1EventTypeEVENTTYPEHPAALMOSTMAXEDOUT WorkloadoptimizationV1EventType = "EVENT_TYPE_HPA_ALMOST_MAXED_OUT" WorkloadoptimizationV1EventTypeEVENTTYPEHPAMAXEDOUT WorkloadoptimizationV1EventType = "EVENT_TYPE_HPA_MAXED_OUT" - WorkloadoptimizationV1EventTypeEVENTTYPEINFINITESCALING WorkloadoptimizationV1EventType = "EVENT_TYPE_INFINITE_SCALING" WorkloadoptimizationV1EventTypeEVENTTYPEINVALID WorkloadoptimizationV1EventType = "EVENT_TYPE_INVALID" WorkloadoptimizationV1EventTypeEVENTTYPEMEMORYPRESSUREEVICTION WorkloadoptimizationV1EventType = "EVENT_TYPE_MEMORY_PRESSURE_EVICTION" WorkloadoptimizationV1EventTypeEVENTTYPENATIVEVPASTATECHANGED WorkloadoptimizationV1EventType = "EVENT_TYPE_NATIVE_VPA_STATE_CHANGED" @@ -752,6 +751,7 @@ const ( WorkloadoptimizationV1EventTypeEVENTTYPESURGE WorkloadoptimizationV1EventType = "EVENT_TYPE_SURGE" WorkloadoptimizationV1EventTypeEVENTTYPESYSTEMOVERRIDERESET WorkloadoptimizationV1EventType = "EVENT_TYPE_SYSTEM_OVERRIDE_RESET" WorkloadoptimizationV1EventTypeEVENTTYPESYSTEMOVERRIDETRIGGERED WorkloadoptimizationV1EventType = "EVENT_TYPE_SYSTEM_OVERRIDE_TRIGGERED" + WorkloadoptimizationV1EventTypeEVENTTYPEUNBOUNDMEMORYGROWTH WorkloadoptimizationV1EventType = "EVENT_TYPE_UNBOUND_MEMORY_GROWTH" ) // Defines values for WorkloadoptimizationV1GetAgentStatusResponseAgentStatus. @@ -984,6 +984,7 @@ const ( // Defines values for WorkloadoptimizationV1SystemOverrideOrigin. const ( SYSTEMOVERRIDEORIGINCONTINUOUSOOMKILLED WorkloadoptimizationV1SystemOverrideOrigin = "SYSTEM_OVERRIDE_ORIGIN_CONTINUOUS_OOM_KILLED" + SYSTEMOVERRIDEORIGINUNBOUNDMEMORYGROWTH WorkloadoptimizationV1SystemOverrideOrigin = "SYSTEM_OVERRIDE_ORIGIN_UNBOUND_MEMORY_GROWTH" SYSTEMOVERRIDEORIGINUNSPECIFIED WorkloadoptimizationV1SystemOverrideOrigin = "SYSTEM_OVERRIDE_ORIGIN_UNSPECIFIED" ) @@ -1232,7 +1233,6 @@ const ( WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPEFAILEDHELMTESTHOOK WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_FAILED_HELM_TEST_HOOK" WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPEHPAALMOSTMAXEDOUT WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_HPA_ALMOST_MAXED_OUT" WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPEHPAMAXEDOUT WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_HPA_MAXED_OUT" - WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPEINFINITESCALING WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_INFINITE_SCALING" WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPEINVALID WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_INVALID" WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPEMEMORYPRESSUREEVICTION WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_MEMORY_PRESSURE_EVICTION" WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPENATIVEVPASTATECHANGED WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_NATIVE_VPA_STATE_CHANGED" @@ -1248,6 +1248,7 @@ const ( WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPESURGE WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_SURGE" WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPESYSTEMOVERRIDERESET WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_SYSTEM_OVERRIDE_RESET" WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPESYSTEMOVERRIDETRIGGERED WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_SYSTEM_OVERRIDE_TRIGGERED" + WorkloadOptimizationAPIListWorkloadEventsParamsTypeEVENTTYPEUNBOUNDMEMORYGROWTH WorkloadOptimizationAPIListWorkloadEventsParamsType = "EVENT_TYPE_UNBOUND_MEMORY_GROWTH" ) // Defines values for WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType. @@ -1258,7 +1259,6 @@ const ( EVENTTYPEFAILEDHELMTESTHOOK WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_FAILED_HELM_TEST_HOOK" EVENTTYPEHPAALMOSTMAXEDOUT WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_HPA_ALMOST_MAXED_OUT" EVENTTYPEHPAMAXEDOUT WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_HPA_MAXED_OUT" - EVENTTYPEINFINITESCALING WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_INFINITE_SCALING" EVENTTYPEINVALID WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_INVALID" EVENTTYPEMEMORYPRESSUREEVICTION WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_MEMORY_PRESSURE_EVICTION" EVENTTYPENATIVEVPASTATECHANGED WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_NATIVE_VPA_STATE_CHANGED" @@ -1274,6 +1274,7 @@ const ( EVENTTYPESURGE WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_SURGE" EVENTTYPESYSTEMOVERRIDERESET WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_SYSTEM_OVERRIDE_RESET" EVENTTYPESYSTEMOVERRIDETRIGGERED WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_SYSTEM_OVERRIDE_TRIGGERED" + EVENTTYPEUNBOUNDMEMORYGROWTH WorkloadOptimizationAPIGetWorkloadEventsSummaryParamsType = "EVENT_TYPE_UNBOUND_MEMORY_GROWTH" ) // Defines values for WorkloadOptimizationAPIListWorkloadsParamsManagementOptions. @@ -8422,8 +8423,15 @@ type WorkloadoptimizationV1CPUPressureResolvedEvent struct { // WorkloadoptimizationV1CPUPressureSettings CPUPressureSettings configures CPU pressure anomaly detection thresholds. // Values are percentages in the range 0-100. type WorkloadoptimizationV1CPUPressureSettings struct { - CpuStallThresholdPercentage *float64 `json:"cpuStallThresholdPercentage"` - MinPressuredPodPercentage *float64 `json:"minPressuredPodPercentage"` + // CpuStallThresholdPercentage CPUStallThresholdPercentage is the percentage of time (0-100) that a pod + // must experience CPU pressure to be considered under pressure. + // For example, 50 means the pod must be stalled for at least 50% of the 5minute time window. + CpuStallThresholdPercentage float64 `json:"cpuStallThresholdPercentage"` + + // MinPressuredPodPercentage MinPressuredPodPercentage is the percentage (0-100) of pods that must be + // experiencing pressure for the detector to trigger. + // For example, 50 means at least 50% of the workload's pods must be under pressure. + MinPressuredPodPercentage float64 `json:"minPressuredPodPercentage"` } // WorkloadoptimizationV1ConfidenceSettings defines model for workloadoptimization.v1.ConfidenceSettings. @@ -8705,7 +8713,6 @@ type WorkloadoptimizationV1Event struct { FailedHook *WorkloadoptimizationV1FailedHookEvent `json:"failedHook,omitempty"` HpaAlmostMaxedOut *WorkloadoptimizationV1HPAMaxedOutEvent `json:"hpaAlmostMaxedOut,omitempty"` HpaMaxedOut *WorkloadoptimizationV1HPAMaxedOutEvent `json:"hpaMaxedOut,omitempty"` - InfiniteMemoryScaling *WorkloadoptimizationV1InfiniteMemoryScalingEvent `json:"infiniteMemoryScaling,omitempty"` MemoryPressureEviction *WorkloadoptimizationV1MemoryPressureEvictionEvent `json:"memoryPressureEviction,omitempty"` NativeVpaStateChanged *WorkloadoptimizationV1NativeVPAStateChangedEvent `json:"nativeVpaStateChanged,omitempty"` OomKill *WorkloadoptimizationV1OOMKillEvent `json:"oomKill,omitempty"` @@ -8724,6 +8731,7 @@ type WorkloadoptimizationV1Event struct { // SystemOverrideTriggered SystemOverrideTriggeredEvent is emitted when CAST AI activates a system override on a workload. SystemOverrideTriggered *WorkloadoptimizationV1SystemOverrideTriggeredEvent `json:"systemOverrideTriggered,omitempty"` + UnboundMemoryGrowth *WorkloadoptimizationV1UnboundMemoryGrowthEvent `json:"unboundMemoryGrowth,omitempty"` } // WorkloadoptimizationV1EventContainer defines model for workloadoptimization.v1.EventContainer. @@ -9217,9 +9225,6 @@ type WorkloadoptimizationV1HorizontalPodAutoscalerBehavior struct { // WorkloadoptimizationV1InPlaceResizeStatus InPlaceResizeStatus explains the in-place resize status. type WorkloadoptimizationV1InPlaceResizeStatus string -// WorkloadoptimizationV1InfiniteMemoryScalingEvent defines model for workloadoptimization.v1.InfiniteMemoryScalingEvent. -type WorkloadoptimizationV1InfiniteMemoryScalingEvent = map[string]interface{} - // WorkloadoptimizationV1InitiatedBy defines model for workloadoptimization.v1.InitiatedBy. type WorkloadoptimizationV1InitiatedBy struct { Email *string `json:"email"` @@ -10125,6 +10130,7 @@ type WorkloadoptimizationV1SurgeEvent struct { // WorkloadoptimizationV1SystemOverrideOrigin SystemOverrideOrigin defines the reason why a system override was triggered. // // - SYSTEM_OVERRIDE_ORIGIN_CONTINUOUS_OOM_KILLED: Override triggered due to continuous OOM kills after multiple scaling attempts. +// - SYSTEM_OVERRIDE_ORIGIN_UNBOUND_MEMORY_GROWTH: Override triggered due to detected unbound memory growth. type WorkloadoptimizationV1SystemOverrideOrigin string // WorkloadoptimizationV1SystemOverrideResetEvent SystemOverrideResetEvent is emitted when a system override on a workload is deactivated. @@ -10161,6 +10167,7 @@ type WorkloadoptimizationV1SystemOverrideTriggeredEvent struct { // Origin SystemOverrideOrigin defines the reason why a system override was triggered. // // - SYSTEM_OVERRIDE_ORIGIN_CONTINUOUS_OOM_KILLED: Override triggered due to continuous OOM kills after multiple scaling attempts. + // - SYSTEM_OVERRIDE_ORIGIN_UNBOUND_MEMORY_GROWTH: Override triggered due to detected unbound memory growth. Origin WorkloadoptimizationV1SystemOverrideOrigin `json:"origin"` // Target SystemOverrideTarget defines which workload optimization features are affected by the system override. @@ -10176,6 +10183,9 @@ type WorkloadoptimizationV1TimeSeriesMetric struct { Value float64 `json:"value"` } +// WorkloadoptimizationV1UnboundMemoryGrowthEvent defines model for workloadoptimization.v1.UnboundMemoryGrowthEvent. +type WorkloadoptimizationV1UnboundMemoryGrowthEvent = map[string]interface{} + // WorkloadoptimizationV1UpdateCustomMetricsDataSource defines model for workloadoptimization.v1.UpdateCustomMetricsDataSource. type WorkloadoptimizationV1UpdateCustomMetricsDataSource struct { Data *WorkloadoptimizationV1CustomMetricsDataSourceData `json:"data,omitempty"` diff --git a/castai/sdk/omni/api.gen.go b/castai/sdk/omni/api.gen.go index a9e653fd..b0023d4e 100644 --- a/castai/sdk/omni/api.gen.go +++ b/castai/sdk/omni/api.gen.go @@ -177,6 +177,9 @@ type Condition struct { Type *string `json:"type,omitempty"` } +// CustomProviderParam Custom cloud provider params. +type CustomProviderParam = map[string]interface{} + // EdgeLocation Message to represent edge location. type EdgeLocation struct { // Aws AWS specific parameters. @@ -188,6 +191,9 @@ type EdgeLocation struct { // CreateTime The creation timestamp. CreateTime *time.Time `json:"createTime,omitempty"` + // Custom Custom cloud parameters. + Custom *CustomProviderParam `json:"custom,omitempty"` + // DeleteTime The deletion timestamp. DeleteTime *time.Time `json:"deleteTime,omitempty"` @@ -212,7 +218,7 @@ type EdgeLocation struct { Oci *OCIParam `json:"oci,omitempty"` // Region The region of edge location. - Region string `json:"region"` + Region *string `json:"region,omitempty"` // State The state of the edge location on API level. State *EdgeLocationState `json:"state,omitempty"` @@ -235,6 +241,9 @@ type EdgeLocationUpdate struct { // Aws AWS specific parameters. Aws *AWSParam `json:"aws,omitempty"` + // Custom Custom cloud parameters. + Custom *CustomProviderParam `json:"custom,omitempty"` + // Description The description of the edge location. Description *string `json:"description,omitempty"` @@ -351,9 +360,15 @@ type OCIParamCredentials struct { // OCIParamNetworking Networking configuration of OCI edge location. type OCIParamNetworking struct { + // SecurityGroupId The id of the security group to be used in the selected region. + SecurityGroupId *string `json:"securityGroupId,omitempty"` + // SubnetId OCI subnet id of edge location. SubnetId string `json:"subnetId"` + // VcnCidr VCN IPv4 CIDR block. + VcnCidr *string `json:"vcnCidr,omitempty"` + // VcnId OCI virtual cloud network id of edge location. VcnId string `json:"vcnId"` } diff --git a/castai/sdk/omni/client.gen.go b/castai/sdk/omni/client.gen.go index a253f44c..5eea1aa5 100644 --- a/castai/sdk/omni/client.gen.go +++ b/castai/sdk/omni/client.gen.go @@ -112,6 +112,9 @@ type ClientInterface interface { EdgeLocationsAPIUpdateEdgeLocation(ctx context.Context, organizationId string, clusterId string, id string, params *EdgeLocationsAPIUpdateEdgeLocationParams, body EdgeLocationsAPIUpdateEdgeLocationJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error) + // EdgeLocationsAPIGetEdgeInitdScript request + EdgeLocationsAPIGetEdgeInitdScript(ctx context.Context, organizationId string, clusterId string, id string, reqEditors ...RequestEditorFn) (*http.Response, error) + // EdgeLocationsAPIOffboardEdgeLocation request EdgeLocationsAPIOffboardEdgeLocation(ctx context.Context, organizationId string, clusterId string, id string, reqEditors ...RequestEditorFn) (*http.Response, error) @@ -241,6 +244,18 @@ func (c *Client) EdgeLocationsAPIUpdateEdgeLocation(ctx context.Context, organiz return c.Client.Do(req) } +func (c *Client) EdgeLocationsAPIGetEdgeInitdScript(ctx context.Context, organizationId string, clusterId string, id string, reqEditors ...RequestEditorFn) (*http.Response, error) { + req, err := NewEdgeLocationsAPIGetEdgeInitdScriptRequest(c.Server, organizationId, clusterId, id) + if err != nil { + return nil, err + } + req = req.WithContext(ctx) + if err := c.applyEditors(ctx, req, reqEditors); err != nil { + return nil, err + } + return c.Client.Do(req) +} + func (c *Client) EdgeLocationsAPIOffboardEdgeLocation(ctx context.Context, organizationId string, clusterId string, id string, reqEditors ...RequestEditorFn) (*http.Response, error) { req, err := NewEdgeLocationsAPIOffboardEdgeLocationRequest(c.Server, organizationId, clusterId, id) if err != nil { @@ -773,6 +788,54 @@ func NewEdgeLocationsAPIUpdateEdgeLocationRequestWithBody(server string, organiz return req, nil } +// NewEdgeLocationsAPIGetEdgeInitdScriptRequest generates requests for EdgeLocationsAPIGetEdgeInitdScript +func NewEdgeLocationsAPIGetEdgeInitdScriptRequest(server string, organizationId string, clusterId string, id string) (*http.Request, error) { + var err error + + var pathParam0 string + + pathParam0, err = runtime.StyleParamWithLocation("simple", false, "organizationId", runtime.ParamLocationPath, organizationId) + if err != nil { + return nil, err + } + + var pathParam1 string + + pathParam1, err = runtime.StyleParamWithLocation("simple", false, "clusterId", runtime.ParamLocationPath, clusterId) + if err != nil { + return nil, err + } + + var pathParam2 string + + pathParam2, err = runtime.StyleParamWithLocation("simple", false, "id", runtime.ParamLocationPath, id) + if err != nil { + return nil, err + } + + serverURL, err := url.Parse(server) + if err != nil { + return nil, err + } + + operationPath := fmt.Sprintf("/omni-provisioner/v1beta/organizations/%s/clusters/%s/edge-locations/%s:edgeInitdScript", pathParam0, pathParam1, pathParam2) + if operationPath[0] == '/' { + operationPath = "." + operationPath + } + + queryURL, err := serverURL.Parse(operationPath) + if err != nil { + return nil, err + } + + req, err := http.NewRequest("GET", queryURL.String(), nil) + if err != nil { + return nil, err + } + + return req, nil +} + // NewEdgeLocationsAPIOffboardEdgeLocationRequest generates requests for EdgeLocationsAPIOffboardEdgeLocation func NewEdgeLocationsAPIOffboardEdgeLocationRequest(server string, organizationId string, clusterId string, id string) (*http.Request, error) { var err error @@ -1312,6 +1375,9 @@ type ClientWithResponsesInterface interface { EdgeLocationsAPIUpdateEdgeLocationWithResponse(ctx context.Context, organizationId string, clusterId string, id string, params *EdgeLocationsAPIUpdateEdgeLocationParams, body EdgeLocationsAPIUpdateEdgeLocationJSONRequestBody) (*EdgeLocationsAPIUpdateEdgeLocationResponse, error) + // EdgeLocationsAPIGetEdgeInitdScript request + EdgeLocationsAPIGetEdgeInitdScriptWithResponse(ctx context.Context, organizationId string, clusterId string, id string) (*EdgeLocationsAPIGetEdgeInitdScriptResponse, error) + // EdgeLocationsAPIOffboardEdgeLocation request EdgeLocationsAPIOffboardEdgeLocationWithResponse(ctx context.Context, organizationId string, clusterId string, id string) (*EdgeLocationsAPIOffboardEdgeLocationResponse, error) @@ -1539,6 +1605,36 @@ func (r EdgeLocationsAPIUpdateEdgeLocationResponse) GetBody() []byte { // TODO: to have common interface. https://github.com/deepmap/oapi-codegen/issues/240 +type EdgeLocationsAPIGetEdgeInitdScriptResponse struct { + Body []byte + HTTPResponse *http.Response + JSONDefault *Status +} + +// Status returns HTTPResponse.Status +func (r EdgeLocationsAPIGetEdgeInitdScriptResponse) Status() string { + if r.HTTPResponse != nil { + return r.HTTPResponse.Status + } + return http.StatusText(0) +} + +// StatusCode returns HTTPResponse.StatusCode +func (r EdgeLocationsAPIGetEdgeInitdScriptResponse) StatusCode() int { + if r.HTTPResponse != nil { + return r.HTTPResponse.StatusCode + } + return 0 +} + +// TODO: to have common interface. https://github.com/deepmap/oapi-codegen/issues/240 +// Body returns body of byte array +func (r EdgeLocationsAPIGetEdgeInitdScriptResponse) GetBody() []byte { + return r.Body +} + +// TODO: to have common interface. https://github.com/deepmap/oapi-codegen/issues/240 + type EdgeLocationsAPIOffboardEdgeLocationResponse struct { Body []byte HTTPResponse *http.Response @@ -1915,6 +2011,15 @@ func (c *ClientWithResponses) EdgeLocationsAPIUpdateEdgeLocationWithResponse(ctx return ParseEdgeLocationsAPIUpdateEdgeLocationResponse(rsp) } +// EdgeLocationsAPIGetEdgeInitdScriptWithResponse request returning *EdgeLocationsAPIGetEdgeInitdScriptResponse +func (c *ClientWithResponses) EdgeLocationsAPIGetEdgeInitdScriptWithResponse(ctx context.Context, organizationId string, clusterId string, id string) (*EdgeLocationsAPIGetEdgeInitdScriptResponse, error) { + rsp, err := c.EdgeLocationsAPIGetEdgeInitdScript(ctx, organizationId, clusterId, id) + if err != nil { + return nil, err + } + return ParseEdgeLocationsAPIGetEdgeInitdScriptResponse(rsp) +} + // EdgeLocationsAPIOffboardEdgeLocationWithResponse request returning *EdgeLocationsAPIOffboardEdgeLocationResponse func (c *ClientWithResponses) EdgeLocationsAPIOffboardEdgeLocationWithResponse(ctx context.Context, organizationId string, clusterId string, id string) (*EdgeLocationsAPIOffboardEdgeLocationResponse, error) { rsp, err := c.EdgeLocationsAPIOffboardEdgeLocation(ctx, organizationId, clusterId, id) @@ -2204,6 +2309,32 @@ func ParseEdgeLocationsAPIUpdateEdgeLocationResponse(rsp *http.Response) (*EdgeL return response, nil } +// ParseEdgeLocationsAPIGetEdgeInitdScriptResponse parses an HTTP response from a EdgeLocationsAPIGetEdgeInitdScriptWithResponse call +func ParseEdgeLocationsAPIGetEdgeInitdScriptResponse(rsp *http.Response) (*EdgeLocationsAPIGetEdgeInitdScriptResponse, error) { + bodyBytes, err := ioutil.ReadAll(rsp.Body) + defer rsp.Body.Close() + if err != nil { + return nil, err + } + + response := &EdgeLocationsAPIGetEdgeInitdScriptResponse{ + Body: bodyBytes, + HTTPResponse: rsp, + } + + switch { + case strings.Contains(rsp.Header.Get("Content-Type"), "json") && true: + var dest Status + if err := json.Unmarshal(bodyBytes, &dest); err != nil { + return nil, err + } + response.JSONDefault = &dest + + } + + return response, nil +} + // ParseEdgeLocationsAPIOffboardEdgeLocationResponse parses an HTTP response from a EdgeLocationsAPIOffboardEdgeLocationWithResponse call func ParseEdgeLocationsAPIOffboardEdgeLocationResponse(rsp *http.Response) (*EdgeLocationsAPIOffboardEdgeLocationResponse, error) { bodyBytes, err := ioutil.ReadAll(rsp.Body) diff --git a/castai/sdk/omni/mock/client.go b/castai/sdk/omni/mock/client.go index 704f5706..d44083cc 100644 --- a/castai/sdk/omni/mock/client.go +++ b/castai/sdk/omni/mock/client.go @@ -295,6 +295,26 @@ func (mr *MockClientInterfaceMockRecorder) EdgeLocationsAPIDeleteEdgeLocation(ct return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "EdgeLocationsAPIDeleteEdgeLocation", reflect.TypeOf((*MockClientInterface)(nil).EdgeLocationsAPIDeleteEdgeLocation), varargs...) } +// EdgeLocationsAPIGetEdgeInitdScript mocks base method. +func (m *MockClientInterface) EdgeLocationsAPIGetEdgeInitdScript(ctx context.Context, organizationId, clusterId, id string, reqEditors ...omni.RequestEditorFn) (*http.Response, error) { + m.ctrl.T.Helper() + varargs := []interface{}{ctx, organizationId, clusterId, id} + for _, a := range reqEditors { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "EdgeLocationsAPIGetEdgeInitdScript", varargs...) + ret0, _ := ret[0].(*http.Response) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// EdgeLocationsAPIGetEdgeInitdScript indicates an expected call of EdgeLocationsAPIGetEdgeInitdScript. +func (mr *MockClientInterfaceMockRecorder) EdgeLocationsAPIGetEdgeInitdScript(ctx, organizationId, clusterId, id interface{}, reqEditors ...interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]interface{}{ctx, organizationId, clusterId, id}, reqEditors...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "EdgeLocationsAPIGetEdgeInitdScript", reflect.TypeOf((*MockClientInterface)(nil).EdgeLocationsAPIGetEdgeInitdScript), varargs...) +} + // EdgeLocationsAPIGetEdgeLocation mocks base method. func (m *MockClientInterface) EdgeLocationsAPIGetEdgeLocation(ctx context.Context, organizationId, clusterId, id string, reqEditors ...omni.RequestEditorFn) (*http.Response, error) { m.ctrl.T.Helper() @@ -863,6 +883,41 @@ func (mr *MockClientWithResponsesInterfaceMockRecorder) EdgeLocationsAPIDeleteEd return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "EdgeLocationsAPIDeleteEdgeLocationWithResponse", reflect.TypeOf((*MockClientWithResponsesInterface)(nil).EdgeLocationsAPIDeleteEdgeLocationWithResponse), ctx, organizationId, clusterId, id) } +// EdgeLocationsAPIGetEdgeInitdScript mocks base method. +func (m *MockClientWithResponsesInterface) EdgeLocationsAPIGetEdgeInitdScript(ctx context.Context, organizationId, clusterId, id string, reqEditors ...omni.RequestEditorFn) (*http.Response, error) { + m.ctrl.T.Helper() + varargs := []interface{}{ctx, organizationId, clusterId, id} + for _, a := range reqEditors { + varargs = append(varargs, a) + } + ret := m.ctrl.Call(m, "EdgeLocationsAPIGetEdgeInitdScript", varargs...) + ret0, _ := ret[0].(*http.Response) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// EdgeLocationsAPIGetEdgeInitdScript indicates an expected call of EdgeLocationsAPIGetEdgeInitdScript. +func (mr *MockClientWithResponsesInterfaceMockRecorder) EdgeLocationsAPIGetEdgeInitdScript(ctx, organizationId, clusterId, id interface{}, reqEditors ...interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + varargs := append([]interface{}{ctx, organizationId, clusterId, id}, reqEditors...) + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "EdgeLocationsAPIGetEdgeInitdScript", reflect.TypeOf((*MockClientWithResponsesInterface)(nil).EdgeLocationsAPIGetEdgeInitdScript), varargs...) +} + +// EdgeLocationsAPIGetEdgeInitdScriptWithResponse mocks base method. +func (m *MockClientWithResponsesInterface) EdgeLocationsAPIGetEdgeInitdScriptWithResponse(ctx context.Context, organizationId, clusterId, id string) (*omni.EdgeLocationsAPIGetEdgeInitdScriptResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "EdgeLocationsAPIGetEdgeInitdScriptWithResponse", ctx, organizationId, clusterId, id) + ret0, _ := ret[0].(*omni.EdgeLocationsAPIGetEdgeInitdScriptResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// EdgeLocationsAPIGetEdgeInitdScriptWithResponse indicates an expected call of EdgeLocationsAPIGetEdgeInitdScriptWithResponse. +func (mr *MockClientWithResponsesInterfaceMockRecorder) EdgeLocationsAPIGetEdgeInitdScriptWithResponse(ctx, organizationId, clusterId, id interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "EdgeLocationsAPIGetEdgeInitdScriptWithResponse", reflect.TypeOf((*MockClientWithResponsesInterface)(nil).EdgeLocationsAPIGetEdgeInitdScriptWithResponse), ctx, organizationId, clusterId, id) +} + // EdgeLocationsAPIGetEdgeLocation mocks base method. func (m *MockClientWithResponsesInterface) EdgeLocationsAPIGetEdgeLocation(ctx context.Context, organizationId, clusterId, id string, reqEditors ...omni.RequestEditorFn) (*http.Response, error) { m.ctrl.T.Helper()