Skip to content

Commit 117e56e

Browse files
Releasing version 65.105.0
Releasing version 65.105.0
2 parents c92eead + 7f60488 commit 117e56e

File tree

287 files changed

+12123
-892
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

287 files changed

+12123
-892
lines changed

CHANGELOG.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,38 @@ All notable changes to this project will be documented in this file.
44

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

7+
## 65.105.0 - 2025-11-18
8+
### Added
9+
- Support for calling Oracle Cloud Infrastructure services in the eu-turin-1 region
10+
- Support for security attributes in the Bastion service
11+
- Support for DataGuard Health Status check in the Database service
12+
- Support for DataGuard creation with AWS in the Database service
13+
- Support for changing encryption key location to AWS in the Database service
14+
- Support for registering and unregistering PKCS for AWS in the Database service
15+
- Support for new service catalog access control on marketplace in the Service Catalog service
16+
- Support for bring-your-own-certificate in the OpenSearch service
17+
- Support for AWS KMS integration for DB@AWS in the Database MultiCloud service
18+
- Support for multi-cloud subscriptions and multi-cloud resource management in the MultiCloud service
19+
- Support for new GenericChatRequest parameters in the Generative AI Inference service
20+
- Support for Self-Serve IP Pool API in the Email Delivery service
21+
- Support for Object Batch Delete in the Object Storage service
22+
- Support for IPv6 and Reserved IPs in the API Gateway service
23+
- Support for Zero Trust Packet Routing (ZPR) security attributes in the Data Catalog service
24+
- Support for pinning the firmware of a Compute GPU Memory Fabric in the Compute service
25+
- Support for pausing ZeroETL pipelines in the GoldenGate service
26+
- Support for shared connections for ZeroETL pipelines in the GoldenGate service
27+
- Support for migrating digital twin instances from non-ingestible to ingestible in the IoT Service
28+
29+
### Fixed
30+
- Fixed InvokeRawCommand API by changing response header from "Content-Location" to "Location" in the OCI Internet of Things (OCI IoT) service
31+
- Fixed UpdateDigitalTwinInstance API by adding missing model id and spec URI properties in the OCI Internet of Things (OCI IoT) service
32+
33+
### Breaking Changes
34+
- Support for default retries on the operations of the Service Catalog service
35+
- The field `ContentLocation` was changed to `Location` in the model `InvokeRawCommandResponse` in the OCI Internet of Things (OCI IoT) service
36+
- The field `LifecycleState` was changed to `NetworkAnchorLifecycleState` and its type was changed to `NetworkAnchorNetworkAnchorLifecycleStateEnum` in the models `NetworkAnchor` and `NetworkAnchorSummary` in the MultiCloud service
37+
- The type of field `NetworkAnchorConnectionStatus` has been changed to `NetworkAnchorConnectionStatusEnum` in the model `OciNetworkMetadata` in the MultiCloud service
38+
739
## 65.104.1 - 2025-11-10
840
### Added
941
- Support for image lookup by URI in OCI Registry in the Generic Artifacts service

apigateway/create_gateway_details.go

Lines changed: 34 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,17 @@ type CreateGatewayDetails struct {
6565

6666
// An array of CA bundles that should be used on the Gateway for TLS validation.
6767
CaBundles []CaBundle `mandatory:"false" json:"caBundles"`
68+
69+
// Determines whether the gateway has an IPv4 or IPv6 address assigned to it, or both.
70+
// `IPV4` means the gateway will only have an IPv4 address assigned to it, and `IPV6` means the gateway will
71+
// only have an `IPv6` address assigned to it. `DUAL_STACK` means the gateway will have both an IPv4 and IPv6
72+
// address assigned to it.
73+
// Example: `IPV4` or `IPV6` or `DUAL_STACK`
74+
IpMode GatewayIpModeEnum `mandatory:"false" json:"ipMode,omitempty"`
75+
76+
Ipv6AddressConfiguration *Ipv6AddressConfiguration `mandatory:"false" json:"ipv6AddressConfiguration"`
77+
78+
Ipv4AddressConfiguration *Ipv4AddressConfiguration `mandatory:"false" json:"ipv4AddressConfiguration"`
6879
}
6980

