Creates an artifact to diff tests between local and pipeline #306
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# name: Build & Test | |
# on: push | |
# env: | |
# NODE_VERSION: 18.x | |
# jobs: | |
# test: | |
# runs-on: ubuntu-latest | |
# steps: | |
# - run: echo "Triggered by ${{ github.event_name }} event." | |
# - name: Check out repository code ${{ github.repository }} on ${{ github.ref }} | |
# uses: actions/checkout@v3 | |
# - name: Set up Node.js ${{ env.NODE_VERSION }} | |
# uses: actions/setup-node@v3 | |
# with: | |
# node-version: ${{ env.NODE_VERSION }} | |
# cache: 'npm' | |
# - name: Cache node modules | |
# uses: actions/cache@v3 | |
# with: | |
# path: node_modules | |
# key: ${{ runner.os }}-node-${{ hashFiles('**/yarn.lock') }} | |
# restore-keys: | | |
# ${{ runner.os }}-node- | |
# - name: Installing dependencies | |
# if: steps.cache.outputs.cache-hit != 'true' | |
# uses: borales/actions-yarn@v4 | |
# with: | |
# cmd: install --frozen-lockfile | |
# - name: Lint | |
# uses: borales/actions-yarn@v4 | |
# with: | |
# cmd: lint | |
# - name: Build | |
# uses: borales/actions-yarn@v4 | |
# with: | |
# cmd: build | |
# - name: Test | |
# uses: borales/actions-yarn@v4 | |
# with: | |
# cmd: test | |
name: Build & Test | |
on: push | |
env: | |
NODE_VERSION: 18.x | |
jobs: | |
setup: | |
runs-on: ubuntu-latest | |
steps: | |
- run: echo "Triggered by ${{ github.event_name }} event." | |
- name: Check out repository code ${{ github.repository }} on ${{ github.ref }} | |
uses: actions/checkout@v3 | |
- name: Set up Node.js ${{ env.NODE_VERSION }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ env.NODE_VERSION }} | |
cache: 'npm' | |
- name: Cache node modules | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: ${{ runner.os }}-node-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-node- | |
- name: Installing dependencies | |
if: steps.cache.outputs.cache-hit != 'true' | |
uses: borales/actions-yarn@v4 | |
with: | |
cmd: install --frozen-lockfile | |
- name: Lint | |
uses: borales/actions-yarn@v4 | |
with: | |
cmd: lint | |
build: | |
needs: setup | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository code ${{ github.repository }} on ${{ github.ref }} | |
uses: actions/checkout@v3 | |
- name: Restore node modules from cache | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: ${{ runner.os }}-node-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-node- | |
- name: Build | |
uses: borales/actions-yarn@v4 | |
with: | |
cmd: build | |
test: | |
needs: setup | |
runs-on: ubuntu-latest | |
steps: | |
- name: Check out repository code ${{ github.repository }} on ${{ github.ref }} | |
uses: actions/checkout@v3 | |
- name: Restore node modules from cache | |
uses: actions/cache@v3 | |
with: | |
path: node_modules | |
key: ${{ runner.os }}-node-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-node- | |
- name: Test and generate report | |
run: yarn test | |
# Note: Adjust the test command if needed to ensure it generates the desired output | |
- name: Upload test report | |
uses: actions/upload-artifact@v3 | |
with: | |
name: test-report | |
path: tests_pipeline.txt |