Skip to content

Commit 0aeddb4

Browse files
authored
Releasing version 2.3.3
Releasing version 2.3.3
2 parents eccf585 + 2988157 commit 0aeddb4

File tree

71 files changed

+4819
-987
lines changed

Some content is hidden

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

71 files changed

+4819
-987
lines changed

CHANGELOG.rst

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,17 @@ 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-
=====================
7+
====================
8+
2.3.3 - 2019-09-03
9+
====================
10+
11+
Added
12+
-----
13+
* Support for the Sydney (SYD) region
14+
* Support for managing cluster networks in the Compute Autoscaling service
15+
* Support for tracking asynchronous operations via work requests in the Database service
16+
17+
====================
818
2.3.2 - 2019-08-27
919
====================
1020

docs/api/core.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ Core Services
5555
oci.core.models.CaptureConsoleHistoryDetails
5656
oci.core.models.ChangeBootVolumeBackupCompartmentDetails
5757
oci.core.models.ChangeBootVolumeCompartmentDetails
58+
oci.core.models.ChangeClusterNetworkCompartmentDetails
5859
oci.core.models.ChangeCpeCompartmentDetails
5960
oci.core.models.ChangeCrossConnectCompartmentDetails
6061
oci.core.models.ChangeCrossConnectGroupCompartmentDetails
@@ -81,6 +82,9 @@ Core Services
8182
oci.core.models.ChangeVolumeCompartmentDetails
8283
oci.core.models.ChangeVolumeGroupBackupCompartmentDetails
8384
oci.core.models.ChangeVolumeGroupCompartmentDetails
85+
oci.core.models.ClusterNetwork
86+
oci.core.models.ClusterNetworkPlacementConfigurationDetails
87+
oci.core.models.ClusterNetworkSummary
8488
oci.core.models.ComputeInstanceDetails
8589
oci.core.models.ConnectLocalPeeringGatewaysDetails
8690
oci.core.models.ConnectRemotePeeringConnectionsDetails
@@ -90,6 +94,8 @@ Core Services
9094
oci.core.models.CreateAppCatalogSubscriptionDetails
9195
oci.core.models.CreateBootVolumeBackupDetails
9296
oci.core.models.CreateBootVolumeDetails
97+
oci.core.models.CreateClusterNetworkDetails
98+
oci.core.models.CreateClusterNetworkInstancePoolDetails
9399
oci.core.models.CreateCpeDetails
94100
oci.core.models.CreateCrossConnectDetails
95101
oci.core.models.CreateCrossConnectGroupDetails
@@ -235,6 +241,7 @@ Core Services
235241
oci.core.models.UpdateBootVolumeBackupDetails
236242
oci.core.models.UpdateBootVolumeDetails
237243
oci.core.models.UpdateBootVolumeKmsKeyDetails
244+
oci.core.models.UpdateClusterNetworkDetails
238245
oci.core.models.UpdateConsoleHistoryDetails
239246
oci.core.models.UpdateCpeDetails
240247
oci.core.models.UpdateCrossConnectDetails
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
ChangeClusterNetworkCompartmentDetails
2+
======================================
3+
4+
.. currentmodule:: oci.core.models
5+
6+
.. autoclass:: ChangeClusterNetworkCompartmentDetails
7+
:show-inheritance:
8+
:special-members: __init__
9+
:members:
10+
:undoc-members:
11+
:inherited-members:
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
ClusterNetwork
2+
==============
3+
4+
.. currentmodule:: oci.core.models
5+
6+
.. autoclass:: ClusterNetwork
7+
:show-inheritance:
8+
:special-members: __init__
9+
:members:
10+
:undoc-members:
11+
:inherited-members:
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
ClusterNetworkPlacementConfigurationDetails
2+
===========================================
3+
4+
.. currentmodule:: oci.core.models
5+
6+
.. autoclass:: ClusterNetworkPlacementConfigurationDetails
7+
:show-inheritance:
8+
:special-members: __init__
9+
:members:
10+
:undoc-members:
11+
:inherited-members:
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
ClusterNetworkSummary
2+
=====================
3+
4+
.. currentmodule:: oci.core.models
5+
6+
.. autoclass:: ClusterNetworkSummary
7+
:show-inheritance:
8+
:special-members: __init__
9+
:members:
10+
:undoc-members:
11+
:inherited-members:
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
CreateClusterNetworkDetails
2+
===========================
3+
4+
.. currentmodule:: oci.core.models
5+
6+
.. autoclass:: CreateClusterNetworkDetails
7+
:show-inheritance:
8+
:special-members: __init__
9+
:members:
10+
:undoc-members:
11+
:inherited-members:
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
CreateClusterNetworkInstancePoolDetails
2+
=======================================
3+
4+
.. currentmodule:: oci.core.models
5+
6+
.. autoclass:: CreateClusterNetworkInstancePoolDetails
7+
:show-inheritance:
8+
:special-members: __init__
9+
:members:
10+
:undoc-members:
11+
:inherited-members:
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
UpdateClusterNetworkDetails
2+
===========================
3+
4+
.. currentmodule:: oci.core.models
5+
6+
.. autoclass:: UpdateClusterNetworkDetails
7+
:show-inheritance:
8+
:special-members: __init__
9+
:members:
10+
:undoc-members:
11+
:inherited-members:
Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
# coding: utf-8
2+
# Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
3+
4+
# This script provides an example of how use the cluster networks SDK in terms of:
5+
# - Creating an Instance Configuration
6+
# - Create a Cluster Network based on that configuration.
7+
# - Wait for the Cluster Network to go to Running state.
8+
# - List instance of the Cluster Network
9+
# - Terminating Cluster Network
10+
# - Deleting the Instance Configuration
11+
#
12+
# USAGE:
13+
# `python examples/cluster_networks_example.py \
14+
# --compartment '<COMPARTMENT_ID>' \
15+
# --availability-domain '<AVAILABILITY_DOMAIN>' \
16+
# --subnet-id '<SUBNET_ID>' \
17+
# --image-id '<IMAGE_ID>'`
18+
#
19+
# Example (create a cluster network in uk-london-1):
20+
# `python examples/cluster_networks_example.py \
21+
# --compartment 'ocid1.compartment.oc1..aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' \
22+
# --availability-domain 'asdf:UK-LONDON-1-AD-1' \
23+
# --subnet-id 'ocid1.subnet.oc1.uk-london-1.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' \
24+
# --image-id 'ocid1.image.oc1.uk-london-1.aaaaaaaa5sh4s5zyq5p54zf26u7j2ne6k7q3ryzsajnhy264ydbyr74gqsoq'`
25+
#
26+
27+
import oci
28+
import argparse
29+
from oci.core import ComputeManagementClient, ComputeManagementClientCompositeOperations
30+
from oci.core.models import CreateInstanceConfigurationDetails, \
31+
InstanceConfigurationLaunchInstanceDetails, \
32+
InstanceConfigurationInstanceSourceViaImageDetails, \
33+
InstanceConfigurationCreateVnicDetails, \
34+
ComputeInstanceDetails, \
35+
InstanceConfigurationBlockVolumeDetails, \
36+
InstanceConfigurationCreateVolumeDetails, \
37+
InstanceConfigurationIscsiAttachVolumeDetails, \
38+
CreateClusterNetworkDetails, \
39+
ClusterNetworkPlacementConfigurationDetails, \
40+
CreateClusterNetworkInstancePoolDetails
41+
42+
43+
def _create_block_volume_details(compartment_id, ad):
44+
"""Sets up the model for a simple 50gb BV for use by tests.
45+
:returns: InstanceConfigurationBlockVolumeDetails
46+
"""
47+
block_volume_details = InstanceConfigurationBlockVolumeDetails()
48+
49+
create_volume_details = InstanceConfigurationCreateVolumeDetails()
50+
create_volume_details.display_name = "blockvol1"
51+
create_volume_details.compartment_id = compartment_id
52+
create_volume_details.size_in_gbs = 50
53+
create_volume_details.availability_domain = ad
54+
55+
volume_attach_details = InstanceConfigurationIscsiAttachVolumeDetails()
56+
57+
block_volume_details.create_details = create_volume_details
58+
block_volume_details.attach_details = volume_attach_details
59+
return block_volume_details
60+
61+
62+
# === Main ===
63+
64+
if __name__ == "__main__":
65+
66+
# Load the default configuration
67+
config = oci.config.from_file()
68+
69+
# parse arguments
70+
parser = argparse.ArgumentParser()
71+
parser.add_argument('--compartment-id',
72+
help='Your compartment OCID',
73+
required=True
74+
)
75+
parser.add_argument('--availability-domain',
76+
help='the AD where the cluster network will be spun up (cluster network only spans a single AD)',
77+
required=True
78+
)
79+
80+
parser.add_argument('--subnet-id',
81+
help='the ',
82+
required=True
83+
)
84+
85+
parser.add_argument('--image-id',
86+
help='the image ID to use for instances',
87+
required=True
88+
)
89+
90+
args = parser.parse_args()
91+
92+
# create the compute management client
93+
compute_management_client = ComputeManagementClient(config)
94+
composite_client = ComputeManagementClientCompositeOperations(compute_management_client)
95+
96+
launch_details = InstanceConfigurationLaunchInstanceDetails(
97+
compartment_id=args.compartment_id,
98+
display_name="some hpc instance name",
99+
shape="BM.HPC2.36",
100+
source_details=InstanceConfigurationInstanceSourceViaImageDetails(
101+
image_id=args.image_id
102+
),
103+
create_vnic_details=InstanceConfigurationCreateVnicDetails()
104+
)
105+
106+
instance_details = ComputeInstanceDetails(
107+
launch_details=launch_details,
108+
block_volumes=[
109+
_create_block_volume_details(args.compartment_id, args.availability_domain)
110+
])
111+
112+
create_instance_config_details = CreateInstanceConfigurationDetails(
113+
display_name="sample instance config name",
114+
compartment_id=args.compartment_id,
115+
instance_details=instance_details)
116+
117+
try:
118+
# Creates an hpc instance configuration to use with cluster network
119+
instance_config = compute_management_client.create_instance_configuration(
120+
create_instance_config_details).data
121+
print("Created instanceConfiguration: ", instance_config)
122+
123+
# Creates a placement configuration to be used when creating a pool
124+
placement_config = \
125+
ClusterNetworkPlacementConfigurationDetails()
126+
placement_config.availability_domain = args.availability_domain
127+
placement_config.primary_subnet_id = args.subnet_id
128+
129+
instance_pool_def = CreateClusterNetworkInstancePoolDetails()
130+
instance_pool_def.instance_configuration_id = instance_config.id
131+
instance_pool_def.size = 1
132+
133+
create_cluster_network_details = CreateClusterNetworkDetails()
134+
create_cluster_network_details.compartment_id = args.compartment_id
135+
create_cluster_network_details.display_name = "sample cluster network"
136+
create_cluster_network_details.instance_pools = [instance_pool_def]
137+
create_cluster_network_details.placement_configuration = placement_config
138+
139+
# Create a cluster network.
140+
print("Creating cluster network: ", create_cluster_network_details)
141+
cluster_network = composite_client.create_cluster_network_and_wait_for_state(
142+
create_cluster_network_details, wait_for_states=["RUNNING"]).data
143+
144+
print("Created cluster network: ", cluster_network)
145+
146+
finally:
147+
# cleaning up created resources
148+
compute_management_client.terminate_cluster_network(cluster_network.id)
149+
print("Terminated cluster network: ", cluster_network)
150+
151+
compute_management_client.delete_instance_configuration(instance_config.id)
152+
print("Deleted instanceConfiguration: ", instance_config)

0 commit comments

Comments
 (0)