name: unit-tests on: pull_request: branches: - 'dev*' - 'releases/v*' push: branches: - dev tags-ignore: - '*.*' jobs: unit-tests: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - uses: actions/setup-node@v1.4.4 with: node-version: 'v12.18.4' registry-url: 'https://registry.npmjs.org' - name: Install Yarn run: npm install -g yarn - name: Install and Test run: | yarn install yarn lint yarn test - name: Uploade CodeCov Report uses: codecov/codecov-action@v1 with: token: ${{ secrets.CODECOV_TOKEN }} build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 - uses: actions/setup-node@v1.4.4 with: node-version: 'v12.18.4' registry-url: 'https://registry.npmjs.org' - name: Install Yarn run: npm install -g yarn - name: Build lib run: | yarn install yarn build - name: Rebuild production node_modules run: | yarn install --production ls node_modules - name: artifact uses: actions/upload-artifact@v2 with: name: dist path: | lib node_modules integration: runs-on: ubuntu-latest needs: build strategy: matrix: branch: ["gh-pages", "no-pages"] commit: ["singleCommit", "add commits"] steps: - name: Checkout uses: actions/checkout@v2 with: persist-credentials: false - uses: actions/setup-node@v1.4.4 with: node-version: 'v12.18.4' registry-url: 'https://registry.npmjs.org' - name: Download artifact uses: actions/download-artifact@v2 with: name: dist - name: Deploy uses: ./ with: FOLDER: integration BRANCH: ${{ matrix.branch }} SINGLE_COMMIT: ${{ matrix.commit == 'singleCommit' }} DRY_RUN: true - name: Tweak content to publish to existing branch if: ${{ matrix.branch == 'gh-pages' }} run: | echo "" >> integration/index.html - name: Deploy with modifications to existing branch uses: ./ if: ${{ matrix.branch == 'gh-pages' }} with: FOLDER: integration BRANCH: ${{ matrix.branch }} SINGLE_COMMIT: ${{ matrix.commit == 'singleCommit' }} DRY_RUN: true