bash - 自动化 Heroku CLI 登录

标签 bash heroku command-line-interface

我正在开发一个 bash 脚本来自动克隆开发虚拟机中的一些项目和另一项任务,但我们在 Heroku 中有一个项目,存储库就在其中。在我的 .sh 文件中,我有:

> heroku login

这个提示输入凭据,我阅读了二进制文件和文档中包含的“帮助”指南,但我找不到任何自动插入用户名和密码的内容,我想要这样的东西:

> heroku login -u someUser -p mySecurePassword

存在类似的方式吗?

最佳答案

Heroku CLI only uses your username and password to retrieve your API key ,它stores in your ~/.netrc file (在 Windows 上为 $HOME\_netrc)。

您可以手动检索您的 API key 并将其添加到您的 ~/.netrc文件:

  1. 登录到 Heroku 网络界面
  2. 导航到您的帐户设置页面
  3. 向下滚动到 API Key 部分并点击 Reveal 按钮
  4. 复制您的 API key
  5. 打开您的 ~/.netrc使用您最喜欢的文本编辑器归档或创建它
  6. 添加以下内容:

    machine api.heroku.com
      login <your-email@address>
      password <your-api-key>
    machine git.heroku.com
      login <your-email@address>
      password <your-api-key>
    

    替换<your-email@address>使用在 Heroku 注册的电子邮件地址,以及 <your-api-key>使用您从 Heroku 复制的 API key 。

这应该手动完成什么 heroku login自动执行。 但是,我不推荐这样做。 正在运行 heroku login做同样的事情更容易,犯错的机会更少。

如果您决定复制 ~/.netrc机器或帐户之间的文件,您应该注意两个主要警告:

如果您打算使用 heroku login 以外的任何机制登录 Heroku,请务必小心。 .

关于bash - 自动化 Heroku CLI 登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46290445/

相关文章:

bash - 如何将一个文件的头部与第二个文件的末尾与 shell 结合起来?

api - 在 Heroku 上,使用 Node.js 是否可以避免对第三方 API 调用的队列和 worker dynos 的需求?

events - CLI Dart : onPause, onResume,onDone 未按预期启动

PHP 代码在 PHP CLI 中不起作用

BASH 重新排列文件中的日期

macos - 递归地将所有文件移动到一个文件夹,保留最大的文件

bash - 为什么从文件中获取标准输入与通过管道接收标准输入不同?

ssl - 新的 Google 域无法连接到 Heroku

heroku - 为什么我的 heroku 应用程序不使用安全连接

tabs - 从命令行在新选项卡中打开 URL