import { addCucumberPreprocessorPlugin } from "@badeball/cypress-cucumber-preprocessor"; import { createEsbuildPlugin } from "@badeball/cypress-cucumber-preprocessor/esbuild"; import createBundler from "@bahmutov/cypress-esbuild-preprocessor"; import { defineConfig } from "cypress"; // Disable GPU for headless/sandboxed environments where no GPU device is // available — same helper as apps/web's cypress.config.ts. function disableGpu(on: Cypress.PluginEvents) { on("before:browser:launch", (browser, launchOptions) => { if (browser.family === "chromium") { launchOptions.args.push("--disable-gpu", "--no-sandbox"); } return launchOptions; }); } export default defineConfig({ e2e: { baseUrl: "http://localhost:5174", specPattern: ["cypress/e2e/**/*.cy.ts", "cypress/e2e/**/*.feature"], async setupNodeEvents(on, config) { disableGpu(on); await addCucumberPreprocessorPlugin(on, config); on("file:preprocessor", createBundler({ plugins: [createEsbuildPlugin(config)] })); return config; }, }, });