我正试图让我的自动备份脚本工作。我用的是英雄宝石。脚本正在从Heroku的Scheduler插件中运行。
require "heroku/command/pg"
require "heroku/command/pg_backups"
....
def initialize
@client = Heroku::Command::Pg.new([], app: ENV['APP_NAME'])
end
...
attachment = @client.send(:generate_resolver)
...
只要我调用attachment = @client.send(:generate_resolver)
,脚本就会停止执行并请求
Enter your Heroku credentials.
Email:
是否有办法避免这种情况,因为任务无论如何都是从heroku内部发起的,因此应该已经进行了身份验证。
任何帮助都非常感谢
对于非交互式登录,您需要使用API密钥,Heroku将从HEROKU_API_KEY
环境变量中读取该密钥。您可以使用heroku auth:token
命令从登录的CLI中获取您的帐户密钥。
没有办法仅仅因为你已经在Heroku中运行而避免身份验证。这将对应用程序间的安全产生重大影响。
也可以查看pgbackups-archive。看起来它可以满足您的要求,或者至少可以为您提供一些有用的技术。