Skip to content

Commit 3caa638

Browse files
authored
Add support for Provisioning API
1 parent 3334396 commit 3caa638

File tree

3 files changed

+29
-1
lines changed

3 files changed

+29
-1
lines changed

cloudinary_cli/core/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from cloudinary_cli.core.config import config
55
from cloudinary_cli.core.search import search
66
from cloudinary_cli.core.uploader import uploader
7+
from cloudinary_cli.core.provisioning import provisioning
78
from cloudinary_cli.core.utils import url, utils
89
from cloudinary_cli.core.overrides import resolve_command
910

@@ -14,6 +15,7 @@
1415
search,
1516
admin,
1617
uploader,
18+
provisioning,
1719
url,
1820
utils
1921
]
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
from click import command, argument, option
2+
import cloudinary.provisioning
3+
4+
from cloudinary_cli.utils.api_utils import handle_api_command
5+
6+
7+
@command("provisioning",
8+
short_help="Run any methods that can be called through the provisioning API.",
9+
help="""\b
10+
Run any methods that can be called through the provisioning API.
11+
Format: cld <cli options> provisioning <command options> <method> <method parameters>
12+
\te.g. cld provisioning sub_accounts
13+
""")
14+
@argument("params", nargs=-1)
15+
@option("-o", "--optional_parameter", multiple=True, nargs=2, help="Pass optional parameters as raw strings.")
16+
@option("-O", "--optional_parameter_parsed", multiple=True, nargs=2,
17+
help="Pass optional parameters as interpreted strings.")
18+
@option("-ls", "--ls", is_flag=True, help="List all available methods in the Provisioning API.")
19+
@option("--save", nargs=1, help="Save output to a file.")
20+
@option("-d", "--doc", is_flag=True, help="Open the Provisioning API reference in a browser.")
21+
def provisioning(params, optional_parameter, optional_parameter_parsed, ls, save, doc):
22+
return handle_api_command(params, optional_parameter, optional_parameter_parsed, ls, save, doc,
23+
doc_url="https://cloudinary.com/documentation/provisioning_api",
24+
api_instance=cloudinary.provisioning,
25+
api_name="provisioning")

cloudinary_cli/utils/utils.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313

1414
from cloudinary_cli.defaults import logger, TEMPLATE_FOLDER
1515

16-
not_callable = ('is_appengine_sandbox', 'call_tags_api', 'call_context_api', 'call_cacheable_api', 'call_api', 'text')
16+
not_callable = ('is_appengine_sandbox', 'call_tags_api', 'call_context_api', 'call_cacheable_api', 'call_api', 'text',
17+
'account_config', 'reset_config')
1718

1819
BLOCK_SIZE = 65536
1920

0 commit comments

Comments
 (0)