Skip to content

feat: add Cypress setup action with caching support for CI workflows#177

Merged
kb-typeform merged 6 commits intomainfrom
PLT-2912-add-cypress-support-for-workflows
Feb 4, 2026
Merged

feat: add Cypress setup action with caching support for CI workflows#177
kb-typeform merged 6 commits intomainfrom
PLT-2912-add-cypress-support-for-workflows

Conversation

@kb-typeform
Copy link
Contributor

@kb-typeform kb-typeform commented Feb 3, 2026

Summary

Adds comprehensive Cypress support to the frontend PR workflow with a new reusable setup action that provides binary caching to speed up CI runs.

Changes

New Shared Action: setup-cypress

Created a new reusable action (shared-actions/setup-cypress) that:

  • Automatic version detection from node_modules or package.json
  • Intelligent caching of Cypress binary with version-specific cache keys
  • Fallback cache restoration for faster setup across versions
  • Installation verification to ensure Cypress is ready for tests

Cypress Integration in Frontend PR Workflow

Enhanced frontend-pr-workflow.yml with two new optional jobs:

Job 8: Cypress Functional Tests (cypress-functional)

  • Configurable test command, server start command, and wait-on URL
  • Uses new setup-cypress action for optimized binary installation
  • Uploads screenshots and videos as artifacts
  • Supports Cypress Cloud recording via CYPRESS_RECORD_KEY

Job 9: Cypress Visual Regression Tests (cypress-visual)

  • Dedicated job for visual regression testing
  • Integration with VRT service (API URL, key, project)
  • Tracks branch and commit info for visual diffs
  • Separate artifact uploads for visual test results

⚙️ New Configuration Options

Cypress-specific inputs:

  • run-cypress-functional / run-cypress-visual - Enable/disable test types
  • cypress-functional-command / cypress-visual-command - Test commands
  • cypress-functional-start / cypress-visual-start - Server start commands
  • cypress-functional-wait-on / cypress-visual-wait-on - URLs to wait for
  • cypress-runner - Dedicated runner (defaults to e2e-runner)
  • cypress-timeout - Test timeout in minutes (default: 20)

New secrets:

  • CYPRESS_RECORD_KEY - For Cypress Cloud recording
  • VRT_APIURL, VRT_APIKEY, VRT_PROJECT - For visual regression service

Benefits

  • Faster CI runs: Binary caching saves time per workflow
  • 🔄 Backward compatible: All new inputs are optional with sensible defaults
  • 🧪 Flexible testing: Separate functional and visual test jobs
  • 📦 Reusable: setup-cypress action can be used in any workflow

@kb-typeform kb-typeform marked this pull request as ready for review February 3, 2026 17:11
@kb-typeform kb-typeform requested a review from a team as a code owner February 3, 2026 17:11
@gitstream-cm
Copy link

gitstream-cm bot commented Feb 3, 2026

This PR is missing a Jira ticket reference in the title or description.
Please add a Jira ticket reference to the title or description of this PR.

@gitstream-cm
Copy link

gitstream-cm bot commented Feb 3, 2026

🥷 Code experts: no user but you matched threshold 10

kb-typeform has most 👩‍💻 activity in the files.
kb-typeform has most 🧠 knowledge in the files.

See details

.github/workflows/frontend-pr-workflow.yml

Activity based on git-commit:

kb-typeform
FEB
JAN
DEC 458 additions & 16 deletions
NOV
OCT
SEP

Knowledge based on git-blame:
kb-typeform: 100%

✨ Comment /gs review for LinearB AI review. Learn how to automate it here.

@kb-typeform kb-typeform merged commit 50200a0 into main Feb 4, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants