Python client library for IBM Cloud VPC Services
Project description
IBM Cloud Virtual Private Cloud (VPC) Python SDK Version 0.4.1
Python client library to interact with various IBM Cloud Virtual Private Cloud (VPC) Service APIs.
Note As IBM continues to invest and innovate on the IBM Cloud Virtual Private Cloud (gen 2 compute) infrastructure, we're focusing on delivering maximum value in a single VPC Infrastructure platform. To support this effort, generation 1 compute infrastructure is being deprecated. The end of service date is 26 February 2021. For more information, see the Start your migration blog.
Table of Contents
- Overview
- Prerequisites
- Installation
- Using the SDK
- Setting up VPC service
- Setting up VPC on Classic service
- Questions
- Issues
- Open source @ IBM
- Contributing
- License
Overview
The IBM Cloud Virtual Private Cloud (VPC) Python SDK allows developers to programmatically interact with the following IBM Cloud services:
Service Name | Imported Class Name |
---|---|
VPC | VpcV1 |
VPC Gen 1 | VpcClassicV1 |
Prerequisites
- An IBM Cloud account.
- An IAM API key to allow the SDK to access your account. Create one here.
- Python 3.5.3 or above.
Installation
To install, use pip
or easy_install
:
pip install --upgrade "ibm-vpc>=0.4.1"
or
easy_install --upgrade "ibm-vpc>=0.4.1"
Using the SDK
For general SDK usage information, please see this link
Setting up VPC service
from ibm_vpc import VpcV1
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator
from ibm_cloud_sdk_core import ApiException
authenticator = IAMAuthenticator("YOUR_IBMCLOUD_API_KEY")
service = VpcV1('2020-06-02', authenticator=authenticator)
# Listing VPCs
print("List VPCs")
try:
vpcs = service.list_vpcs().get_result()['vpcs']
except ApiException as e:
print("List VPC failed with status code " + str(e.code) + ": " + e.message)
for vpc in vpcs:
print(vpc['id'], "\t", vpc['name'])
# Listing Subnets
print("List Subnets")
try:
subnets = service.list_subnets().get_result()['subnets']
except ApiException as e:
print("List subnets failed with status code " + str(e.code) + ": " + e.message)
for subnet in subnets:
print(subnet['id'], "\t", subnet['name'])
# Listing Instances
print("List Instances")
try:
instances = service.list_instances().get_result()['instances']
except ApiException as e:
print("List instances failed with status code " + str(e.code) + ": " + e.message)
for instance in instances:
print(instance['id'], "\t", instance['name'])
instanceId = instances[0]['id']
instanceName = instances[0]['name']
# Updating Instance
print("Updated Instance")
try:
newInstanceName = instanceName + "-1"
instance = service.update_instance(
id=instanceId,
name=newInstanceName,
).get_result()
except ApiException as e:
print("Update instance failed with status code " + str(e.code) + ": " + e.message)
print(instance['id'], "\t", instance['name'])
Setting up VPC on Classic service
from ibm_vpc import VpcClassicV1
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator
from ibm_cloud_sdk_core import ApiException
authenticator = IAMAuthenticator("YOUR_IBMCLOUD_API_KEY")
service = VpcClassicV1('2020-06-02', authenticator=authenticator)
# Listing VPCs
print("List VPCs")
try:
vpcs = service.list_vpcs().get_result()['vpcs']
except ApiException as e:
print("List VPC failed with status code " + str(e.code) + ": " + e.message)
for vpc in vpcs:
print(vpc['id'], "\t", vpc['name'])
print("\n")
# Listing Subnets
print("List Subnets")
try:
subnets = service.list_subnets().get_result()['subnets']
except ApiException as e:
print("List subnets failed with status code " + str(e.code) + ": " + e.message)
for subnet in subnets:
print(subnet['id'], "\t", subnet['name'])
# Listing Instances
print("List Instances")
try:
instances = service.list_instances().get_result()['instances']
except ApiException as e:
print("List instances failed with status code " + str(e.code) + ": " + e.message)
for instance in instances:
print(instance['id'], "\t", instance['name'])
instanceId = instances[0]['id']
instanceName = instances[0]['name']
# Updating Instance
print("Updated Instance")
try:
newInstanceName = instanceName + "-1"
instance = service.update_instance(
id=instanceId,
name=newInstanceName,
).get_result()
except ApiException as e:
print("Update instance failed with status code " + str(e.code) + ": " + e.message)
print(instance['id'], "\t", instance['name'])
Questions
If you are having difficulties using this SDK or have a question about the IBM Cloud services, please ask a question Stack Overflow.
Issues
If you encounter an issue with the project, you are welcome to submit a bug report. Before that, please search for similar issues. It's possible that someone has already reported the problem.
Open source @ IBM
Find more open source projects on the IBM Github Page
Contributing
See CONTRIBUTING.
License
This SDK is released under the Apache 2.0 license. The license's full text can be found in LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ibm-vpc-0.4.1.tar.gz
.
File metadata
- Download URL: ibm-vpc-0.4.1.tar.gz
- Upload date:
- Size: 288.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.5.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee7d9a1693e8967010bbdf08a78b8b0f7ce68cf7cf33d862e3bfe31f2fa6dbff |
|
MD5 | 1afb821d2dda6c73834b46f114c41c04 |
|
BLAKE2b-256 | aa8645e4b327230db5a7fdfb39c9d7c54d021df55701ede4c77b7702878e866e |