【问题标题】:Firebase Managing Hosting with Multiple SitesFirebase 管理具有多个站点的托管
【发布时间】:2019-11-25 04:47:28
【问题描述】:

不幸的是,我在没有指定目标的情况下运行了firebase deploy --only hosting,并多次部署到错误的站点。我想知道是否可以在 VS Code 中配置调试选项卡以运行命令以确保我正在部署到正确的站点。

总的来说,我发现在 Firebase 中管理多个托管站点非常令人沮丧,因为您必须完全按照步骤添加所有目标。

有没有人找到让这个部门的生活变得更简单的窍门?

【问题讨论】:

  • 如果您正在寻找一般提示和技巧(这对于 Stack Overflow 来说有点宽泛),我建议您将其发布到 Reddit 等讨论论坛。 reddit.com/r/Firebase
  • 谢谢,我不知道有一个用于 firebase 的 reddit!

标签: firebase firebase-hosting firebase-cli firebase-tools


【解决方案1】:

您可以使用 Firebase predeploy and postdeploy hooks 实现此目的。在您的项目目录(包含“public/”、“functions/”等)中,编辑您的 firebase.json 以包含您的目标符合您期望的断言。

{
  "functions": {
    // ...
  },
  "hosting": {
    // ...
    "predeploy": [
      "node assertMatch.js \"$GCLOUD_PROJECT\" \"your-desired-project-id\"",
    ]
  }
}

assertMatch.js 只是一个简单的脚本,它比较第一个和第二个命令行参数,如果不匹配则返回非零退出代码。这可能会作为全局脚本安装在某处。

let argv = process.argv.slice(2);
let equal = argv[0] == argv[1];
if (equal) {
    console.log('Assertion passed.')
} else {
    console.log('Assertion failed. "' + argv[0] + '" does not match "' + argv[1] + '".');
}
process.exit(!equal);

【讨论】:

    猜你喜欢
    • 2019-12-10
    • 2011-05-02
    • 2019-02-08
    • 2019-12-01
    • 2017-01-15
    • 1970-01-01
    • 2016-10-31
    • 2012-02-11
    • 2012-05-10
    相关资源
    最近更新 更多