ibmcloud python sdk
v1.1.3
ibmcloud-python-sdk旨在与IBM Cloud交谈。为此,它需要一个配置文件。 ibmcloud-python-sdk有利于clouds.yaml文件,但也可以使用环境变量(见下文) 。一个例子:
---
clouds :
default : demo-acc
demo-acc :
profile : demo
description : Credentials from my IBM Cloud demo account
key : XxX1234567890XxX
region : us-south
version : 2021-06-15
generation : 2
cis_username : [email protected]
cis_apikey : abc123def456ghi789klm0n
prod-acc :
profile : prod
description : Credentials from my IBM Cloud production account
key : zZz1234567890zZz
region : us-south
version : 2021-06-15
generation : 2
cis_username : [email protected]
cis_apikey : @@abc123def456ghi789klm0n@@ clouds.yaml文件将首先搜索到~/.ibmcloud目录中,但是这种行为可以被环境变量所覆盖。
| 多变的 | 描述 | 例子 | 强制的 |
|---|---|---|---|
IC_CONFIG_FILE | clouds.yaml文件 | ~/vault/ibm.yaml | [] |
IC_CONFIG_NAME | 默认云配置的名称 | demo | [] |
IC_REGION | 区域要连接 | us-south | [x] |
IC_VERSION | 请求API的版本 | 2021-06-15 | [x] |
IC_GENERATION | 请求的基础设施生成 | 2 | [x] |
IC_SDK_CONFIG_FILE | sdk.yaml文件的绝对路径 | ~/.config/ibmcloud/sdk.yaml | [] |
IC_API_KEY | 通过IBM Cloud IAM系统创建的API密钥 | XxX1234567890XxX | [x] |
SL_USERNAME | SoftLayer用户 | goldyfruit | [] |
SL_API_KEY | SoftLayer API键 | abc123def456ghi789klm0n | [] |
IBM Cloud Python SDK的文档可在此处找到。
IBM Cloud Python SDK利用现有的Python SDK,例如:
该SDK仅支持VPC Gen 2。
| 服务 | 特征 |
|---|---|
| 顺式 | Baremetal,对象存储 |
| DNS | 公共区域,私人区域 |
| Em | 获取帐户,获取企业 |
| 我是 | 政策,角色 |
| 力量 | 电力系统 |
| 资源 | 绑定,组,实例,密钥 |
| VPC | ACL,FIP,网关,地理,图像,实例,键,负载平衡器,安全性,子网,音量,VPC,VPN |
从PIPI通过pip安装:
python -m venv ~ /virtualenvs/ibmcloud-python-sdk
source ~ /virtualenvs/ibmcloud-python-sdk/bin/activate
pip install ibmcloud-python-sdk或者您可以从源安装:
cd ~ /Git
git clone https://github.com/goldyfruit/ibmcloud-python-sdk.git
python -m venv ~ /virtualenvs/ibmcloud-python-sdk
source ~ /virtualenvs/ibmcloud-python-sdk/bin/activate
cd ~ /Git/ibmcloud-python-sdk
pip install .我们建议使用Python虚拟环境安装SDK。
SDK具有缓存功能(仅暂时仅memcached )以提高HTTP请求速度。要启用此Mechanisim,请使用~/.ibmcloud/sdk.yaml文件正确配置SDK。
---
sdk :
cache_ttl : 60
memcached :
- 127.0.0.1:11211也可以配置Muttiple缓存服务器。
---
sdk :
cache_ttl : 60
memcached :
- 127.0.0.1:11211
- 127.0.0.1:11212
- 127.0.0.1:11213部署memcached服务器的一种简单方法是使用容器。
podman run -dt -p 11211:11211 --name memcached -d memcachedsudo docker run -dt -p 11211:11211 --name memcached -d memcached可以在此处找到有关如何使用此SDK的示例列表。
from ibmcloud_python_sdk . vpc import vpc as ic
vpc = ic . Vpc ()
vpc . get_vpc ( "ibmcloud-vpc-baby" ) from ibmcloud_python_sdk . vpc import vpc as icv
from ibmcloud_python_sdk . resource import resource_group as icr
import sys
# Variables
vpc_name = 'ibmcloud-vpc-baby'
resource_group_name = 'ibmcloud-resource-group-baby'
# Intentiate classes
vpc = icv . Vpc ()
rg = icr . ResourceGroup ()
# Retrieve resource group ID and check for error
resource_group_info = rg . get_resource_group ( resource_group_name )
if 'errors' in resource_group_info :
print ( resource_group_info [ 'errors' ])
sys . exit ()
# Create the VPC based on variable and resource group ID
response = vpc . create_vpc (
name = vpc_name ,
resource_group = resource_group_info [ 'id' ],
address_prefix_management = 'auto' ,
classic_access = True
)
# Check for error during the VPC creation process
if 'errors' in response :
print ( response [ 'errors' ])
else :
print ( response )CRN或HREF不能用作检索资源的IDPATCH方法(更新)尚未支持,这意味着无法更新资源有关更多信息,请参见捆绑的许可证文件。