Seb*_*ees 5 google-cloud-storage firebase google-cloud-platform firebase-hosting
我有一个单页应用程序,我想在不同的 gcp 项目中托管它,即不同的 firebase 项目。
部署应该持续到我的 firebase 托管,我想分开持续构建和持续部署步骤,因此我不想从我的本地机器手动部署到我的所有 firebase 项目。
当我不想从本地机器部署时,是否有部署到 Firebase 托管项目的最佳实践?
以我天真的方式,我将设置以下内容:
我需要构建一个 zip 文件,其中包含所有静态 html 和 js 文件以及我上传到存储桶的 firebase.json 和 .firebaserc 文件。有了这些文件,firebaseCLI 工具就可以执行firebase deploy --only hosting:mytarget. 谷歌云构建器可以在 git push(例如来自 github.com)上运行这个命令,它知道我想要将单页应用程序部署到的所有 gcp 项目......
然而,这是很多工作,也许有一个更好的解决方案。我试图将 gs:// 链接直接放到 firebase.json 托管/公共部分,但是 firebase CLI 无法识别(它需要一个本地文件夹):-(
{
"hosting": [
{
"target": "mySPAApp",
"public" : "gs://mystorage-containing-files-for-hosting/",
"rewrites": [
{
"source": "apps/myapp/**",
"destination": "myapp/index.html"
}]
}
]
}
Run Code Online (Sandbox Code Playgroud)
我的直觉是,必须有一种更简单的方法,甚至可以使用gcloudCLI 将一堆文件部署到 Firebase 托管。在 firebase 内部,功能应该与此类似,因为在 firebase 控制台中,用户可以简单地回滚到托管应用程序的先前版本,但似乎没有关于此的文档。
好吧,我发现 Firebase 托管有一个官方的 REST API,使用起来有点麻烦。 https://firebase.google.com/docs/hosting/reference/rest/v1beta1/sites.versions/create 配置的格式与 firestore.json 中通常提供的格式不同,并且需要在 a 中上传文件在创建发布之前,版本中的状态机方式。
在我看来,这仍然不是一个可以选择的解决方案。
| 归档时间: |
|
| 查看次数: |
304 次 |
| 最近记录: |