Skip to content

feat: VHS annotation tool #441

feat: VHS annotation tool

feat: VHS annotation tool #441

Workflow file for this run

name: CI-PR
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
on:
pull_request:
types: [opened, synchronize, reopened]
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4
# Setup node environment
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: "22"
# Install node modules
- name: Install node modules
run: |
npm ci
# Generate docs
- name: Generate docs
run: |
npm run docs:build
# Generate Build
- name: Generate build
run: |
npm run build
# Check Prettier
- name: Check Prettier
run: |
npm run format:check
- name: Install mochawesome-merge
run: npm install --no-save mochawesome-merge
- name: Run Cypress tests
run: npm run cypress:run
- name: Combine test reports
run: node .github/scripts/combine-reports.js
- name: Generate Cypress summary
run: node .github/scripts/cypress-summary.js report/json/result.json
- name: Upload Cypress reports artifact
uses: actions/upload-artifact@v4
with:
name: cypress-test-reports
path: |
report/json/result.json
cypress-summary.md
- name: Find Comment
uses: peter-evans/find-comment@v2
id: find-comment
with:
issue-number: ${{ github.event.pull_request.number }}
comment-author: 'github-actions[bot]'
body-includes: "## 🔍 Cypress Test Results"
- name: Create or update comment
if: github.event.pull_request.head.repo.full_name == github.repository
uses: peter-evans/create-or-update-comment@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
issue-number: ${{ github.event.pull_request.number }}
comment-id: ${{ steps.find-comment.outputs.comment-id }}
body-path: cypress-summary.md
edit-mode: replace
- name: Run type coverage (txt + json)
run: npm run coverage
- name: Upload type coverage artifacts
uses: actions/upload-artifact@v4
with:
name: type-coverage
path: |
typecov.txt
typecov.json
coverage-summary.md
- name: Find Coverage Comment
uses: peter-evans/find-comment@v2
id: find-coverage-comment
with:
issue-number: ${{ github.event.pull_request.number }}
comment-author: 'github-actions[bot]'
body-includes: "<!-- type-coverage-report -->"
- name: Create or update PR comment with coverage
if: github.event.pull_request.head.repo.full_name == github.repository
uses: peter-evans/create-or-update-comment@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
issue-number: ${{ github.event.pull_request.number }}
comment-id: ${{ steps.find-coverage-comment.outputs.comment-id }}
body-path: coverage-summary.md
edit-mode: replace