在使用令牌执行 CI 时,您能否提供火力基础功能



我的目标是在我的CI流程中提供Firebase函数,(然后运行e2e测试(。

所以在 dev 中我可以这样做,假设我已经登录了:

firebase serve --only functions --port=9000 --project=<project_id>

但是,在CI中我没有登录,因此我尝试这样做:

firebase serve --only functions --port=9000 --project=<project_id> --token=<firebase-ci-token>

但是这不起作用 - 这是不可能的吗?

更新

我现在正在尝试运行:

export FIREBASE_TOKEN=<firebase-token>

然后

firebase serve --only functions --port=9000 --project=eddystone-test-e4cd3

但它给了我一些错误(在Firebase调试.log中(:

TypeError: Cannot read property 'refresh_token' of undefined

下面是您可能需要的示例.gitlab-ci.yml。请注意,firebase login:ci生成的令牌是在每个 firebase 命令中指定的:

deploy:functions:staging:
    stage: deploy_functions
    environment: staging
    only:
        - staging
    when: manual
    script:
        - cd $APP_PATH/functions
        - npm install
        - cd ..
        - echo $ENVIRONMENT_STAGING >> $APP_PATH/src/environments/environment.staging.ts
        - firebase use staging --token "$FIREBASE_CI_AUTH_TOKEN"
        - firebase functions:config:set dev.authkey="$FIREBASE_CONFIG_DEV_AUTHKEY" --token "$FIREBASE_CI_AUTH_TOKEN"
        - firebase deploy --only functions --token "$FIREBASE_CI_AUTH_TOKEN" -P <project>

相关内容

  • 没有找到相关文章

最新更新