Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,17 @@ All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/)

## 65.65.1 - 2024-05-07
### Added
- Support for resizing of local file systems in the Database service
- Support for adding user defined pause group in disaster recovery plan in the Disaster Recovery service
- Support for OS patching configs in the Big Data service
- Support for IP inventory and notification feature in the Networking service
- Support for accidental delete protection for load balancers, load balancer listeners, and load balancer backends in the Load Balancer service
- Support for backend max connections for load balancers in the Load Balancer service
- Support for listener max connections for load balancers in the Load Balancer service


## 65.65.0 - 2024-04-30
### Added
- Support for enabling unified auditing for DBHome in the Database service
Expand Down
60 changes: 60 additions & 0 deletions bds/batching_based_patching_configs.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
// Copyright (c) 2016, 2018, 2024, Oracle and/or its affiliates. All rights reserved.
// This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
// Code generated. DO NOT EDIT.

// Big Data Service API
//
// REST API for Oracle Big Data Service. Use this API to build, deploy, and manage fully elastic Big Data Service clusters. Build on Hadoop, Spark and Data Science distributions, which can be fully integrated with existing enterprise data in Oracle Database and Oracle applications.
//

package bds

import (
"encoding/json"
"fmt"
"github.com/oracle/oci-go-sdk/v65/common"
"strings"
)

// BatchingBasedPatchingConfigs Patching configurations which allows patch the nodes batch by batch.
type BatchingBasedPatchingConfigs struct {

// How many nodes to be patched and rebooted in each iteration.
BatchSize *int `mandatory:"true" json:"batchSize"`

// The wait time between batches in seconds.
WaitTimeBetweenBatchInSeconds *int `mandatory:"true" json:"waitTimeBetweenBatchInSeconds"`

// Acceptable number of failed-to-be-patched nodes in each batch. The maximum number of failed-to-patch nodes cannot exceed 20% of the number of nodes.
ToleranceThresholdPerBatch *int `mandatory:"true" json:"toleranceThresholdPerBatch"`
}

func (m BatchingBasedPatchingConfigs) String() string {
return common.PointerString(m)
}

// ValidateEnumValue returns an error when providing an unsupported enum value
// This function is being called during constructing API request process
// Not recommended for calling this function directly
func (m BatchingBasedPatchingConfigs) ValidateEnumValue() (bool, error) {
errMessage := []string{}

if len(errMessage) > 0 {
return true, fmt.Errorf(strings.Join(errMessage, "\n"))
}
return false, nil
}

// MarshalJSON marshals to json representation
func (m BatchingBasedPatchingConfigs) MarshalJSON() (buff []byte, e error) {
type MarshalTypeBatchingBasedPatchingConfigs BatchingBasedPatchingConfigs
s := struct {
DiscriminatorParam string `json:"patchingConfigStrategy"`
MarshalTypeBatchingBasedPatchingConfigs
}{
"BATCHING_BASED",
(MarshalTypeBatchingBasedPatchingConfigs)(m),
}

return json.Marshal(&s)
}
51 changes: 51 additions & 0 deletions bds/downtime_based_patching_configs.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
// Copyright (c) 2016, 2018, 2024, Oracle and/or its affiliates. All rights reserved.
// This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
// Code generated. DO NOT EDIT.

// Big Data Service API
//
// REST API for Oracle Big Data Service. Use this API to build, deploy, and manage fully elastic Big Data Service clusters. Build on Hadoop, Spark and Data Science distributions, which can be fully integrated with existing enterprise data in Oracle Database and Oracle applications.
//

package bds

import (
"encoding/json"
"fmt"
"github.com/oracle/oci-go-sdk/v65/common"
"strings"
)

// DowntimeBasedPatchingConfigs Patching configurations which allows downtime. This patching config will patch and reboot all the nodes in parallel.
type DowntimeBasedPatchingConfigs struct {
}

func (m DowntimeBasedPatchingConfigs) String() string {
return common.PointerString(m)
}

// ValidateEnumValue returns an error when providing an unsupported enum value
// This function is being called during constructing API request process
// Not recommended for calling this function directly
func (m DowntimeBasedPatchingConfigs) ValidateEnumValue() (bool, error) {
errMessage := []string{}

if len(errMessage) > 0 {
return true, fmt.Errorf(strings.Join(errMessage, "\n"))
}
return false, nil
}

// MarshalJSON marshals to json representation
func (m DowntimeBasedPatchingConfigs) MarshalJSON() (buff []byte, e error) {
type MarshalTypeDowntimeBasedPatchingConfigs DowntimeBasedPatchingConfigs
s := struct {
DiscriminatorParam string `json:"patchingConfigStrategy"`
MarshalTypeDowntimeBasedPatchingConfigs
}{
"DOWNTIME_BASED",
(MarshalTypeDowntimeBasedPatchingConfigs)(m),
}

return json.Marshal(&s)
}
33 changes: 33 additions & 0 deletions bds/install_os_patch_details.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
package bds

