Skip to content

Commit a7988bf

Browse files
authored
GO SDK 5.2.0 Release
GO SDK 5.2.0 Release
2 parents 070cae6 + 187d5da commit a7988bf

37 files changed

+331
-64
lines changed

CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ 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+
## 5.2.0 - 2019-04-02
8+
### Added
9+
- Support for provider service key names on virtual circuits in the FastConnect service
10+
- Support for customer reference names on cross connects and cross connect groups in the FastConnect service
11+
712
## 5.1.0 - 2019-03-26
813
### Added
914
- Support for glob patterns and exclusions for object lifecycle management in the Object Storage service

common/version.go

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

core/attach_paravirtualized_volume_details.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ type AttachParavirtualizedVolumeDetails struct {
3131
// Whether the attachment was created in read-only mode.
3232
IsReadOnly *bool `mandatory:"false" json:"isReadOnly"`
3333

34-
// Whether to enable encryption in transit for the PV data volume attachment. Defaults to false.
34+
// Whether to enable in-transit encryption for the data volume's paravirtualized attachment. The default value is false.
3535
IsPvEncryptionInTransitEnabled *bool `mandatory:"false" json:"isPvEncryptionInTransitEnabled"`
3636
}
3737

core/boot_volume_attachment.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ type BootVolumeAttachment struct {
4545
// Example: `My boot volume`
4646
DisplayName *string `mandatory:"false" json:"displayName"`
4747

48-
// Whether the enable encryption in transit for the PV volume attachment is on or not.
48+
// Whether in-transit encryption for the boot volume's paravirtualized attachment is enabled or not.
4949
IsPvEncryptionInTransitEnabled *bool `mandatory:"false" json:"isPvEncryptionInTransitEnabled"`
5050
}
5151

