朋友们。我正在尝试在 Github Actions 的帮助下部署 Firebase Dataconnect。我不断收到以下错误:
Mobile SDK API 之前未在项目 989370034304 中使用过或被禁用。通过访问 https://console.developers.google.com/apis/api/mobilesdk-pa.googleapis.com/overview?project= 启用它,然后重试。如果您最近启用了此 API,请等待几分钟,以便该操作传播到我们的系统,然后重试。
当我访问错误中的 URL 时,API 似乎不存在。
这是我正在使用的 Github 操作代码:
name: Staging – Build and Deploy
on:
push:
branches:
- main
workflow_dispatch:
env:
NODE_CONFIG_ENV: staging
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Switch to Node@18
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Switch to Java@22
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '22'
- name: Install Dependencies
run: npm install
- run: node --version
- run: npm --version
- run: java --version
- name: Deploy to Firebase
uses: w9jds/setup-firebase@main
with:
tools-version: 13.22.0
gcp_sa_key: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_LISAPET_AI_QA }}
- run: firebase --debug deploy --only storage --project lisapet-ai-qa
- run: firebase --debug deploy --only functions --project lisapet-ai-qa
- run: firebase --debug deploy --only dataconnect --project lisapet-ai-qa
有关信息:我能够在本地计算机上使用 VC 代码扩展和 Firebase CI 成功将 dataconnect 部署到生产环境。
我将此作为一个问题发布,以便其他人可以从我找到的解决方法中受益
这是我已经尝试解决问题的方法:
由于GCP服务帐户身份验证的用户,它不起作用。切换到 Firebase CI 令牌将解决该问题。
firebase login:ci
name: Prod – Build and Deploy
on:
push:
branches:
- release
workflow_dispatch:
env:
NODE_CONFIG_ENV: production
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Switch to Node@18
uses: actions/setup-node@v3
with:
node-version: '18'
- name: Install Dependencies
run: npm install
- run: node --version
- run: npm --version
- name: Deploy to Firebase
uses: w9jds/setup-firebase@main
with:
tools-version: 13.22.0
firebase_token: ${{ secrets.FIREBASE_TOKEN }}
#gcp_sa_key: ${{ secrets.FIREBASE_SERVICE_ACCOUNT_PROJECT_ID }} # Providing GCP Service Account Key does not work right now
- run: firebase --debug deploy --only storage --project project-id
- run: firebase --debug deploy --only functions --project project-id
- run: firebase --debug deploy --only dataconnect --project project-id