【问题标题】:how can i use python to deploy proxies from the command line我如何使用 python 从命令行部署代理
【发布时间】:2014-03-05 09:40:13
【问题描述】:

使用 Python 部署会报错:

我使用 Python 代码(它是您的 deploy.py)将我们的代理(我们的公司代理)部署到 apigee 平台。我读了http://apigee.com/docs/api-services/content/deploying-proxies-command-line

但是当我运行 "python api-platform-samples-master/tools/deploy.py -n apikey -u "yusuf.karatoprak@mobgen.com:Welcome@2014" -o yusufkaratoprak123 -e test - 时它会抛出错误p / -d 样本代理"

我想解决这种情况。我添加到 python 代码它不起作用。它向我抛出错误:未定义名称“ZipFile”

【问题讨论】:

  • 您期待什么?你试过编辑吗?抛出错误的代码是什么?您使用哪个 Python 版本以及需要哪个版本?运行这个命令的前提条件是什么,它们都满足了吗?请编辑问题而不是发表评论。
  • 我想解决这个问题。我添加到 python 代码它不起作用。它向我抛出错误:NameError: name 'ZipFile' is not defined
  • 您是否为 ZipFile 导入了模块?
  • 为什么需要 zipfile?我有文件
  • 你不需要它。代码需要名为 ZipFile 的变量中的某些内容。我最好的猜测是,这是标准库中存在的同名类。您可以满足获取此类的代码的饥饿感,也可以编辑代码使其不使用它。这应该可以消除错误。

标签: python linux deployment apigee


【解决方案1】:

-d 标志值需要指向包含您要部署的示例的 /apiproxy 目录的目录。 (在上面的命令中,您似乎指向 /sample-proxies,而不是 /sample-proxies/apikey

尝试使用部署脚本。每个示例代理目录中都有一个。如果要部署所有示例代理,还有一个脚本 /setup/deploy_all.sh。

确保在运行部署脚本之前更新 /setup/setenv.sh。

【讨论】:

  • 我不会部署我的所有文件
【解决方案2】:

错误在于您从命令行调用它的方式。您传入的参数之一中有一个空格,需要将其放在引号内。把-u yusuf karatoprak:123变成-u "yusuf karatoprak:123"

固定命令行调用:

python api-platform-samples-master/tools/deploy.py -n weatherapi -u "yusuf karatoprak:123" -o yk123 -e test -p / -d simpleProxy

【讨论】:

  • 谢谢,但它会抛出错误:导入失败,状态为 401
  • 已编辑:您是否修改了 XML 以指向您公司的服务? apigee.com/docs/app-services/content/…
  • 否;我有一点知识。你能帮我怎么做吗?
  • 我以前从未使用过该服务。看起来你应该简单地按照this page 上的所有步骤,再次运行你的命令,你应该可以启动并运行。
  • 我可以使用这种方法,但它会询问我密码和用户名。我需要一个命令行
猜你喜欢
  • 1970-01-01
  • 2019-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-05
  • 2019-04-27
  • 1970-01-01
  • 2019-03-14
相关资源
最近更新 更多