core/core_compute_client.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ func (client ComputeClient) createAppCatalogSubscription(ctx context.Context, re
319319
// use ImageSourceViaObjectStorageTupleDetails.
320320
// When importing an image based on the Object Storage URL, use
321321
// ImageSourceViaObjectStorageUriDetails.
322-
// See Object Storage URLs (https://docs.cloud.oracle.com/Content/Compute/Tasks/imageimportexport.htm#URLs) and pre-authenticated requests (https://docs.cloud.oracle.com/Content/Object/Tasks/managingaccess.htm#pre-auth)
322+
// See Object Storage URLs (https://docs.cloud.oracle.com/Content/Compute/Tasks/imageimportexport.htm#URLs) and Using Pre-Authenticated Requests (https://docs.cloud.oracle.com/Content/Object/Tasks/usingpreauthenticatedrequests.htm)
323323
// for constructing URLs for image import/export.
324324
// For more information about importing exported images, see
325325
// Image Import/Export (https://docs.cloud.oracle.com/Content/Compute/Tasks/imageimportexport.htm).
@@ -733,7 +733,7 @@ func (client ComputeClient) detachVolume(ctx context.Context, request common.OCI
733733
// For more information about exporting images, see Image Import/Export (https://docs.cloud.oracle.com/Content/Compute/Tasks/imageimportexport.htm).
734734
// To perform an image export, you need write access to the Object Storage bucket for the image,
735735
// see Let Users Write Objects to Object Storage Buckets (https://docs.cloud.oracle.com/Content/Identity/Concepts/commonpolicies.htm#Let4).
736-
// See Object Storage URLs (https://docs.cloud.oracle.com/Content/Compute/Tasks/imageimportexport.htm#URLs) and pre-authenticated requests (https://docs.cloud.oracle.com/Content/Object/Tasks/managingaccess.htm#pre-auth)
736+
// See Object Storage URLs (https://docs.cloud.oracle.com/Content/Compute/Tasks/imageimportexport.htm#URLs) and Using Pre-Authenticated Requests (https://docs.cloud.oracle.com/Content/Object/Tasks/usingpreauthenticatedrequests.htm)
737737
// for constructing URLs for image import/export.
738738
func (client ComputeClient) ExportImage(ctx context.Context, request ExportImageRequest) (response ExportImageResponse, err error) {
739739
var ociResponse common.OCIResponse

core/core_virtualnetwork_client.go

+42
Original file line numberDiff line numberDiff line change
@@ -2666,6 +2666,48 @@ func (client VirtualNetworkClient) getFastConnectProviderService(ctx context.Con
26662666
return response, err
26672667
}
26682668

2669+
// GetFastConnectProviderServiceKey Gets the specified provider service key's information.
2670+
func (client VirtualNetworkClient) GetFastConnectProviderServiceKey(ctx context.Context, request GetFastConnectProviderServiceKeyRequest) (response GetFastConnectProviderServiceKeyResponse, err error) {
2671+
var ociResponse common.OCIResponse
2672+
policy := common.NoRetryPolicy()
2673+
if request.RetryPolicy() != nil {
2674+
policy = *request.RetryPolicy()
2675+
}
2676+
ociResponse, err = common.Retry(ctx, request, client.getFastConnectProviderServiceKey, policy)
2677+
if err != nil {
2678+
if ociResponse != nil {
2679+
response = GetFastConnectProviderServiceKeyResponse{RawResponse: ociResponse.HTTPResponse()}
2680+
}
2681+
return
2682+
}
2683+
if convertedResponse, ok := ociResponse.(GetFastConnectProviderServiceKeyResponse); ok {
2684+
response = convertedResponse
2685+
} else {
2686+
err = fmt.Errorf("failed to convert OCIResponse into GetFastConnectProviderServiceKeyResponse")
2687+
}
2688+
return
2689+
}
2690+
2691+
// getFastConnectProviderServiceKey implements the OCIOperation interface (enables retrying operations)
2692+
func (client VirtualNetworkClient) getFastConnectProviderServiceKey(ctx context.Context, request common.OCIRequest) (common.OCIResponse, error) {
2693+
httpRequest, err := request.HTTPRequest(http.MethodGet, "/fastConnectProviderServices/{providerServiceId}/providerServiceKeys/{providerServiceKeyName}")
2694+
if err != nil {
2695+
return nil, err
2696+
}
2697+
2698+
var response GetFastConnectProviderServiceKeyResponse
2699+
var httpResponse *http.Response
2700+
httpResponse, err = client.Call(ctx, &httpRequest)
2701+
defer common.CloseBodyIfValid(httpResponse)
2702+
response.RawResponse = httpResponse
2703+
if err != nil {
2704+
return response, err
2705+
}
2706+
2707+
err = common.UnmarshalResponse(httpResponse, &response)
2708+
return response, err
2709+
}
2710+
26692711
// GetIPSecConnection Gets the specified IPSec connection's basic information, including the static routes for the
26702712
// on-premises router. If you want the status of the connection (whether it's up or down), use
26712713
// GetIPSecConnectionDeviceStatus.

core/create_cross_connect_details.go

+4
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,10 @@ type CreateCrossConnectDetails struct {
4646
// location, and you want this new cross-connect to be on the same router, provide the
4747
// OCID of that existing cross-connect or cross-connect group.
4848
NearCrossConnectOrCrossConnectGroupId *string `mandatory:"false" json:"nearCrossConnectOrCrossConnectGroupId"`
49+
50+
// A reference name or identifier for the physical fiber connection that this cross-connect
51+
// uses.
52+
CustomerReferenceName *string `mandatory:"false" json:"customerReferenceName"`
4953
}
5054

5155
func (m CreateCrossConnectDetails) String() string {

core/create_cross_connect_group_details.go

+4
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,10 @@ type CreateCrossConnectGroupDetails struct {
2121
// A user-friendly name. Does not have to be unique, and it's changeable.
2222
// Avoid entering confidential information.
2323
DisplayName *string `mandatory:"false" json:"displayName"`
24+
25+
// A reference name or identifier for the physical fiber connection that this cross-connect
26+
// group uses.
27+
CustomerReferenceName *string `mandatory:"false" json:"customerReferenceName"`
2428
}
2529

2630
func (m CreateCrossConnectGroupDetails) String() string {

core/create_image_details.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ type CreateImageDetails struct {
4343
InstanceId *string `mandatory:"false" json:"instanceId"`
4444

4545
// Specifies the configuration mode for launching virtual machine (VM) instances. The configuration modes are:
46-
// * `NATIVE` - VM instances launch with iSCSI boot and VFIO devices. The default value for Oracle-provided images.
46+
// * `NATIVE` - VM instances launch with paravirtualized boot and VFIO devices. The default value for Oracle-provided images.
4747
// * `EMULATED` - VM instances launch with emulated devices, such as the E1000 network driver and emulated SCSI disk controller.
4848
// * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using virtio drivers.
4949
// * `CUSTOM` - VM instances launch with custom configuration settings specified in the `LaunchOptions` parameter.

core/create_virtual_circuit_details.go

+3
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,9 @@ type CreateVirtualCircuitDetails struct {
5555
// ListFastConnectProviderServices.
5656
ProviderServiceId *string `mandatory:"false" json:"providerServiceId"`
5757

58+
// The service key name offered by the provider (if the customer is connecting via a provider).
59+
ProviderServiceKeyName *string `mandatory:"false" json:"providerServiceKeyName"`
60+
5861
// Deprecated. Instead use `providerServiceId`.
5962
// To get a list of the provider names, see
6063
// ListFastConnectProviderServices.

core/cross_connect.go

+4
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,10 @@ type CrossConnect struct {
5555
// Example: `10 Gbps`
5656
PortSpeedShapeName *string `mandatory:"false" json:"portSpeedShapeName"`
5757

58+
// A reference name or identifier for the physical fiber connection that this cross-connect
59+
// uses.
60+
CustomerReferenceName *string `mandatory:"false" json:"customerReferenceName"`
61+
5862
// The date and time the cross-connect was created, in the format defined by RFC3339.
5963
// Example: `2016-08-25T21:10:29.600Z`
6064
TimeCreated *common.SDKTime `mandatory:"false" json:"timeCreated"`

core/cross_connect_group.go

+4
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,10 @@ type CrossConnectGroup struct {
4040
// The cross-connect group's current state.
4141
LifecycleState CrossConnectGroupLifecycleStateEnum `mandatory:"false" json:"lifecycleState,omitempty"`
4242

43+
// A reference name or identifier for the physical fiber connection that this cross-connect
44+
// group uses.
45+
CustomerReferenceName *string `mandatory:"false" json:"customerReferenceName"`
46+
4347
// The date and time the cross-connect group was created, in the format defined by RFC3339.
4448
// Example: `2016-08-25T21:10:29.600Z`
4549
TimeCreated *common.SDKTime `mandatory:"false" json:"timeCreated"`

core/export_image_via_object_storage_tuple_details.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@ import (
1717
type ExportImageViaObjectStorageTupleDetails struct {
1818

1919
// The Object Storage bucket to export the image to.
20-
BucketName *string `mandatory:"false" json:"bucketName"`
20+
BucketName *string `mandatory:"true" json:"bucketName"`
2121

2222
// The Object Storage namespace to export the image to.
23-
NamespaceName *string `mandatory:"false" json:"namespaceName"`
23+
NamespaceName *string `mandatory:"true" json:"namespaceName"`
2424

2525
// The Object Storage object name for the exported image.
26-
ObjectName *string `mandatory:"false" json:"objectName"`
26+
ObjectName *string `mandatory:"true" json:"objectName"`
2727
}
2828

2929
func (m ExportImageViaObjectStorageTupleDetails) String() string {

core/export_image_via_object_storage_uri_details.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import (
1717
type ExportImageViaObjectStorageUriDetails struct {
1818

1919
// The Object Storage URL to export the image to. See Object Storage URLs (https://docs.cloud.oracle.com/Content/Compute/Tasks/imageimportexport.htm#URLs)
20-
// and pre-authenticated requests (https://docs.cloud.oracle.com/Content/Object/Tasks/managingaccess.htm#pre-auth) for constructing URLs for image import/export.
20+
// and Using Pre-Authenticated Requests (https://docs.cloud.oracle.com/Content/Object/Tasks/usingpreauthenticatedrequests.htm) for constructing URLs for image import/export.
2121
DestinationUri *string `mandatory:"true" json:"destinationUri"`
2222
}
2323

core/fast_connect_provider_service.go

+88
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,19 @@ type FastConnectProviderService struct {
3131
// Who is responsible for managing the public peering BGP information.
3232
PublicPeeringBgpManagement FastConnectProviderServicePublicPeeringBgpManagementEnum `mandatory:"true" json:"publicPeeringBgpManagement"`
3333

34+
// Who is responsible for managing the ASN information for the network at the other end
35+
// of the connection from Oracle.
36+
CustomerAsnManagement FastConnectProviderServiceCustomerAsnManagementEnum `mandatory:"true" json:"customerAsnManagement"`
37+
38+
// Who is responsible for managing the provider service key.
39+
ProviderServiceKeyManagement FastConnectProviderServiceProviderServiceKeyManagementEnum `mandatory:"true" json:"providerServiceKeyManagement"`
40+
41+
// Who is responsible for managing the virtual circuit bandwidth.
42+
BandwithShapeManagement FastConnectProviderServiceBandwithShapeManagementEnum `mandatory:"true" json:"bandwithShapeManagement"`
43+
44+
// Total number of cross-connect or cross-connect groups required for the virtual circuit.
45+
RequiredTotalCrossConnects *int `mandatory:"true" json:"requiredTotalCrossConnects"`
46+
3447
// Provider service type.
3548
Type FastConnectProviderServiceTypeEnum `mandatory:"true" json:"type"`
3649

@@ -118,6 +131,81 @@ func GetFastConnectProviderServiceSupportedVirtualCircuitTypesEnumValues() []Fas
118131
return values
119132
}
120133

134+
// FastConnectProviderServiceCustomerAsnManagementEnum Enum with underlying type: string
135+
type FastConnectProviderServiceCustomerAsnManagementEnum string
136+
137+
// Set of constants representing the allowable values for FastConnectProviderServiceCustomerAsnManagementEnum
138+
const (
139+
FastConnectProviderServiceCustomerAsnManagementCustomerManaged FastConnectProviderServiceCustomerAsnManagementEnum = "CUSTOMER_MANAGED"
140+
FastConnectProviderServiceCustomerAsnManagementProviderManaged FastConnectProviderServiceCustomerAsnManagementEnum = "PROVIDER_MANAGED"
141+
FastConnectProviderServiceCustomerAsnManagementOracleManaged FastConnectProviderServiceCustomerAsnManagementEnum = "ORACLE_MANAGED"
142+
)
143+
144+
var mappingFastConnectProviderServiceCustomerAsnManagement = map[string]FastConnectProviderServiceCustomerAsnManagementEnum{
145+
"CUSTOMER_MANAGED": FastConnectProviderServiceCustomerAsnManagementCustomerManaged,
146+
"PROVIDER_MANAGED": FastConnectProviderServiceCustomerAsnManagementProviderManaged,
147+
"ORACLE_MANAGED": FastConnectProviderServiceCustomerAsnManagementOracleManaged,
148+
}
149+
150+
// GetFastConnectProviderServiceCustomerAsnManagementEnumValues Enumerates the set of values for FastConnectProviderServiceCustomerAsnManagementEnum
151+
func GetFastConnectProviderServiceCustomerAsnManagementEnumValues() []FastConnectProviderServiceCustomerAsnManagementEnum {
152+
values := make([]FastConnectProviderServiceCustomerAsnManagementEnum, 0)
153+
for _, v := range mappingFastConnectProviderServiceCustomerAsnManagement {
154+
values = append(values, v)
155+
}
156+
return values
157+
}
158+
159+
// FastConnectProviderServiceProviderServiceKeyManagementEnum Enum with underlying type: string
160+
type FastConnectProviderServiceProviderServiceKeyManagementEnum string
161+
162+
// Set of constants representing the allowable values for FastConnectProviderServiceProviderServiceKeyManagementEnum
163+
const (
164+
FastConnectProviderServiceProviderServiceKeyManagementCustomerManaged FastConnectProviderServiceProviderServiceKeyManagementEnum = "CUSTOMER_MANAGED"
165+
FastConnectProviderServiceProviderServiceKeyManagementProviderManaged FastConnectProviderServiceProviderServiceKeyManagementEnum = "PROVIDER_MANAGED"
166+
FastConnectProviderServiceProviderServiceKeyManagementOracleManaged FastConnectProviderServiceProviderServiceKeyManagementEnum = "ORACLE_MANAGED"
167+
)
168+
169+
var mappingFastConnectProviderServiceProviderServiceKeyManagement = map[string]FastConnectProviderServiceProviderServiceKeyManagementEnum{
170+
"CUSTOMER_MANAGED": FastConnectProviderServiceProviderServiceKeyManagementCustomerManaged,
171+
"PROVIDER_MANAGED": FastConnectProviderServiceProviderServiceKeyManagementProviderManaged,
172+
"ORACLE_MANAGED": FastConnectProviderServiceProviderServiceKeyManagementOracleManaged,
173+
}
174+
175+
// GetFastConnectProviderServiceProviderServiceKeyManagementEnumValues Enumerates the set of values for FastConnectProviderServiceProviderServiceKeyManagementEnum
176+
func GetFastConnectProviderServiceProviderServiceKeyManagementEnumValues() []FastConnectProviderServiceProviderServiceKeyManagementEnum {
177+
values := make([]FastConnectProviderServiceProviderServiceKeyManagementEnum, 0)
178+
for _, v := range mappingFastConnectProviderServiceProviderServiceKeyManagement {
179+
values = append(values, v)
180+
}
181+
return values
182+
}
183+
184+
// FastConnectProviderServiceBandwithShapeManagementEnum Enum with underlying type: string
185+
type FastConnectProviderServiceBandwithShapeManagementEnum string
186+
187+
// Set of constants representing the allowable values for FastConnectProviderServiceBandwithShapeManagementEnum
188+
const (
189+
FastConnectProviderServiceBandwithShapeManagementCustomerManaged FastConnectProviderServiceBandwithShapeManagementEnum = "CUSTOMER_MANAGED"
190+
FastConnectProviderServiceBandwithShapeManagementProviderManaged FastConnectProviderServiceBandwithShapeManagementEnum = "PROVIDER_MANAGED"
191+
FastConnectProviderServiceBandwithShapeManagementOracleManaged FastConnectProviderServiceBandwithShapeManagementEnum = "ORACLE_MANAGED"
192+
)
193+
194+
var mappingFastConnectProviderServiceBandwithShapeManagement = map[string]FastConnectProviderServiceBandwithShapeManagementEnum{
195+
"CUSTOMER_MANAGED": FastConnectProviderServiceBandwithShapeManagementCustomerManaged,
196+
"PROVIDER_MANAGED": FastConnectProviderServiceBandwithShapeManagementProviderManaged,
197+
"ORACLE_MANAGED": FastConnectProviderServiceBandwithShapeManagementOracleManaged,
198+
}
199+
200+
// GetFastConnectProviderServiceBandwithShapeManagementEnumValues Enumerates the set of values for FastConnectProviderServiceBandwithShapeManagementEnum
201+
func GetFastConnectProviderServiceBandwithShapeManagementEnumValues() []FastConnectProviderServiceBandwithShapeManagementEnum {
202+
values := make([]FastConnectProviderServiceBandwithShapeManagementEnum, 0)
203+
for _, v := range mappingFastConnectProviderServiceBandwithShapeManagement {
204+
values = append(values, v)
205+
}
206+
return values
207+
}
208+
121209
// FastConnectProviderServiceTypeEnum Enum with underlying type: string
122210
type FastConnectProviderServiceTypeEnum string
123211

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved.
2+
// Code generated. DO NOT EDIT.
3+
4+
// Core Services API
5+
//
6+
// APIs for Networking Service, Compute Service, and Block Volume Service.
7+
//
8+
9+
package core
10+
11+
import (
12+
"github.com/oracle/oci-go-sdk/common"
13+
)
14+
15+
// FastConnectProviderServiceKey A provider service key and its details. A provider service key is an identifier for a provider's
16+
// virtual circuit.
17+
type FastConnectProviderServiceKey struct {
18+
19+
// The name of the service key offered by the provider.
20+
Name *string `mandatory:"false" json:"name"`
21+
22+
// The provisioned data rate of the connection. To get a list of the
23+
// available bandwidth levels (that is, shapes), see
24+
// ListFastConnectProviderVirtualCircuitBandwidthShapes.
25+
// Example: `10 Gbps`
26+
BandwidthShapeName *string `mandatory:"false" json:"bandwidthShapeName"`
27+
28+
// The provider's peering location.
29+
PeeringLocation *string `mandatory:"false" json:"peeringLocation"`
30+
}
31+
32+
func (m FastConnectProviderServiceKey) String() string {
33+
return common.PointerString(m)
34+
}

0 commit comments

Comments
 (0)