gpt4 book ai didi

javascript - 如何根据 firebase cli 别名分离部署构建

转载 作者:行者123 更新时间:2023-11-30 14:09:41 28 4
gpt4 key购买 nike

我试图在使用开发版本和公共(public)版本时分离部署版本。

我的 .firebaserc 是这样设置的:

{
"projects": {
"dev": "PROJECTNAME-development",
"public": "PROJECTNAME-public"
}
}

在我的一个函数中,我必须引用存储桶:

const bucket = storage.bucket('PROJECTNAME-public.appspot.com')

目前,我必须在切换之前更改名称

我希望这样当我部署到开发时,我可以部署到我的开发项目...像这样:

let bucket
if (currentAlias === public) {
bucket = storage.bucket('PROJECTNAME-public.appspot.com');
} else {
bucket = storage.bucket('PROJECTNAME-development.appspot.com');
}

我似乎无法在文档中找到任何允许我执行此类操作的内容。

最佳答案

听起来您只是想访问项目的默认存储桶。

如果您使用的是 Firebase Admin SDK,只需在没有参数的情况下对其进行初始化,它就会自动从环境中获取默认存储桶的名称。

const admin = require('firebase-admin');
admin.initializeApp();
const bucket = admin.storage().bucket();

如果您使用的是 Cloud Storage 节点 SDK,则可以手动从环境中提取存储桶的名称:

const config = JSON.parse(process.env.FIREBASE_CONFIG)
const bucketName = config.storageBucket
const bucket = new Storage().bucket(bucketName) // version 2.x of the SDK

如果您需要访问每个项目的一些其他值,您应该使用 Firebase environment variables在部署时由 CLI 配置,并在运行时使用 SDK 读取它们。

关于javascript - 如何根据 firebase cli 别名分离部署构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54710173/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com