diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml index 28380df..e8e84b1 100644 --- a/.github/workflows/master.yml +++ b/.github/workflows/master.yml @@ -1,39 +1,53 @@ -name: Firebase Deployment +# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions + +name: Firebase CI + on: push: - branches: - - master + branches: [ master ] + pull_request: + branches: [ master ] + jobs: build: - name: Build + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [18.x] + # See supported Node.js release schedule at https://nodejs.org/en/about/releases/ + steps: - - name: Checkout Repo - uses: actions/checkout@v2.3.2 - - name: Install Dependencies - run: npm install - - name: Build - env: - CI: false - run: npm run build - - name: Archive Production Artifact - uses: actions/upload-artifact@v2 - with: - name: build - path: build + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: ${{ matrix.node-version }} + - run: npm install -g yarn + - name: yarn install, build and test + run: | + yarn install + yarn build + - name: Archive Build + uses: actions/upload-artifact@v2 + with: + name: build + path: build + deploy: name: Deploy needs: build runs-on: ubuntu-latest steps: - - name: Checkout Repo - uses: actions/checkout@v2.3.2 - - name: Download Artifact + - uses: actions/checkout@v2 + - name: Download Build uses: actions/download-artifact@v2 with: name: build path: build - - name: Deploy to Firebase + - name: Depoy to Firebase uses: w9jds/firebase-action@master with: args: deploy --only hosting