Skip to content

Commit

Permalink
Releasing version 2.3.3
Browse files Browse the repository at this point in the history
Releasing version 2.3.3
  • Loading branch information
dshelbyo authored Sep 3, 2019
2 parents eccf585 + 2988157 commit 0aeddb4
Show file tree
Hide file tree
Showing 71 changed files with 4,819 additions and 987 deletions.
12 changes: 11 additions & 1 deletion CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +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/>`_.

=====================
====================
2.3.3 - 2019-09-03
====================

Added
-----
* Support for the Sydney (SYD) region
* Support for managing cluster networks in the Compute Autoscaling service
* Support for tracking asynchronous operations via work requests in the Database service

====================
2.3.2 - 2019-08-27
====================

Expand Down
7 changes: 7 additions & 0 deletions docs/api/core.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ Core Services
oci.core.models.CaptureConsoleHistoryDetails
oci.core.models.ChangeBootVolumeBackupCompartmentDetails
oci.core.models.ChangeBootVolumeCompartmentDetails
oci.core.models.ChangeClusterNetworkCompartmentDetails
oci.core.models.ChangeCpeCompartmentDetails
oci.core.models.ChangeCrossConnectCompartmentDetails
oci.core.models.ChangeCrossConnectGroupCompartmentDetails
Expand All @@ -81,6 +82,9 @@ Core Services
oci.core.models.ChangeVolumeCompartmentDetails
oci.core.models.ChangeVolumeGroupBackupCompartmentDetails
oci.core.models.ChangeVolumeGroupCompartmentDetails
oci.core.models.ClusterNetwork
oci.core.models.ClusterNetworkPlacementConfigurationDetails
oci.core.models.ClusterNetworkSummary
oci.core.models.ComputeInstanceDetails
oci.core.models.ConnectLocalPeeringGatewaysDetails
oci.core.models.ConnectRemotePeeringConnectionsDetails
Expand All @@ -90,6 +94,8 @@ Core Services
oci.core.models.CreateAppCatalogSubscriptionDetails
oci.core.models.CreateBootVolumeBackupDetails
oci.core.models.CreateBootVolumeDetails
oci.core.models.CreateClusterNetworkDetails
oci.core.models.CreateClusterNetworkInstancePoolDetails
oci.core.models.CreateCpeDetails
oci.core.models.CreateCrossConnectDetails
oci.core.models.CreateCrossConnectGroupDetails
Expand Down Expand Up @@ -235,6 +241,7 @@ Core Services
oci.core.models.UpdateBootVolumeBackupDetails
oci.core.models.UpdateBootVolumeDetails
oci.core.models.UpdateBootVolumeKmsKeyDetails
oci.core.models.UpdateClusterNetworkDetails
oci.core.models.UpdateConsoleHistoryDetails
oci.core.models.UpdateCpeDetails
oci.core.models.UpdateCrossConnectDetails
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
ChangeClusterNetworkCompartmentDetails
======================================

.. currentmodule:: oci.core.models

.. autoclass:: ChangeClusterNetworkCompartmentDetails
:show-inheritance:
:special-members: __init__
:members:
:undoc-members:
:inherited-members:
11 changes: 11 additions & 0 deletions docs/api/core/models/oci.core.models.ClusterNetwork.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
ClusterNetwork
==============

.. currentmodule:: oci.core.models

.. autoclass:: ClusterNetwork
:show-inheritance:
:special-members: __init__
:members:
:undoc-members:
:inherited-members:
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
ClusterNetworkPlacementConfigurationDetails
===========================================

.. currentmodule:: oci.core.models

.. autoclass:: ClusterNetworkPlacementConfigurationDetails
:show-inheritance:
:special-members: __init__
:members:
:undoc-members:
:inherited-members:
11 changes: 11 additions & 0 deletions docs/api/core/models/oci.core.models.ClusterNetworkSummary.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
ClusterNetworkSummary
=====================

.. currentmodule:: oci.core.models

.. autoclass:: ClusterNetworkSummary
:show-inheritance:
:special-members: __init__
:members:
:undoc-members:
:inherited-members:
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
CreateClusterNetworkDetails
===========================

.. currentmodule:: oci.core.models

.. autoclass:: CreateClusterNetworkDetails
:show-inheritance:
:special-members: __init__
:members:
:undoc-members:
:inherited-members:
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
CreateClusterNetworkInstancePoolDetails
=======================================

.. currentmodule:: oci.core.models

.. autoclass:: CreateClusterNetworkInstancePoolDetails
:show-inheritance:
:special-members: __init__
:members:
:undoc-members:
:inherited-members:
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
UpdateClusterNetworkDetails
===========================

.. currentmodule:: oci.core.models

.. autoclass:: UpdateClusterNetworkDetails
:show-inheritance:
:special-members: __init__
:members:
:undoc-members:
:inherited-members:
152 changes: 152 additions & 0 deletions examples/cluster_networks_example.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
# coding: utf-8
# Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.

# This script provides an example of how use the cluster networks SDK in terms of:
# - Creating an Instance Configuration
# - Create a Cluster Network based on that configuration.
# - Wait for the Cluster Network to go to Running state.
# - List instance of the Cluster Network
# - Terminating Cluster Network
# - Deleting the Instance Configuration
#
# USAGE:
# `python examples/cluster_networks_example.py \
# --compartment '<COMPARTMENT_ID>' \
# --availability-domain '<AVAILABILITY_DOMAIN>' \
# --subnet-id '<SUBNET_ID>' \
# --image-id '<IMAGE_ID>'`
#
# Example (create a cluster network in uk-london-1):
# `python examples/cluster_networks_example.py \
# --compartment 'ocid1.compartment.oc1..aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' \
# --availability-domain 'asdf:UK-LONDON-1-AD-1' \
# --subnet-id 'ocid1.subnet.oc1.uk-london-1.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' \
# --image-id 'ocid1.image.oc1.uk-london-1.aaaaaaaa5sh4s5zyq5p54zf26u7j2ne6k7q3ryzsajnhy264ydbyr74gqsoq'`
#

