Ansible VM:TypeError:\uyu init_u9()至少接受3个参数(给定2个)

2024-10-01 00:31:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我在学习虚拟机和其他一些东西,我试图配置一个需要文件.py对于这台机器的完全正确配置(根据我正在学习的书),但是当我尝试使用命令python do_api_v1.py时,输出显示:

**Traceback (most recent call last):

File "do_api_v1.py", line 12, in do = DoManager(token) TypeError: init() takes at least 3 arguments (2 given) **

文件do\u api_v1.py如下所示:

"""
dependencias: 
    sudo pip install dopy pyopenssl ndg-httpsclient pyasn1
"""

import os
from dopy.manager import DoManager
import urllib3.contrib.pyopenssl
urllib3.contrib.pyopenssl.inject_into_urllib3()


api_version = os.getenv("DO_API_VERSION")
api_token=os.getenv("DO_API_

do = DoManager(None, 'api_token', 'api_version')

keys = do.all_ssh_keys()
print "ssh key nametid"
for key in keys:
    print "%s\t%d" % (key["name"], key["id"])

print "Image name\tid"
imgs = do.all_images()
for img in imgs:
    if img["slug"] == "ubuntu-14-04-x64":
        print "%s\t%d" % (img["name"], img["id"])

print "Region name\tid"
regions = do.all_regions()
for region in regions:
    if region["slug"] == "nyc2":
        print "%s\t%d" % (region["slug"], region["id"])

print "Size name\tid"
sizes = do.sizes()
for size in sizes:
    if size["slug"] == "512mb":
        print "%s\t%d" % (size["slug"], size["id"])

Tags: keynameinpyapiidimgfor
2条回答

{a1告诉你传递参数是不够的。您需要传递一个强制性的client_id作为第一个参数,而一个{}作为第二个参数。在

域管理器需要更多参数。在

docs

对于API的V1:

# export DO_CLIENT_ID='client_id'
# export DO_API_KEY='long_api_key'
>>> from dopy.manager import DoManager
>>> do = DoManager('client_id', 'long_api_key')

对于V2:

^{pr2}$

两个版本都要求您提供API密钥,但V2不再需要客户端ID。在

相关问题 更多 >