Skip to content

specify package.json #25

specify package.json

specify package.json #25

Workflow file for this run

name: Pull request
# Controls when the action will run.
on:
pull_request:
# Global environment variables
env:
CI: true
# Jobs
jobs:
# # Validate PR title
# !todo discuss this job step is this overkill?
# validate_pr_title:
# runs-on: ubuntu-latest
# steps:
# - uses: amannn/action-semantic-pull-request@v5
# id: lint_pr_title
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# - uses: marocchino/sticky-pull-request-comment@v2
# if: always() && (steps.lint_pr_title.outputs.error_message != null)
# with:
# header: pr-title-lint-error
# message: |
# Hey there and thank you for opening this pull request! 👋🏼
# We require pull request titles to follow the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/) and it looks like your proposed title needs to be adjusted.
# Details:
# ```
# ${{ steps.lint_pr_title.outputs.error_message }}
# ```
# - if: ${{ steps.lint_pr_title.outputs.error_message == null }}
# uses: marocchino/sticky-pull-request-comment@v2
# with:
# header: pr-title-lint-error
# delete: true
# Set up tests
set_up:
name: Set up
runs-on: ubuntu-latest
# needs: [validate_pr_title]
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: Setup node
uses: actions/setup-node@v4
with:
node-version: 20
cache: "yarn"
cache-dependency-path: ${{github.workspace}}/frontend/package-lock.json
- run: yarn install --immutable
# Lint job
lint:
strategy:
fail-fast: true
name: Lint Files
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# The linter won't run on submodules
# with:
# submodules: recursive
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "yarn"
cache-dependency-path: ${{github.workspace}}/frontend/package-lock.json
- run: yarn install --frozen-lockfile
- name: Run lint
uses: ${{github.workspace}}/frontend/package.json
- run: yarn lint
id: lint
# Tests
tests:
name: Tests
runs-on: ubuntu-latest
needs: [set_up]
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: Setup node
uses: actions/setup-node@v4
with:
node-version: 20
cache: "yarn"
cache-dependency-path: ${{github.workspace}}/frontend/package-lock.json
- run: yarn install --immutable
- name: Tests
uses: "./frontend/package.json"
- run: yarn test