import oci
import argparse
from oci.core import ComputeManagementClient, ComputeManagementClientCompositeOperations
from oci.core.models import CreateInstanceConfigurationDetails, \
InstanceConfigurationLaunchInstanceDetails, \
InstanceConfigurationInstanceSourceViaImageDetails, \
InstanceConfigurationCreateVnicDetails, \
ComputeInstanceDetails, \
InstanceConfigurationBlockVolumeDetails, \
InstanceConfigurationCreateVolumeDetails, \
InstanceConfigurationIscsiAttachVolumeDetails, \
CreateClusterNetworkDetails, \
ClusterNetworkPlacementConfigurationDetails, \
CreateClusterNetworkInstancePoolDetails


def _create_block_volume_details(compartment_id, ad):
"""Sets up the model for a simple 50gb BV for use by tests.
:returns: InstanceConfigurationBlockVolumeDetails
"""
block_volume_details = InstanceConfigurationBlockVolumeDetails()

create_volume_details = InstanceConfigurationCreateVolumeDetails()
create_volume_details.display_name = "blockvol1"
create_volume_details.compartment_id = compartment_id
create_volume_details.size_in_gbs = 50
create_volume_details.availability_domain = ad

volume_attach_details = InstanceConfigurationIscsiAttachVolumeDetails()

block_volume_details.create_details = create_volume_details
block_volume_details.attach_details = volume_attach_details
return block_volume_details


# === Main ===

if __name__ == "__main__":

# Load the default configuration
config = oci.config.from_file()

# parse arguments
parser = argparse.ArgumentParser()
parser.add_argument('--compartment-id',
help='Your compartment OCID',
required=True
)
parser.add_argument('--availability-domain',
help='the AD where the cluster network will be spun up (cluster network only spans a single AD)',
required=True
)

parser.add_argument('--subnet-id',
help='the ',
required=True
)

parser.add_argument('--image-id',
help='the image ID to use for instances',
required=True
)

args = parser.parse_args()

# create the compute management client
compute_management_client = ComputeManagementClient(config)
composite_client = ComputeManagementClientCompositeOperations(compute_management_client)

launch_details = InstanceConfigurationLaunchInstanceDetails(
compartment_id=args.compartment_id,
display_name="some hpc instance name",
shape="BM.HPC2.36",
source_details=InstanceConfigurationInstanceSourceViaImageDetails(
image_id=args.image_id
),
create_vnic_details=InstanceConfigurationCreateVnicDetails()
)

instance_details = ComputeInstanceDetails(
launch_details=launch_details,
block_volumes=[
_create_block_volume_details(args.compartment_id, args.availability_domain)
])

create_instance_config_details = CreateInstanceConfigurationDetails(
display_name="sample instance config name",
compartment_id=args.compartment_id,
instance_details=instance_details)

try:
# Creates an hpc instance configuration to use with cluster network
instance_config = compute_management_client.create_instance_configuration(
create_instance_config_details).data
print("Created instanceConfiguration: ", instance_config)

# Creates a placement configuration to be used when creating a pool
placement_config = \
ClusterNetworkPlacementConfigurationDetails()
placement_config.availability_domain = args.availability_domain
placement_config.primary_subnet_id = args.subnet_id

instance_pool_def = CreateClusterNetworkInstancePoolDetails()
instance_pool_def.instance_configuration_id = instance_config.id
instance_pool_def.size = 1

create_cluster_network_details = CreateClusterNetworkDetails()
create_cluster_network_details.compartment_id = args.compartment_id
create_cluster_network_details.display_name = "sample cluster network"
create_cluster_network_details.instance_pools = [instance_pool_def]
create_cluster_network_details.placement_configuration = placement_config

# Create a cluster network.
print("Creating cluster network: ", create_cluster_network_details)
cluster_network = composite_client.create_cluster_network_and_wait_for_state(
create_cluster_network_details, wait_for_states=["RUNNING"]).data

print("Created cluster network: ", cluster_network)