import (
"encoding/json"
"fmt"
"github.com/oracle/oci-go-sdk/v65/common"
"strings"
Expand All @@ -23,6 +24,8 @@ type InstallOsPatchDetails struct {

// Base-64 encoded password for the cluster admin user.
ClusterAdminPassword *string `mandatory:"true" json:"clusterAdminPassword"`

PatchingConfigs PatchingConfigs `mandatory:"false" json:"patchingConfigs"`
}

func (m InstallOsPatchDetails) String() string {
Expand All @@ -40,3 +43,33 @@ func (m InstallOsPatchDetails) ValidateEnumValue() (bool, error) {
}
return false, nil
}

// UnmarshalJSON unmarshals from json
func (m *InstallOsPatchDetails) UnmarshalJSON(data []byte) (e error) {
model := struct {
PatchingConfigs patchingconfigs `json:"patchingConfigs"`
OsPatchVersion *string `json:"osPatchVersion"`
ClusterAdminPassword *string `json:"clusterAdminPassword"`
}{}

e = json.Unmarshal(data, &model)
if e != nil {
return
}
var nn interface{}
nn, e = model.PatchingConfigs.UnmarshalPolymorphicJSON(model.PatchingConfigs.JsonData)
if e != nil {
return
}
if nn != nil {
m.PatchingConfigs = nn.(PatchingConfigs)
} else {
m.PatchingConfigs = nil
}

m.OsPatchVersion = model.OsPatchVersion

m.ClusterAdminPassword = model.ClusterAdminPassword

return
}
6 changes: 3 additions & 3 deletions bds/list_patch_histories_request_response.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,12 @@ type ListPatchHistoriesRequest struct {
// The status of the patch.
LifecycleState PatchHistorySummaryLifecycleStateEnum `mandatory:"false" contributesTo:"query" name:"lifecycleState" omitEmpty:"true"`

// The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. If no value is specified timeCreated is default.
SortBy ListPatchHistoriesSortByEnum `mandatory:"false" contributesTo:"query" name:"sortBy" omitEmpty:"true"`

// The version of the patch
PatchVersion *string `mandatory:"false" contributesTo:"query" name:"patchVersion"`

// The field to sort by. Only one sort order may be provided. Default order for timeCreated is descending. Default order for displayName is ascending. If no value is specified timeCreated is default.
SortBy ListPatchHistoriesSortByEnum `mandatory:"false" contributesTo:"query" name:"sortBy" omitEmpty:"true"`

// The sort order to use, either 'asc' or 'desc'.
SortOrder ListPatchHistoriesSortOrderEnum `mandatory:"false" contributesTo:"query" name:"sortOrder" omitEmpty:"true"`

Expand Down
6 changes: 6 additions & 0 deletions bds/node.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,12 @@ type Node struct {

// The date and time the instance is expected to be stopped / started, in the format defined by RFC3339.
TimeMaintenanceRebootDue *common.SDKTime `mandatory:"false" json:"timeMaintenanceRebootDue"`

// BDS-assigned Operating System version for the node.
OsVersion *string `mandatory:"false" json:"osVersion"`

// Indicates if the node requires a reboot to either reflect the latest os kernel or take actions for maintenance reboot.
IsRebootRequired *bool `mandatory:"false" json:"isRebootRequired"`
}

func (m Node) String() string {
Expand Down
123 changes: 123 additions & 0 deletions bds/patching_configs.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
// Copyright (c) 2016, 2018, 2024, Oracle and/or its affiliates. All rights reserved.
// This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
// Code generated. DO NOT EDIT.

// Big Data Service API
//
// REST API for Oracle Big Data Service. Use this API to build, deploy, and manage fully elastic Big Data Service clusters. Build on Hadoop, Spark and Data Science distributions, which can be fully integrated with existing enterprise data in Oracle Database and Oracle applications.
//

package bds

import (
"encoding/json"
"fmt"
"github.com/oracle/oci-go-sdk/v65/common"
"strings"
)

// PatchingConfigs Detailed configurations for defining the behavior when installing os patches. If not provided, nodes will be patched and rebooted AD/FD by AD/FD.
type PatchingConfigs interface {
}

type patchingconfigs struct {
JsonData []byte
PatchingConfigStrategy string `json:"patchingConfigStrategy"`
}

// UnmarshalJSON unmarshals json
func (m *patchingconfigs) UnmarshalJSON(data []byte) error {
m.JsonData = data
type Unmarshalerpatchingconfigs patchingconfigs
s := struct {
Model Unmarshalerpatchingconfigs
}{}
err := json.Unmarshal(data, &s.Model)
if err != nil {
return err
}
m.PatchingConfigStrategy = s.Model.PatchingConfigStrategy

return err
}

// UnmarshalPolymorphicJSON unmarshals polymorphic json
func (m *patchingconfigs) UnmarshalPolymorphicJSON(data []byte) (interface{}, error) {

if data == nil || string(data) == "null" {
return nil, nil
}

var err error
switch m.PatchingConfigStrategy {
case "BATCHING_BASED":
mm := BatchingBasedPatchingConfigs{}
err = json.Unmarshal(data, &mm)
return mm, err
case "DOWNTIME_BASED":
mm := DowntimeBasedPatchingConfigs{}
err = json.Unmarshal(data, &mm)
return mm, err
default:
common.Logf("Recieved unsupported enum value for PatchingConfigs: %s.", m.PatchingConfigStrategy)
return *m, nil
}
}

func (m patchingconfigs) String() string {
return common.PointerString(m)
}

// ValidateEnumValue returns an error when providing an unsupported enum value
// This function is being called during constructing API request process
// Not recommended for calling this function directly
func (m patchingconfigs) ValidateEnumValue() (bool, error) {
errMessage := []string{}

if len(errMessage) > 0 {
return true, fmt.Errorf(strings.Join(errMessage, "\n"))
}
return false, nil
}

// PatchingConfigsPatchingConfigStrategyEnum Enum with underlying type: string
type PatchingConfigsPatchingConfigStrategyEnum string

// Set of constants representing the allowable values for PatchingConfigsPatchingConfigStrategyEnum
const (
PatchingConfigsPatchingConfigStrategyDowntimeBased PatchingConfigsPatchingConfigStrategyEnum = "DOWNTIME_BASED"
PatchingConfigsPatchingConfigStrategyBatchingBased PatchingConfigsPatchingConfigStrategyEnum = "BATCHING_BASED"
)

var mappingPatchingConfigsPatchingConfigStrategyEnum = map[string]PatchingConfigsPatchingConfigStrategyEnum{
"DOWNTIME_BASED": PatchingConfigsPatchingConfigStrategyDowntimeBased,
"BATCHING_BASED": PatchingConfigsPatchingConfigStrategyBatchingBased,
}

var mappingPatchingConfigsPatchingConfigStrategyEnumLowerCase = map[string]PatchingConfigsPatchingConfigStrategyEnum{
"downtime_based": PatchingConfigsPatchingConfigStrategyDowntimeBased,
"batching_based": PatchingConfigsPatchingConfigStrategyBatchingBased,
}

// GetPatchingConfigsPatchingConfigStrategyEnumValues Enumerates the set of values for PatchingConfigsPatchingConfigStrategyEnum
func GetPatchingConfigsPatchingConfigStrategyEnumValues() []PatchingConfigsPatchingConfigStrategyEnum {
values := make([]PatchingConfigsPatchingConfigStrategyEnum, 0)
for _, v := range mappingPatchingConfigsPatchingConfigStrategyEnum {
values = append(values, v)
}
return values
}

// GetPatchingConfigsPatchingConfigStrategyEnumStringValues Enumerates the set of values in String for PatchingConfigsPatchingConfigStrategyEnum
func GetPatchingConfigsPatchingConfigStrategyEnumStringValues() []string {
return []string{
"DOWNTIME_BASED",
"BATCHING_BASED",
}
}

// GetMappingPatchingConfigsPatchingConfigStrategyEnum performs case Insensitive comparison on enum value and return the desired enum
func GetMappingPatchingConfigsPatchingConfigStrategyEnum(val string) (PatchingConfigsPatchingConfigStrategyEnum, bool) {
enum, ok := mappingPatchingConfigsPatchingConfigStrategyEnumLowerCase[strings.ToLower(val)]
return enum, ok
}
4 changes: 2 additions & 2 deletions bds/work_request_error.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ import (
// WorkRequestError An error encountered while executing a work request.
type WorkRequestError struct {

// A machine-usable code for the error that occured. Error codes are listed on (https://docs.oracle.com/en-us/iaas/Content/API/References/apierrors.htm).
// A machine-usable code for the error that occurred. Error codes are listed on (https://docs.oracle.com/en-us/iaas/Content/API/References/apierrors.htm).
Code *string `mandatory:"true" json:"code"`

// A human readable description of the issue encountered.
Message *string `mandatory:"true" json:"message"`

// The time the error occured, shown as an RFC 3339 formatted datetime string.
// The time the error occurred, shown as an RFC 3339 formatted datetime string.
Timestamp *common.SDKTime `mandatory:"true" json:"timestamp"`
}

Expand Down
2 changes: 1 addition & 1 deletion common/version.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading