0

我继承了 Heroku 上托管的一个使用评论应用程序的应用程序。直到我接管系统的前一天,审查应用程序工作得非常好,拉入分支,构建它,然后使用postdeploy命令从登台服务器拉入数据库备份。

然后我开始了,突然之间,它不工作了。我不知道这是否与我所做的事情有关(目前很少),或者可能是实际的权限问题(我已经被设置为所有事情的管理员,尽管其他开发人员,这是以前为谁工作的,也无法完成它)但是拉入数据库的最后一步失败了:

在此处输入图像描述

在此处输入图像描述

我完全不知道这里出了什么问题。

下面是app.json正在使用的文件,并且$HEROKU_DATABASE_RESTORE设置为clixifix-staging-eu::b530(即登台服务器::备份文件)。

{
  "buildpacks": [
    { "url": "heroku/nodejs" },
    { "url": "heroku/ruby" },
    { "url": "heroku-community/nginx" }
  ],

  "environments": {
    "review": {
      "addons": [
        {
          "plan": "heroku-postgresql:hobby-basic",
          "options": {
            "version": "9.6"
          }
        },

        { "plan": "memcachedcloud:30" },
        { "plan": "mailtrap:unpaid" }
      ],

      "buildpacks": [
        { "url": "heroku/nodejs" },
        { "url": "heroku/ruby" },
        { "url": "heroku-community/nginx" },
        { "url": "heroku-community/cli" }
      ],

      "env": {
        "SECRET_KEY_BASE": {
          "generator": "secret"
        }
      },

      "formation": {
        "web": {
          "quantity": 1,
          "size": "hobby"
        },

        "generalworker": {
          "quantity": 1,
          "size": "hobby"
        },

        "reportworker": {
          "quantity": 1,
          "size": "hobby"
        }
      },

      "scripts": {
        "postdeploy": "heroku pg:backups:restore $HEROKU_DATABASE_RESTORE DATABASE_URL -a $HEROKU_APP_NAME --confirm $HEROKU_APP_NAME"
      }
    }
  }
}
4

1 回答 1

0

我联系了 Heroku,他给了我所需的答案:

postdeploy中的错误最有可能的问题是运行:

heroku pg:backups:restore $HEROKU_DATABASE_RESTORE DATABASE_URL -a $HEROKU_APP_NAME --confirm $HEROKU_APP_NAME

您需要将平台 API 密钥与您的管道审查应用程序配置变量一起存储在某处,以便 CLI 可以登录。此 API 密钥所属的用户很可能失去对您团队的访问权限,并且无权访问您的审查应用程序. heroku authorizations:create您应该使用并在管道上更新它来生成新的 API 密钥。

基本上,当老家伙离开时,他的权限被撤销,导致错误。我使用上面的命令生成了一个新密钥,将令牌设置为HEROKU_API_KEY审查应用程序设置中的 envars 中的值,并且它起作用了。

于 2021-02-18T10:45:25.027 回答