如何为Firebase设置多个环境

时间:2018-11-29 13:14:10

标签: firebase

对于我的项目,我使用暂存和生产环境。 angular.json中的fileReplacements属性用于更改文件:

^.*\b(seo)\b.*$

在环境之间切换。使用了firebaserc文件。

现在我需要针对每个环境使用不同的firebase配置文件(firebase.json和firebase.prod.json) 有可能做到吗?我以为要使用预部署脚本,但不知道如何

1 个答案:

答案 0 :(得分:3)

我已经使用单个.firebaserc文件完成了此操作。您可以添加要部署的不同目标。

firebase目标:应用目标名称资源名称

ref:[[https://firebase.google.com/docs/cli/targets && https://firebase.google.com/docs/cli/]

// firebase.json

"hosting": [
    {
    "target": "prod",
      "public": "dist/<folder_name>,
      "ignore": ["firebase.json", "**/.*", "**/node_modules/**"],
      "rewrites": [
        {
          "source": "**",
          "destination": "/index.html"
        }
      ]
    }
]

// .firebaserc文件 //示例:这里的“项目”就是您的目标

{
  "projects": {
    "default": "staging-project",
    "dev": "staging-project",
    "prod": "prod-project"
  },
  "targets": {
    "staging-project": {
      "hosting": {
        "stage": [
          "staging-project"
        ],
        "admin-stage": [
          "your-admin-stage"
        ],
        "admin-prod": [
          "your-admin-prod"
        ],
        "prod": [
          "prod-project"
        ]
      }
    }
  }
}

//在构建脚本中

firebase use dev
firebase deploy --only firestore:rules,hosting:stage,functions...