带有Firebase Admin SDK的GitLab CI / CD

时间:2019-04-13 16:48:20

标签: firebase gitlab gitlab-ci-runner firebase-admin

想与Git Lab运行程序自动部署Firebase Functions。 Firebase Admin SKD私钥文件出现问题

本地环境包含admin.json文件 由于这个原因,该文件将保留在GitLab(admin.json)之外 我创建了一个包含admin.json对象的GitLab运行器环境变量。

admin.json == gitlab环境变量admin_token

我尝试使用

cat >> admin.json << 'END' $admin_token END

创建一个临时admin.json文件 // admin_token是GitLab上的环境变量

mage: node:10.11.0 # can be upgraded, depending on your node version used

stages:
    - build
    - deploy

cache:
  paths:
    - project/node_modules/
    - /x/functions/node_modules/

build:
    stage: build
    script:
        - echo "Build"
        - cd project
        - npm i
        - CI=false npm run build

    artifacts:
        paths:
            - ./project/build
            - ./project/firebase.json
            - ./project/.firebaserc
            - ./project/functions
    only:
        - Production

deploy:
    stage: deploy
    environment: production
    script:
        - echo "Deploy"
        - cd ref_project
        - cd functions
        - cat >> admin.json << 'END'
        - $admin_token
        - END
        - cat admin.json
        - npm i
        - npm -g config set user root
        - npm i -g  firebase-tools
        - firebase use project-xxxxx --token $FIREBASE_TOKEN
        - firebase deploy --token $FIREBASE_TOKEN  
    only:
        - Production

0 个答案:

没有答案