Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 验证heroku服务器上Rails应用程序运行的heroku命令_Ruby On Rails_Ruby On Rails 4_Heroku - Fatal编程技术网

Ruby on rails 验证heroku服务器上Rails应用程序运行的heroku命令

Ruby on rails 验证heroku服务器上Rails应用程序运行的heroku命令,ruby-on-rails,ruby-on-rails-4,heroku,Ruby On Rails,Ruby On Rails 4,Heroku,我正在编写一个脚本,用于定期转储数据库并将其上载到S3 我有一个方法调用,它利用Heroku gem,并在不同的时间间隔从rake任务中调用 def dump_database Rails.logger.info "Dumping database into temporary file." # Stamp the filename datestamp = Time.now.strftime("%d-%m-%Y_%H-%M-%S") # Drop it in the

我正在编写一个脚本,用于定期转储数据库并将其上载到S3

我有一个方法调用,它利用Heroku gem,并在不同的时间间隔从rake任务中调用

def dump_database
  Rails.logger.info "Dumping database into temporary file."

  # Stamp the filename
  datestamp = Time.now.strftime("%d-%m-%Y_%H-%M-%S")    

  # Drop it in the db/backups directory temporarily
  file_path = "#{Rails.root}/db/backups/APPNAME_#{Rails.env}_#{datestamp}_dump.sql.gz" 

  # Dump and zip the backup file
  sh "heroku pgbackups:capture --expire -a APPNAME-#{Rails.env}"
  sh "curl -o #{file_path} `heroku pgbackups:url -a APPNAME-#{Rails.env}` | gzip > #{file_path}" 

  return file_path
end
问题是当我打电话给

sh "heroku pgbackups:capture --expire -a APPNAME-#{Rails.env}"
Heroku要求向我提供进入终端的凭据(电子邮件/密码)


如果不输入凭据,就不能执行此操作吗?

将rsa密钥附加到heroku的帐户,然后使用它,那么它将不需要登录/密码pairsa?你能举个例子吗?如果我理解正确,这两个链接都是指从本地机器到heroku服务器使用heroku命令的情况,而不是当heroku上的应用程序本身使用heroku命令时