name: Test on: workflow_dispatch: pull_request: push: branches: [main] concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true env: MISE_TRUSTED_CONFIG_PATHS: ${{ github.workspace }}/.mise/config.toml jobs: test: name: Test runs-on: ubuntu-latest defaults: run: working-directory: ./frontend steps: - name: Checkout code uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - id: token uses: immich-app/devtools/actions/create-workflow-token@df46d635b905e618b88fc4c95baa920aeb30b309 # create-workflow-token-action-v3.0.1 with: client-id: ${{ secrets.PUSH_O_MATIC_APP_CLIENT_ID }} private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }} permission-contents: read - name: Setup Mise uses: immich-app/devtools/actions/use-mise@06a9ef925332c91be647d6256642b86b398592c8 # use-mise-action-v3.2.1 with: github_token: ${{ steps.token.outputs.token }} - name: Run npm install run: npm ci - name: Run linter run: npm run lint if: ${{ !cancelled() }} - name: Run formatter run: npm run format if: ${{ !cancelled() }} - name: Run tsc run: npm run check if: ${{ !cancelled() }} - name: Run unit tests run: npm test if: ${{ !cancelled() }}