finally:
# cleaning up created resources
compute_management_client.terminate_cluster_network(cluster_network.id)
print("Terminated cluster network: ", cluster_network)

compute_management_client.delete_instance_configuration(instance_config.id)
print("Deleted instanceConfiguration: ", instance_config)
7 changes: 7 additions & 0 deletions examples/showoci/CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ All notable changes to this project will be documented in this file.

The format is based on `Keep a Changelog <http://keepachangelog.com/>`_.

====================
19.9.4 - 2019-09-04
====================
* Added usage and available to the limits
* Added CSV extract for limits
* Fix few error handling

====================
19.9.3 - 2019-09-03
====================
Expand Down
28 changes: 20 additions & 8 deletions examples/showoci/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -463,14 +463,26 @@ Compartment gse00000000 (root):
##############################
# Limits > 0 #
##############################
--> auto-scaling config-count = 200 SCOPE=REGION
--> block-storage backup-count = 4000 SCOPE=REGION
--> block-storage total-storage-gb = 30720 SCOPE=AD EWTG:US-ASHBURN-AD-1
--> block-storage total-storage-gb = 30720 SCOPE=AD EWTG:US-ASHBURN-AD-2
--> block-storage total-storage-gb = 30720 SCOPE=AD EWTG:US-ASHBURN-AD-3
--> block-storage volume-count = 10000 SCOPE=AD EWTG:US-ASHBURN-AD-1
--> block-storage volume-count = 10000 SCOPE=AD EWTG:US-ASHBURN-AD-2
--> block-storage volume-count = 10000 SCOPE=AD EWTG:US-ASHBURN-AD-3
--> auto-scaling config-count = 200 Used = Available = SCOPE=REGION
--> block-storage backup-count = 4000 Used = Available = 4000 SCOPE=REGION
--> block-storage total-storage-gb = 30720 Used = Available = SCOPE=AD EWTG:US-ASHBURN-AD-1
--> block-storage total-storage-gb = 30720 Used = Available = SCOPE=AD EWTG:US-ASHBURN-AD-2
--> block-storage total-storage-gb = 30720 Used = Available = SCOPE=AD EWTG:US-ASHBURN-AD-3
--> block-storage volume-count = 10000 Used = Available = 10000 SCOPE=AD EWTG:US-ASHBURN-AD-1
--> block-storage volume-count = 10000 Used = Available = 10000 SCOPE=AD EWTG:US-ASHBURN-AD-2
--> block-storage volume-count = 10000 Used = Available = 10000 SCOPE=AD EWTG:US-ASHBURN-AD-3
--> block-storage volumes-per-group = 32 Used = Available = SCOPE=AD EWTG:US-ASHBURN-AD-1
--> block-storage volumes-per-group = 32 Used = Available = SCOPE=AD EWTG:US-ASHBURN-AD-2
--> block-storage volumes-per-group = 32 Used = Available = SCOPE=AD EWTG:US-ASHBURN-AD-3
--> compartments compartment-count = 50 Used = 3 Available = 47 SCOPE=REGION
--> compute custom-image-count = 25 Used = Available = 25 SCOPE=REGION
--> compute vm-standard-b1-1 = 2 Used = Available = 2 SCOPE=AD EWTG:US-ASHBURN-AD-1
--> compute vm-standard-b1-1 = 2 Used = Available = 2 SCOPE=AD EWTG:US-ASHBURN-AD-2
--> compute vm-standard1-1-count = 2 Used = Available = 2 SCOPE=AD EWTG:US-ASHBURN-AD-3
--> compute vm-standard1-2-count = 2 Used = Available = 2 SCOPE=AD EWTG:US-ASHBURN-AD-1
--> compute vm-standard1-2-count = 2 Used = Available = 2 SCOPE=AD EWTG:US-ASHBURN-AD-2
--> compute vm-standard1-2-count = 2 Used = Available = 2 SCOPE=AD EWTG:US-ASHBURN-AD-3
...
############################################################
# Compartment Network #
Expand Down
2 changes: 1 addition & 1 deletion examples/showoci/showoci.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@
import argparse
import datetime

version = "19.9.3"
version = "19.9.4"

##########################################################################
# execute_extract
Expand Down
6 changes: 4 additions & 2 deletions examples/showoci/showoci_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -1327,8 +1327,10 @@ def __get_core_compute_instances(self, region_name, compartment):
if vnic['compartment_name'] != compartment['name']:
comp_text = " (Compartment=" + vnic['compartment_name'] + ")"

val = {'id': vnic['vnic_id'], 'desc': vnic['vnic_details']['display_name'] + str(comp_text), 'details': vnic['vnic_details']}
vnicdata.append(val)
if 'vnic_details' in vnic:
if 'display_name' in vnic['vnic_details']:
val = {'id': vnic['vnic_id'], 'desc': vnic['vnic_details']['display_name'] + str(comp_text), 'details': vnic['vnic_details']}
vnicdata.append(val)

inst['vnic'] = vnicdata

Expand Down
Loading

0 comments on commit 0aeddb4

Please sign in to comment.