7081
func (m CreateGatewayDetails) String() string {
@@ -80,6 +91,9 @@ func (m CreateGatewayDetails) ValidateEnumValue() (bool, error) {
8091
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for EndpointType: %s. Supported values are: %s.", m.EndpointType, strings.Join(GetGatewayEndpointTypeEnumStringValues(), ",")))
8192
}
8293

94+
if _, ok := GetMappingGatewayIpModeEnum(string(m.IpMode)); !ok && m.IpMode != "" {
95+
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for IpMode: %s. Supported values are: %s.", m.IpMode, strings.Join(GetGatewayIpModeEnumStringValues(), ",")))
96+
}
8397
if len(errMessage) > 0 {
8498
return true, fmt.Errorf("%s", strings.Join(errMessage, "\n"))
8599
}
@@ -89,17 +103,20 @@ func (m CreateGatewayDetails) ValidateEnumValue() (bool, error) {
89103
// UnmarshalJSON unmarshals from json
90104
func (m *CreateGatewayDetails) UnmarshalJSON(data []byte) (e error) {
91105
model := struct {
92-
DisplayName *string `json:"displayName"`
93-
NetworkSecurityGroupIds []string `json:"networkSecurityGroupIds"`
94-
CertificateId *string `json:"certificateId"`
95-
ResponseCacheDetails responsecachedetails `json:"responseCacheDetails"`
96-
Locks []AddResourceLockDetails `json:"locks"`
97-
FreeformTags map[string]string `json:"freeformTags"`
98-
DefinedTags map[string]map[string]interface{} `json:"definedTags"`
99-
CaBundles []cabundle `json:"caBundles"`
100-
CompartmentId *string `json:"compartmentId"`
101-
EndpointType GatewayEndpointTypeEnum `json:"endpointType"`
102-
SubnetId *string `json:"subnetId"`
106+
DisplayName *string `json:"displayName"`
107+
NetworkSecurityGroupIds []string `json:"networkSecurityGroupIds"`
108+
CertificateId *string `json:"certificateId"`
109+
ResponseCacheDetails responsecachedetails `json:"responseCacheDetails"`
110+
Locks []AddResourceLockDetails `json:"locks"`
111+
FreeformTags map[string]string `json:"freeformTags"`
112+
DefinedTags map[string]map[string]interface{} `json:"definedTags"`
113+
CaBundles []cabundle `json:"caBundles"`
114+
IpMode GatewayIpModeEnum `json:"ipMode"`
115+
Ipv6AddressConfiguration *Ipv6AddressConfiguration `json:"ipv6AddressConfiguration"`
116+
Ipv4AddressConfiguration *Ipv4AddressConfiguration `json:"ipv4AddressConfiguration"`
117+
CompartmentId *string `json:"compartmentId"`
118+
EndpointType GatewayEndpointTypeEnum `json:"endpointType"`
119+
SubnetId *string `json:"subnetId"`
103120
}{}
104121

105122
e = json.Unmarshal(data, &model)
@@ -141,6 +158,12 @@ func (m *CreateGatewayDetails) UnmarshalJSON(data []byte) (e error) {
141158
m.CaBundles[i] = nil
142159
}
143160
}
161+
m.IpMode = model.IpMode
162+
163+
m.Ipv6AddressConfiguration = model.Ipv6AddressConfiguration
164+
165+
m.Ipv4AddressConfiguration = model.Ipv4AddressConfiguration
166+
144167
m.CompartmentId = model.CompartmentId
145168

146169
m.EndpointType = model.EndpointType

apigateway/gateway.go

Lines changed: 88 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,17 @@ type Gateway struct {
9292

9393
// An array of CA bundles that should be used on the Gateway for TLS validation.
9494
CaBundles []CaBundle `mandatory:"false" json:"caBundles"`
95+
96+
// Determines whether the gateway has an IPv4 or IPv6 address assigned to it, or both.
97+
// `IPV4` means the gateway will only have an IPv4 address assigned to it, and `IPV6` means the gateway will
98+
// only have an `IPv6` address assigned to it. `DUAL_STACK` means the gateway will have both an IPv4 and IPv6
99+
// address assigned to it.
100+
// Example: `IPV4` or `IPV6` or `DUAL_STACK`
101+
IpMode GatewayIpModeEnum `mandatory:"false" json:"ipMode,omitempty"`
102+
103+
Ipv6AddressConfiguration *Ipv6AddressConfiguration `mandatory:"false" json:"ipv6AddressConfiguration"`
104+
105+
Ipv4AddressConfiguration *Ipv4AddressConfiguration `mandatory:"false" json:"ipv4AddressConfiguration"`
95106
}
96107

97108
func (m Gateway) String() string {
@@ -110,6 +121,9 @@ func (m Gateway) ValidateEnumValue() (bool, error) {
110121
if _, ok := GetMappingGatewayLifecycleStateEnum(string(m.LifecycleState)); !ok && m.LifecycleState != "" {
111122
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for LifecycleState: %s. Supported values are: %s.", m.LifecycleState, strings.Join(GetGatewayLifecycleStateEnumStringValues(), ",")))
112123
}
124+
if _, ok := GetMappingGatewayIpModeEnum(string(m.IpMode)); !ok && m.IpMode != "" {
125+
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for IpMode: %s. Supported values are: %s.", m.IpMode, strings.Join(GetGatewayIpModeEnumStringValues(), ",")))
126+
}
113127
if len(errMessage) > 0 {
114128
return true, fmt.Errorf("%s", strings.Join(errMessage, "\n"))
115129
}
@@ -119,25 +133,28 @@ func (m Gateway) ValidateEnumValue() (bool, error) {
119133
// UnmarshalJSON unmarshals from json
120134
func (m *Gateway) UnmarshalJSON(data []byte) (e error) {
121135
model := struct {
122-
DisplayName *string `json:"displayName"`
123-
SubnetId *string `json:"subnetId"`
124-
NetworkSecurityGroupIds []string `json:"networkSecurityGroupIds"`
125-
TimeCreated *common.SDKTime `json:"timeCreated"`
126-
TimeUpdated *common.SDKTime `json:"timeUpdated"`
127-
LifecycleState GatewayLifecycleStateEnum `json:"lifecycleState"`
128-
LifecycleDetails *string `json:"lifecycleDetails"`
129-
Locks []ResourceLock `json:"locks"`
130-
Hostname *string `json:"hostname"`
131-
CertificateId *string `json:"certificateId"`
132-
IpAddresses []IpAddress `json:"ipAddresses"`
133-
ResponseCacheDetails responsecachedetails `json:"responseCacheDetails"`
134-
FreeformTags map[string]string `json:"freeformTags"`
135-
DefinedTags map[string]map[string]interface{} `json:"definedTags"`
136-
SystemTags map[string]map[string]interface{} `json:"systemTags"`
137-
CaBundles []cabundle `json:"caBundles"`
138-
Id *string `json:"id"`
139-
CompartmentId *string `json:"compartmentId"`
140-
EndpointType GatewayEndpointTypeEnum `json:"endpointType"`
136+
DisplayName *string `json:"displayName"`
137+
SubnetId *string `json:"subnetId"`
138+
NetworkSecurityGroupIds []string `json:"networkSecurityGroupIds"`
139+
TimeCreated *common.SDKTime `json:"timeCreated"`
140+
TimeUpdated *common.SDKTime `json:"timeUpdated"`
141+
LifecycleState GatewayLifecycleStateEnum `json:"lifecycleState"`
142+
LifecycleDetails *string `json:"lifecycleDetails"`
143+
Locks []ResourceLock `json:"locks"`
144+
Hostname *string `json:"hostname"`
145+
CertificateId *string `json:"certificateId"`
146+
IpAddresses []IpAddress `json:"ipAddresses"`
147+
ResponseCacheDetails responsecachedetails `json:"responseCacheDetails"`
148+
FreeformTags map[string]string `json:"freeformTags"`
149+
DefinedTags map[string]map[string]interface{} `json:"definedTags"`
150+
SystemTags map[string]map[string]interface{} `json:"systemTags"`
151+
CaBundles []cabundle `json:"caBundles"`
152+
IpMode GatewayIpModeEnum `json:"ipMode"`
153+
Ipv6AddressConfiguration *Ipv6AddressConfiguration `json:"ipv6AddressConfiguration"`
154+
Ipv4AddressConfiguration *Ipv4AddressConfiguration `json:"ipv4AddressConfiguration"`
155+
Id *string `json:"id"`
156+
CompartmentId *string `json:"compartmentId"`
157+
EndpointType GatewayEndpointTypeEnum `json:"endpointType"`
141158
}{}
142159

143160
e = json.Unmarshal(data, &model)
@@ -195,6 +212,12 @@ func (m *Gateway) UnmarshalJSON(data []byte) (e error) {
195212
m.CaBundles[i] = nil
196213
}
197214
}
215+
m.IpMode = model.IpMode
216+
217+
m.Ipv6AddressConfiguration = model.Ipv6AddressConfiguration
218+
219+
m.Ipv4AddressConfiguration = model.Ipv4AddressConfiguration
220+
198221
m.Id = model.Id
199222

200223
m.CompartmentId = model.CompartmentId
@@ -303,3 +326,49 @@ func GetMappingGatewayLifecycleStateEnum(val string) (GatewayLifecycleStateEnum,
303326
enum, ok := mappingGatewayLifecycleStateEnumLowerCase[strings.ToLower(val)]
304327
return enum, ok
305328
}
329+
330+
// GatewayIpModeEnum Enum with underlying type: string
331+
type GatewayIpModeEnum string
332+
333+
// Set of constants representing the allowable values for GatewayIpModeEnum
334+
const (
335+
GatewayIpModeIpv4 GatewayIpModeEnum = "IPV4"
336+
GatewayIpModeIpv6 GatewayIpModeEnum = "IPV6"
337+
GatewayIpModeDualStack GatewayIpModeEnum = "DUAL_STACK"
338+
)
339+
340+
var mappingGatewayIpModeEnum = map[string]GatewayIpModeEnum{
341+
"IPV4": GatewayIpModeIpv4,
342+
"IPV6": GatewayIpModeIpv6,
343+
"DUAL_STACK": GatewayIpModeDualStack,
344+
}
345+
346+
var mappingGatewayIpModeEnumLowerCase = map[string]GatewayIpModeEnum{
347+
"ipv4": GatewayIpModeIpv4,
348+
"ipv6": GatewayIpModeIpv6,
349+
"dual_stack": GatewayIpModeDualStack,
350+
}
351+
352+
// GetGatewayIpModeEnumValues Enumerates the set of values for GatewayIpModeEnum
353+
func GetGatewayIpModeEnumValues() []GatewayIpModeEnum {
354+
values := make([]GatewayIpModeEnum, 0)
355+
for _, v := range mappingGatewayIpModeEnum {
356+
values = append(values, v)
357+
}
358+
return values
359+
}
360+
361+
// GetGatewayIpModeEnumStringValues Enumerates the set of values in String for GatewayIpModeEnum
362+
func GetGatewayIpModeEnumStringValues() []string {
363+
return []string{
364+
"IPV4",
365+
"IPV6",
366+
"DUAL_STACK",
367+
}
368+
}
369+
370+
// GetMappingGatewayIpModeEnum performs case Insensitive comparison on enum value and return the desired enum
371+
func GetMappingGatewayIpModeEnum(val string) (GatewayIpModeEnum, bool) {
372+
enum, ok := mappingGatewayIpModeEnumLowerCase[strings.ToLower(val)]
373+
return enum, ok
374+
}

apigateway/gateway_summary.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,13 @@ type GatewaySummary struct {
8282
// System tags for this resource. Each key is predefined and scoped to a namespace.
8383
// Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`
8484
SystemTags map[string]map[string]interface{} `mandatory:"false" json:"systemTags"`
85+
86+
// Determines whether the gateway has an IPv4 or IPv6 address assigned to it, or both.
87+
// `IPV4` means the gateway will only have an IPv4 address assigned to it, and `IPV6` means the gateway will
88+
// only have an `IPv6` address assigned to it. `DUAL_STACK` means the gateway will have both an IPv4 and IPv6
89+
// address assigned to it.
90+
// Example: `IPV4` or `IPV6` or `DUAL_STACK`
91+
IpMode GatewayIpModeEnum `mandatory:"false" json:"ipMode,omitempty"`
8592
}
8693

8794
func (m GatewaySummary) String() string {
@@ -100,6 +107,9 @@ func (m GatewaySummary) ValidateEnumValue() (bool, error) {
100107
if _, ok := GetMappingGatewayLifecycleStateEnum(string(m.LifecycleState)); !ok && m.LifecycleState != "" {
101108
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for LifecycleState: %s. Supported values are: %s.", m.LifecycleState, strings.Join(GetGatewayLifecycleStateEnumStringValues(), ",")))
102109
}
110+
if _, ok := GetMappingGatewayIpModeEnum(string(m.IpMode)); !ok && m.IpMode != "" {
111+
errMessage = append(errMessage, fmt.Sprintf("unsupported enum value for IpMode: %s. Supported values are: %s.", m.IpMode, strings.Join(GetGatewayIpModeEnumStringValues(), ",")))
112+
}
103113
if len(errMessage) > 0 {
104114
return true, fmt.Errorf("%s", strings.Join(errMessage, "\n"))
105115
}
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
// Copyright (c) 2016, 2018, 2025, Oracle and/or its affiliates. All rights reserved.
2+
// 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.
3+
// Code generated. DO NOT EDIT.
4+
5+
// API Gateway API
6+
//
7+
// API for the API Gateway service. Use this API to manage gateways, deployments, and related items.
8+
// For more information, see
9+
// Overview of API Gateway (https://docs.oracle.com/iaas/Content/APIGateway/Concepts/apigatewayoverview.htm).
10+
//
11+
12+
package apigateway
13+
14+
import (
15+
"fmt"
16+
"github.com/oracle/oci-go-sdk/v65/common"
17+
"strings"
18+
)
19+
20+
// Ipv4AddressConfiguration IPv4 address configuration details that should be used when creating the gateway.
21+
type Ipv4AddressConfiguration struct {
22+
23+
// List of Reserved IP OCIDs created in VCN service.
24+
ReservedIpIds []string `mandatory:"false" json:"reservedIpIds"`
25+
}
26+
27+
func (m Ipv4AddressConfiguration) String() string {
28+
return common.PointerString(m)
29+
}
30+
31+
// ValidateEnumValue returns an error when providing an unsupported enum value
32+
// This function is being called during constructing API request process
33+
// Not recommended for calling this function directly
34+
func (m Ipv4AddressConfiguration) ValidateEnumValue() (bool, error) {
35+
errMessage := []string{}
36+
37+
if len(errMessage) > 0 {
38+
return true, fmt.Errorf("%s", strings.Join(errMessage, "\n"))
39+
}
40+
return false, nil
41+
}
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
// Copyright (c) 2016, 2018, 2025, Oracle and/or its affiliates. All rights reserved.
2+
// 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.
3+
// Code generated. DO NOT EDIT.
4+
5+
// API Gateway API
6+
//
7+
// API for the API Gateway service. Use this API to manage gateways, deployments, and related items.
8+
// For more information, see
9+
// Overview of API Gateway (https://docs.oracle.com/iaas/Content/APIGateway/Concepts/apigatewayoverview.htm).
10+
//
11+
12+
package apigateway
13+
14+
import (
15+
"fmt"
16+
"github.com/oracle/oci-go-sdk/v65/common"
17+
"strings"
18+
)
19+
20+
// Ipv6AddressConfiguration IPv6 address configuration details that should be used when creating the gateway.
21+
type Ipv6AddressConfiguration struct {
22+
23+
// List of IPv6 addresses that will be assigned to the gateway during creation.
24+
Addresses []string `mandatory:"false" json:"addresses"`
25+
26+
// List of IPv6 prefixes from which to provision IPv6 addresses from. This is required if more than one prefix exists on the subnet.
27+
SubnetCidrs []string `mandatory:"false" json:"subnetCidrs"`
28+
}
29+
30+
func (m Ipv6AddressConfiguration) String() string {
31+
return common.PointerString(m)
32+
}
33+
34+
// ValidateEnumValue returns an error when providing an unsupported enum value
35+
// This function is being called during constructing API request process
36+
// Not recommended for calling this function directly
37+
func (m Ipv6AddressConfiguration) ValidateEnumValue() (bool, error) {
38+
errMessage := []string{}
39+
40+
if len(errMessage) > 0 {
41+
return true, fmt.Errorf("%s", strings.Join(errMessage, "\n"))
42+
}
43+
return false, nil
44+
}

bastion/bastion.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,11 @@ type Bastion struct {
8282
// Usage of system tag keys. These predefined keys are scoped to namespaces.
8383
// Example: `{"orcl-cloud": {"free-tier-retained": "true"}}`
8484
SystemTags map[string]map[string]interface{} `mandatory:"false" json:"systemTags"`
85+
86+
// Security attributes for this resource. Each key is predefined and scoped to a namespace.
87+
// For more information, see Resource Tags (https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm).
88+
// Example: `{"Oracle-ZPR": {"MaxEgressCount": {"value": "42", "mode": "enforce"}}}`
89+
SecurityAttributes map[string]map[string]interface{} `mandatory:"false" json:"securityAttributes"`
8590
}
8691

8792
func (m Bastion) String() string {

0 commit comments

Comments
 (0)