Skip to content

Commit

Permalink
Releasing Version 24.1.0
Browse files Browse the repository at this point in the history
Squashed commit of the following:

commit 7b9cdb89ec0917ebd1b569524eccc085f57fbb29
Author: pelliu <peng.p.liu@oracle.com>
Date:   Mon Aug 17 18:11:48 2020 +0000

    Releasing version 24 1 0
  • Loading branch information
pelliu committed Aug 17, 2020
1 parent fb7a6ca commit 5de433e
Show file tree
Hide file tree
Showing 20 changed files with 462 additions and 43 deletions.
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file.

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

## 24.1.0 - 2020-08-18
### Added
- Support for custom boot volume size and other node pool updates in the Container Engine for Kubernetes service
- Support for Data Guard on Exadata Cloud at Customer VM clusters in the Database service
- Support for stopping VM instances after scheduled maintenance or hypervisor reboots in the Compute service
- Support for creating and managing private endpoints in the Data Flow service
- Fix upload manager upload extreme large file out of memory issue
- Temporarily remove go mod feature

## 24.0.0 - 2020-08-11
### Added
- Support for autonomous json databases in the Database service
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.

4 changes: 2 additions & 2 deletions containerengine/create_node_pool_details.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ type CreateNodePoolDetails struct {
// The name of the node shape of the nodes in the node pool.
NodeShape *string `mandatory:"true" json:"nodeShape"`

// A list of key/value pairs to add to each underlying OCI instance in the node pool.
// A list of key/value pairs to add to each underlying OCI instance in the node pool on launch.
NodeMetadata map[string]string `mandatory:"false" json:"nodeMetadata"`

// Deprecated. Use `nodeSourceDetails` instead.
Expand All @@ -48,7 +48,7 @@ type CreateNodePoolDetails struct {
// A list of key/value pairs to add to nodes after they join the Kubernetes cluster.
InitialNodeLabels []KeyValue `mandatory:"false" json:"initialNodeLabels"`

// The SSH public key to add to each node in the node pool.
// The SSH public key on each node in the node pool on launch.
SshPublicKey *string `mandatory:"false" json:"sshPublicKey"`

// Optional, default to 1. The number of nodes to create in each subnet specified in subnetIds property.
Expand Down
20 changes: 17 additions & 3 deletions containerengine/node_pool.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ type NodePool struct {
// The version of Kubernetes running on the nodes in the node pool.
KubernetesVersion *string `mandatory:"false" json:"kubernetesVersion"`

// A list of key/value pairs to add to each underlying OCI instance in the node pool.
// A list of key/value pairs to add to each underlying OCI instance in the node pool on launch.
NodeMetadata map[string]string `mandatory:"false" json:"nodeMetadata"`

// Deprecated. see `nodeSource`. The OCID of the image running on the nodes in the node pool.
Expand All @@ -43,16 +43,19 @@ type NodePool struct {
// Deprecated. see `nodeSource`. The name of the image running on the nodes in the node pool.
NodeImageName *string `mandatory:"false" json:"nodeImageName"`

// Source running on the nodes in the node pool.
// Deprecated. see `nodeSourceDetails`. Source running on the nodes in the node pool.
NodeSource NodeSourceOption `mandatory:"false" json:"nodeSource"`

// Source running on the nodes in the node pool.
NodeSourceDetails NodeSourceDetails `mandatory:"false" json:"nodeSourceDetails"`

// The name of the node shape of the nodes in the node pool.
NodeShape *string `mandatory:"false" json:"nodeShape"`

// A list of key/value pairs to add to nodes after they join the Kubernetes cluster.
InitialNodeLabels []KeyValue `mandatory:"false" json:"initialNodeLabels"`

// The SSH public key on each node in the node pool.
// The SSH public key on each node in the node pool on launch.
SshPublicKey *string `mandatory:"false" json:"sshPublicKey"`

// The number of nodes in each subnet.
Expand Down Expand Up @@ -84,6 +87,7 @@ func (m *NodePool) UnmarshalJSON(data []byte) (e error) {
NodeImageId *string `json:"nodeImageId"`
NodeImageName *string `json:"nodeImageName"`
NodeSource nodesourceoption `json:"nodeSource"`
NodeSourceDetails nodesourcedetails `json:"nodeSourceDetails"`
NodeShape *string `json:"nodeShape"`
InitialNodeLabels []KeyValue `json:"initialNodeLabels"`
SshPublicKey *string `json:"sshPublicKey"`
Expand Down Expand Up @@ -124,6 +128,16 @@ func (m *NodePool) UnmarshalJSON(data []byte) (e error) {
m.NodeSource = nil
}

nn, e = model.NodeSourceDetails.UnmarshalPolymorphicJSON(model.NodeSourceDetails.JsonData)
if e != nil {
return
}
if nn != nil {
m.NodeSourceDetails = nn.(NodeSourceDetails)
} else {
m.NodeSourceDetails = nil
}

m.NodeShape = model.NodeShape

m.InitialNodeLabels = make([]KeyValue, len(model.InitialNodeLabels))
Expand Down
18 changes: 16 additions & 2 deletions containerengine/node_pool_summary.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,16 +40,19 @@ type NodePoolSummary struct {
// Deprecated. see `nodeSource`. The name of the image running on the nodes in the node pool.
NodeImageName *string `mandatory:"false" json:"nodeImageName"`

// Source running on the nodes in the node pool.
// Deprecated. see `nodeSourceDetails`. Source running on the nodes in the node pool.
NodeSource NodeSourceOption `mandatory:"false" json:"nodeSource"`

// Source running on the nodes in the node pool.
NodeSourceDetails NodeSourceDetails `mandatory:"false" json:"nodeSourceDetails"`

// The name of the node shape of the nodes in the node pool.
NodeShape *string `mandatory:"false" json:"nodeShape"`

// A list of key/value pairs to add to nodes after they join the Kubernetes cluster.
InitialNodeLabels []KeyValue `mandatory:"false" json:"initialNodeLabels"`

// The SSH public key on each node in the node pool.
// The SSH public key on each node in the node pool on launch.
SshPublicKey *string `mandatory:"false" json:"sshPublicKey"`

// The number of nodes in each subnet.
Expand Down Expand Up @@ -77,6 +80,7 @@ func (m *NodePoolSummary) UnmarshalJSON(data []byte) (e error) {
NodeImageId *string `json:"nodeImageId"`
NodeImageName *string `json:"nodeImageName"`
NodeSource nodesourceoption `json:"nodeSource"`
NodeSourceDetails nodesourcedetails `json:"nodeSourceDetails"`
NodeShape *string `json:"nodeShape"`
InitialNodeLabels []KeyValue `json:"initialNodeLabels"`
SshPublicKey *string `json:"sshPublicKey"`
Expand Down Expand Up @@ -114,6 +118,16 @@ func (m *NodePoolSummary) UnmarshalJSON(data []byte) (e error) {
m.NodeSource = nil
}

nn, e = model.NodeSourceDetails.UnmarshalPolymorphicJSON(model.NodeSourceDetails.JsonData)
if e != nil {
return
}
if nn != nil {
m.NodeSourceDetails = nn.(NodeSourceDetails)
} else {
m.NodeSourceDetails = nil
}

m.NodeShape = model.NodeShape

m.InitialNodeLabels = make([]KeyValue, len(model.InitialNodeLabels))
Expand Down
3 changes: 3 additions & 0 deletions containerengine/node_source_via_image_details.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@ type NodeSourceViaImageDetails struct {

// The OCID of the image used to boot the node.
ImageId *string `mandatory:"true" json:"imageId"`

// The size of the boot volume in GBs. Minimum value is 50 GB. See here (https://docs.cloud.oracle.com/en-us/iaas/Content/Block/Concepts/bootvolumes.htm) for max custom boot volume sizing and OS-specific requirements.
BootVolumeSizeInGBs *int64 `mandatory:"false" json:"bootVolumeSizeInGBs"`
}

func (m NodeSourceViaImageDetails) String() string {
Expand Down
70 changes: 70 additions & 0 deletions containerengine/update_node_pool_details.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
package containerengine

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

Expand Down Expand Up @@ -44,8 +45,77 @@ type UpdateNodePoolDetails struct {
// pool may still be scaled using quantityPerSubnet. Before you can use nodeConfigDetails,
// you must first scale the node pool to 0 nodes using quantityPerSubnet.
NodeConfigDetails *UpdateNodePoolNodeConfigDetails `mandatory:"false" json:"nodeConfigDetails"`

// A list of key/value pairs to add to each underlying OCI instance in the node pool on launch.
NodeMetadata map[string]string `mandatory:"false" json:"nodeMetadata"`

// Specify the source to use to launch nodes in the node pool. Currently, image is the only supported source.
NodeSourceDetails NodeSourceDetails `mandatory:"false" json:"nodeSourceDetails"`

// The SSH public key to add to each node in the node pool on launch.
SshPublicKey *string `mandatory:"false" json:"sshPublicKey"`

// The name of the node shape of the nodes in the node pool used on launch.
NodeShape *string `mandatory:"false" json:"nodeShape"`
}

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

// UnmarshalJSON unmarshals from json
func (m *UpdateNodePoolDetails) UnmarshalJSON(data []byte) (e error) {
model := struct {
Name *string `json:"name"`
KubernetesVersion *string `json:"kubernetesVersion"`
InitialNodeLabels []KeyValue `json:"initialNodeLabels"`
QuantityPerSubnet *int `json:"quantityPerSubnet"`
SubnetIds []string `json:"subnetIds"`
NodeConfigDetails *UpdateNodePoolNodeConfigDetails `json:"nodeConfigDetails"`
NodeMetadata map[string]string `json:"nodeMetadata"`
NodeSourceDetails nodesourcedetails `json:"nodeSourceDetails"`
SshPublicKey *string `json:"sshPublicKey"`
NodeShape *string `json:"nodeShape"`
}{}

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

m.KubernetesVersion = model.KubernetesVersion

m.InitialNodeLabels = make([]KeyValue, len(model.InitialNodeLabels))
for i, n := range model.InitialNodeLabels {
m.InitialNodeLabels[i] = n
}

m.QuantityPerSubnet = model.QuantityPerSubnet

m.SubnetIds = make([]string, len(model.SubnetIds))
for i, n := range model.SubnetIds {
m.SubnetIds[i] = n
}

m.NodeConfigDetails = model.NodeConfigDetails

m.NodeMetadata = model.NodeMetadata

nn, e = model.NodeSourceDetails.UnmarshalPolymorphicJSON(model.NodeSourceDetails.JsonData)
if e != nil {
return
}
if nn != nil {
m.NodeSourceDetails = nn.(NodeSourceDetails)
} else {
m.NodeSourceDetails = nil
}

m.SshPublicKey = model.SshPublicKey

m.NodeShape = model.NodeShape

return
}
5 changes: 5 additions & 0 deletions core/instance.go
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,8 @@ type Instance struct {
// Options for tuning the compatibility and performance of VM shapes. The values that you specify override any default values.
LaunchOptions *LaunchOptions `mandatory:"false" json:"launchOptions"`

AvailabilityConfig *InstanceAvailabilityConfig `mandatory:"false" json:"availabilityConfig"`

// Custom metadata that you provide.
Metadata map[string]string `mandatory:"false" json:"metadata"`

Expand Down Expand Up @@ -162,6 +164,7 @@ func (m *Instance) UnmarshalJSON(data []byte) (e error) {
IpxeScript *string `json:"ipxeScript"`
LaunchMode InstanceLaunchModeEnum `json:"launchMode"`
LaunchOptions *LaunchOptions `json:"launchOptions"`
AvailabilityConfig *InstanceAvailabilityConfig `json:"availabilityConfig"`
Metadata map[string]string `json:"metadata"`
ShapeConfig *InstanceShapeConfig `json:"shapeConfig"`
SourceDetails instancesourcedetails `json:"sourceDetails"`
Expand Down Expand Up @@ -202,6 +205,8 @@ func (m *Instance) UnmarshalJSON(data []byte) (e error) {

m.LaunchOptions = model.LaunchOptions

m.AvailabilityConfig = model.AvailabilityConfig

m.Metadata = model.Metadata

m.ShapeConfig = model.ShapeConfig
Expand Down
55 changes: 55 additions & 0 deletions core/instance_availability_config.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
// Copyright (c) 2016, 2018, 2020, 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.

// Core Services API
//
// API covering the Networking (https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/overview.htm),
// Compute (https://docs.cloud.oracle.com/iaas/Content/Compute/Concepts/computeoverview.htm), and
// Block Volume (https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/overview.htm) services. Use this API
// to manage resources such as virtual cloud networks (VCNs), compute instances, and
// block storage volumes.
//

package core

import (
"github.com/oracle/oci-go-sdk/common"
)

// InstanceAvailabilityConfig Options for customers to define the general policy of how compute service perform maintenance on VM instances.
type InstanceAvailabilityConfig struct {

// Actions customers can specify that would be applied to their instances after scheduled or unexpected host maintenance.
// * `RESTORE_INSTANCE` - This would be the default action if recoveryAction is not set. VM instances
// will be restored to the power state it was in before maintenance.
// * `STOP_INSTANCE` - This action allow customers to have their VM instances be stopped after maintenance.
RecoveryAction InstanceAvailabilityConfigRecoveryActionEnum `mandatory:"false" json:"recoveryAction,omitempty"`
}

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

// InstanceAvailabilityConfigRecoveryActionEnum Enum with underlying type: string
type InstanceAvailabilityConfigRecoveryActionEnum string

// Set of constants representing the allowable values for InstanceAvailabilityConfigRecoveryActionEnum
const (
InstanceAvailabilityConfigRecoveryActionRestoreInstance InstanceAvailabilityConfigRecoveryActionEnum = "RESTORE_INSTANCE"
InstanceAvailabilityConfigRecoveryActionStopInstance InstanceAvailabilityConfigRecoveryActionEnum = "STOP_INSTANCE"
)

var mappingInstanceAvailabilityConfigRecoveryAction = map[string]InstanceAvailabilityConfigRecoveryActionEnum{
"RESTORE_INSTANCE": InstanceAvailabilityConfigRecoveryActionRestoreInstance,
"STOP_INSTANCE": InstanceAvailabilityConfigRecoveryActionStopInstance,
}

// GetInstanceAvailabilityConfigRecoveryActionEnumValues Enumerates the set of values for InstanceAvailabilityConfigRecoveryActionEnum
func GetInstanceAvailabilityConfigRecoveryActionEnumValues() []InstanceAvailabilityConfigRecoveryActionEnum {
values := make([]InstanceAvailabilityConfigRecoveryActionEnum, 0)
for _, v := range mappingInstanceAvailabilityConfigRecoveryAction {
values = append(values, v)
}
return values
}
55 changes: 55 additions & 0 deletions core/instance_configuration_availability_config.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
// Copyright (c) 2016, 2018, 2020, 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.

// Core Services API
//
// API covering the Networking (https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/overview.htm),
// Compute (https://docs.cloud.oracle.com/iaas/Content/Compute/Concepts/computeoverview.htm), and
// Block Volume (https://docs.cloud.oracle.com/iaas/Content/Block/Concepts/overview.htm) services. Use this API
// to manage resources such as virtual cloud networks (VCNs), compute instances, and
// block storage volumes.
//

package core

import (
"github.com/oracle/oci-go-sdk/common"
)

// InstanceConfigurationAvailabilityConfig Options for customers to define the general policy of how compute service perform maintenance on VM instances.
type InstanceConfigurationAvailabilityConfig struct {

// Actions customers can specify that would be applied to their instances after scheduled or unexpected host maintenance.
// * `RESTORE_INSTANCE` - This would be the default action if recoveryAction is not set. VM instances
// will be restored to the power state it was in before maintenance.
// * `STOP_INSTANCE` - This action allow customers to have their VM instances be stopped after maintenance.
RecoveryAction InstanceConfigurationAvailabilityConfigRecoveryActionEnum `mandatory:"false" json:"recoveryAction,omitempty"`
}

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

// InstanceConfigurationAvailabilityConfigRecoveryActionEnum Enum with underlying type: string
type InstanceConfigurationAvailabilityConfigRecoveryActionEnum string

// Set of constants representing the allowable values for InstanceConfigurationAvailabilityConfigRecoveryActionEnum
const (
InstanceConfigurationAvailabilityConfigRecoveryActionRestoreInstance InstanceConfigurationAvailabilityConfigRecoveryActionEnum = "RESTORE_INSTANCE"
InstanceConfigurationAvailabilityConfigRecoveryActionStopInstance InstanceConfigurationAvailabilityConfigRecoveryActionEnum = "STOP_INSTANCE"
)

var mappingInstanceConfigurationAvailabilityConfigRecoveryAction = map[string]InstanceConfigurationAvailabilityConfigRecoveryActionEnum{
"RESTORE_INSTANCE": InstanceConfigurationAvailabilityConfigRecoveryActionRestoreInstance,
"STOP_INSTANCE": InstanceConfigurationAvailabilityConfigRecoveryActionStopInstance,
}

// GetInstanceConfigurationAvailabilityConfigRecoveryActionEnumValues Enumerates the set of values for InstanceConfigurationAvailabilityConfigRecoveryActionEnum
func GetInstanceConfigurationAvailabilityConfigRecoveryActionEnumValues() []InstanceConfigurationAvailabilityConfigRecoveryActionEnum {
values := make([]InstanceConfigurationAvailabilityConfigRecoveryActionEnum, 0)
for _, v := range mappingInstanceConfigurationAvailabilityConfigRecoveryAction {
values = append(values, v)
}
return values
}
Loading

0 comments on commit 5de433e

Please sign in to comment.