n8n/cypress.config.js

45 lines
1.1 KiB
JavaScript
Raw Normal View History

const fetch = require('node-fetch');
const { defineConfig } = require('cypress');
const BASE_URL = 'http://localhost:5678';
module.exports = defineConfig({
ci(editor): Run e2e tests in parallel and improve build caching (#5445) * WIP: Cypress parallel CI run test * Trigger action on branch push * Change build artifacts path * Make sure to checkout the repo for testing job * Use Cypress action for installing * Lock cypress action userd version * Skip node install step since we're using cypress node16 container * Let Cypress handle pnpm install * Use setup-node action for caching pnpm * Set CYPRESS_CACHE_FOLDER * Set CYPRESS_CACHE_FOLDER * Manually cache pnpm store * Dont fix pnpm version * Use caching action also in testing job * Zip packages dist before uploading the artifacts and change caching key * Use absolute build paths for zipping job * Use zip command in action * Use tar for zipping packages * Debuggin directory ls * Debugging caching of modules * Attempt to fix permissions issue * Porivde Cypress executable via `CYPRESS_RUN_BINARY` * Cache /github/home * Adjust caching keys * Debug: search for cypress exec * Debugging: List dirs * Use pnpm install action to install node_modules * Do not log /home/runner * Use node_modules/.bin Cypress binary * Use absolute path to nodue modules * Run Cypress via custom command * Try with patched cypress action * Revert logging * Manually specify cypress config file * Use absolute paths * Fix cypress config name * Debug print cypress config * Remove debugging, increase to 4 containers * Increase amount of containers * Add env-version matrix * Replace node14 with node18 in testing matrix * Remove debugging and add node 14 * Use just node14 * Use cypress:base and remove browser req * Give more general timeouts * Try with node16 * Change cache directive position * Replace zip artifact upload with cache * Cache full packages not just dist * Test with variable inputs * Add commit info message * Remove wrongly commited code * Allow WF API dispatch * Try Chrome browser again for comparison * Include Monaco in the build * Make e2e workflow re-usable * Comment out invalid reusable workflow args * Use electron and add node 14 run * Fix env arg * Provide custom ci-build-id * Refactor remaining e2e workflow to use reusable action * Remove single matrix directive * Refactor ci-pull-req * Make lint job dependant on test jobs * Disable debugging job * Make containers dynamic * Cleanup & install git for linting action * Use regular buntu image for PR linting * Debugging failing tests * Remove fixed spec name * Debug e2e env var * Do not use realkeypress which crashes electron runner * Debugging * chore: remove console * chore: remove console * test: remove node 14 tests * test: replace test branch with master * test: use tests in current branch * test: use relative path * chore: clean up * test: only trigger on approval * ci: update test PR * ci: use curr branch * ci: only run 14 on schedule, not for slack command * ci: only run test on approval * ci: clean up branch, rename step * ci: rename steps * ci: clean up cancel * ci: clean up env var * ci: set var * ci: use chromef * ci: use electron * chore: add console log * chore: add console log * ci: update to string * ci: set all env options * test: build * ci: fix step issue * Fix failing tests & upgrade to Cypress 12 * Allow WF dispatch of e2e reusable * Fix wrong naming in e2e-tests workflow * Redeploy * Fix tests * Fix NDV tests and remove skipping of webhooks execution tests * Fix clipboard read command * Fix execution failing tests * Reset before each 15 and 3 * Fix flaky tests * Cleanup and log envs * Test fixes * Default owner spec fixes * Get rid of CYPRESS_RUN_ENV * Increase amount of containers, cleanup and add mock for credentials test call * Cleanup & fix PR tests unit tests * Wait for WF to loade in sharing spec * Do linting and unit tests first * Use frozen lockfile * Revert back ci pull request jobs order * Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec * test: build * Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request * Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions * Use setup node action * Remove caching for lint/unit tests * Experiment with parallel test & lint on ci * Provide cache key dynamically * Run e2e in parallel on pr * Only run node14 e2e on daily schedule * Make sure to generate generate new ci-build-id on re-runs * Remove debugging prints * Address PR comments * Rename custom onBeforeUnload handler * Make sure 19-execution spec waits for wf to load properly before import fixtures --------- Co-authored-by: Mutasem <[email protected]>
2023-03-02 07:50:21 -08:00
projectId: "5hbsdn",
retries: {
openMode: 0,
ci(editor): Run e2e tests in parallel and improve build caching (#5445) * WIP: Cypress parallel CI run test * Trigger action on branch push * Change build artifacts path * Make sure to checkout the repo for testing job * Use Cypress action for installing * Lock cypress action userd version * Skip node install step since we're using cypress node16 container * Let Cypress handle pnpm install * Use setup-node action for caching pnpm * Set CYPRESS_CACHE_FOLDER * Set CYPRESS_CACHE_FOLDER * Manually cache pnpm store * Dont fix pnpm version * Use caching action also in testing job * Zip packages dist before uploading the artifacts and change caching key * Use absolute build paths for zipping job * Use zip command in action * Use tar for zipping packages * Debuggin directory ls * Debugging caching of modules * Attempt to fix permissions issue * Porivde Cypress executable via `CYPRESS_RUN_BINARY` * Cache /github/home * Adjust caching keys * Debug: search for cypress exec * Debugging: List dirs * Use pnpm install action to install node_modules * Do not log /home/runner * Use node_modules/.bin Cypress binary * Use absolute path to nodue modules * Run Cypress via custom command * Try with patched cypress action * Revert logging * Manually specify cypress config file * Use absolute paths * Fix cypress config name * Debug print cypress config * Remove debugging, increase to 4 containers * Increase amount of containers * Add env-version matrix * Replace node14 with node18 in testing matrix * Remove debugging and add node 14 * Use just node14 * Use cypress:base and remove browser req * Give more general timeouts * Try with node16 * Change cache directive position * Replace zip artifact upload with cache * Cache full packages not just dist * Test with variable inputs * Add commit info message * Remove wrongly commited code * Allow WF API dispatch * Try Chrome browser again for comparison * Include Monaco in the build * Make e2e workflow re-usable * Comment out invalid reusable workflow args * Use electron and add node 14 run * Fix env arg * Provide custom ci-build-id * Refactor remaining e2e workflow to use reusable action * Remove single matrix directive * Refactor ci-pull-req * Make lint job dependant on test jobs * Disable debugging job * Make containers dynamic * Cleanup & install git for linting action * Use regular buntu image for PR linting * Debugging failing tests * Remove fixed spec name * Debug e2e env var * Do not use realkeypress which crashes electron runner * Debugging * chore: remove console * chore: remove console * test: remove node 14 tests * test: replace test branch with master * test: use tests in current branch * test: use relative path * chore: clean up * test: only trigger on approval * ci: update test PR * ci: use curr branch * ci: only run 14 on schedule, not for slack command * ci: only run test on approval * ci: clean up branch, rename step * ci: rename steps * ci: clean up cancel * ci: clean up env var * ci: set var * ci: use chromef * ci: use electron * chore: add console log * chore: add console log * ci: update to string * ci: set all env options * test: build * ci: fix step issue * Fix failing tests & upgrade to Cypress 12 * Allow WF dispatch of e2e reusable * Fix wrong naming in e2e-tests workflow * Redeploy * Fix tests * Fix NDV tests and remove skipping of webhooks execution tests * Fix clipboard read command * Fix execution failing tests * Reset before each 15 and 3 * Fix flaky tests * Cleanup and log envs * Test fixes * Default owner spec fixes * Get rid of CYPRESS_RUN_ENV * Increase amount of containers, cleanup and add mock for credentials test call * Cleanup & fix PR tests unit tests * Wait for WF to loade in sharing spec * Do linting and unit tests first * Use frozen lockfile * Revert back ci pull request jobs order * Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec * test: build * Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request * Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions * Use setup node action * Remove caching for lint/unit tests * Experiment with parallel test & lint on ci * Provide cache key dynamically * Run e2e in parallel on pr * Only run node14 e2e on daily schedule * Make sure to generate generate new ci-build-id on re-runs * Remove debugging prints * Address PR comments * Rename custom onBeforeUnload handler * Make sure 19-execution spec waits for wf to load properly before import fixtures --------- Co-authored-by: Mutasem <[email protected]>
2023-03-02 07:50:21 -08:00
runMode: 2,
},
ci(editor): Run e2e tests in parallel and improve build caching (#5445) * WIP: Cypress parallel CI run test * Trigger action on branch push * Change build artifacts path * Make sure to checkout the repo for testing job * Use Cypress action for installing * Lock cypress action userd version * Skip node install step since we're using cypress node16 container * Let Cypress handle pnpm install * Use setup-node action for caching pnpm * Set CYPRESS_CACHE_FOLDER * Set CYPRESS_CACHE_FOLDER * Manually cache pnpm store * Dont fix pnpm version * Use caching action also in testing job * Zip packages dist before uploading the artifacts and change caching key * Use absolute build paths for zipping job * Use zip command in action * Use tar for zipping packages * Debuggin directory ls * Debugging caching of modules * Attempt to fix permissions issue * Porivde Cypress executable via `CYPRESS_RUN_BINARY` * Cache /github/home * Adjust caching keys * Debug: search for cypress exec * Debugging: List dirs * Use pnpm install action to install node_modules * Do not log /home/runner * Use node_modules/.bin Cypress binary * Use absolute path to nodue modules * Run Cypress via custom command * Try with patched cypress action * Revert logging * Manually specify cypress config file * Use absolute paths * Fix cypress config name * Debug print cypress config * Remove debugging, increase to 4 containers * Increase amount of containers * Add env-version matrix * Replace node14 with node18 in testing matrix * Remove debugging and add node 14 * Use just node14 * Use cypress:base and remove browser req * Give more general timeouts * Try with node16 * Change cache directive position * Replace zip artifact upload with cache * Cache full packages not just dist * Test with variable inputs * Add commit info message * Remove wrongly commited code * Allow WF API dispatch * Try Chrome browser again for comparison * Include Monaco in the build * Make e2e workflow re-usable * Comment out invalid reusable workflow args * Use electron and add node 14 run * Fix env arg * Provide custom ci-build-id * Refactor remaining e2e workflow to use reusable action * Remove single matrix directive * Refactor ci-pull-req * Make lint job dependant on test jobs * Disable debugging job * Make containers dynamic * Cleanup & install git for linting action * Use regular buntu image for PR linting * Debugging failing tests * Remove fixed spec name * Debug e2e env var * Do not use realkeypress which crashes electron runner * Debugging * chore: remove console * chore: remove console * test: remove node 14 tests * test: replace test branch with master * test: use tests in current branch * test: use relative path * chore: clean up * test: only trigger on approval * ci: update test PR * ci: use curr branch * ci: only run 14 on schedule, not for slack command * ci: only run test on approval * ci: clean up branch, rename step * ci: rename steps * ci: clean up cancel * ci: clean up env var * ci: set var * ci: use chromef * ci: use electron * chore: add console log * chore: add console log * ci: update to string * ci: set all env options * test: build * ci: fix step issue * Fix failing tests & upgrade to Cypress 12 * Allow WF dispatch of e2e reusable * Fix wrong naming in e2e-tests workflow * Redeploy * Fix tests * Fix NDV tests and remove skipping of webhooks execution tests * Fix clipboard read command * Fix execution failing tests * Reset before each 15 and 3 * Fix flaky tests * Cleanup and log envs * Test fixes * Default owner spec fixes * Get rid of CYPRESS_RUN_ENV * Increase amount of containers, cleanup and add mock for credentials test call * Cleanup & fix PR tests unit tests * Wait for WF to loade in sharing spec * Do linting and unit tests first * Use frozen lockfile * Revert back ci pull request jobs order * Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec * test: build * Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request * Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions * Use setup node action * Remove caching for lint/unit tests * Experiment with parallel test & lint on ci * Provide cache key dynamically * Run e2e in parallel on pr * Only run node14 e2e on daily schedule * Make sure to generate generate new ci-build-id on re-runs * Remove debugging prints * Address PR comments * Rename custom onBeforeUnload handler * Make sure 19-execution spec waits for wf to load properly before import fixtures --------- Co-authored-by: Mutasem <[email protected]>
2023-03-02 07:50:21 -08:00
defaultCommandTimeout: 10000,
requestTimeout: 12000,
numTestsKeptInMemory: 0,
experimentalMemoryManagement: true,
e2e: {
baseUrl: BASE_URL,
ci(editor): Run e2e tests in parallel and improve build caching (#5445) * WIP: Cypress parallel CI run test * Trigger action on branch push * Change build artifacts path * Make sure to checkout the repo for testing job * Use Cypress action for installing * Lock cypress action userd version * Skip node install step since we're using cypress node16 container * Let Cypress handle pnpm install * Use setup-node action for caching pnpm * Set CYPRESS_CACHE_FOLDER * Set CYPRESS_CACHE_FOLDER * Manually cache pnpm store * Dont fix pnpm version * Use caching action also in testing job * Zip packages dist before uploading the artifacts and change caching key * Use absolute build paths for zipping job * Use zip command in action * Use tar for zipping packages * Debuggin directory ls * Debugging caching of modules * Attempt to fix permissions issue * Porivde Cypress executable via `CYPRESS_RUN_BINARY` * Cache /github/home * Adjust caching keys * Debug: search for cypress exec * Debugging: List dirs * Use pnpm install action to install node_modules * Do not log /home/runner * Use node_modules/.bin Cypress binary * Use absolute path to nodue modules * Run Cypress via custom command * Try with patched cypress action * Revert logging * Manually specify cypress config file * Use absolute paths * Fix cypress config name * Debug print cypress config * Remove debugging, increase to 4 containers * Increase amount of containers * Add env-version matrix * Replace node14 with node18 in testing matrix * Remove debugging and add node 14 * Use just node14 * Use cypress:base and remove browser req * Give more general timeouts * Try with node16 * Change cache directive position * Replace zip artifact upload with cache * Cache full packages not just dist * Test with variable inputs * Add commit info message * Remove wrongly commited code * Allow WF API dispatch * Try Chrome browser again for comparison * Include Monaco in the build * Make e2e workflow re-usable * Comment out invalid reusable workflow args * Use electron and add node 14 run * Fix env arg * Provide custom ci-build-id * Refactor remaining e2e workflow to use reusable action * Remove single matrix directive * Refactor ci-pull-req * Make lint job dependant on test jobs * Disable debugging job * Make containers dynamic * Cleanup & install git for linting action * Use regular buntu image for PR linting * Debugging failing tests * Remove fixed spec name * Debug e2e env var * Do not use realkeypress which crashes electron runner * Debugging * chore: remove console * chore: remove console * test: remove node 14 tests * test: replace test branch with master * test: use tests in current branch * test: use relative path * chore: clean up * test: only trigger on approval * ci: update test PR * ci: use curr branch * ci: only run 14 on schedule, not for slack command * ci: only run test on approval * ci: clean up branch, rename step * ci: rename steps * ci: clean up cancel * ci: clean up env var * ci: set var * ci: use chromef * ci: use electron * chore: add console log * chore: add console log * ci: update to string * ci: set all env options * test: build * ci: fix step issue * Fix failing tests & upgrade to Cypress 12 * Allow WF dispatch of e2e reusable * Fix wrong naming in e2e-tests workflow * Redeploy * Fix tests * Fix NDV tests and remove skipping of webhooks execution tests * Fix clipboard read command * Fix execution failing tests * Reset before each 15 and 3 * Fix flaky tests * Cleanup and log envs * Test fixes * Default owner spec fixes * Get rid of CYPRESS_RUN_ENV * Increase amount of containers, cleanup and add mock for credentials test call * Cleanup & fix PR tests unit tests * Wait for WF to loade in sharing spec * Do linting and unit tests first * Use frozen lockfile * Revert back ci pull request jobs order * Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec * test: build * Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request * Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions * Use setup node action * Remove caching for lint/unit tests * Experiment with parallel test & lint on ci * Provide cache key dynamically * Run e2e in parallel on pr * Only run node14 e2e on daily schedule * Make sure to generate generate new ci-build-id on re-runs * Remove debugging prints * Address PR comments * Rename custom onBeforeUnload handler * Make sure 19-execution spec waits for wf to load properly before import fixtures --------- Co-authored-by: Mutasem <[email protected]>
2023-03-02 07:50:21 -08:00
video: true,
screenshotOnRunFailure: true,
experimentalInteractiveRunEvents: true,
ci(editor): Run e2e tests in parallel and improve build caching (#5445) * WIP: Cypress parallel CI run test * Trigger action on branch push * Change build artifacts path * Make sure to checkout the repo for testing job * Use Cypress action for installing * Lock cypress action userd version * Skip node install step since we're using cypress node16 container * Let Cypress handle pnpm install * Use setup-node action for caching pnpm * Set CYPRESS_CACHE_FOLDER * Set CYPRESS_CACHE_FOLDER * Manually cache pnpm store * Dont fix pnpm version * Use caching action also in testing job * Zip packages dist before uploading the artifacts and change caching key * Use absolute build paths for zipping job * Use zip command in action * Use tar for zipping packages * Debuggin directory ls * Debugging caching of modules * Attempt to fix permissions issue * Porivde Cypress executable via `CYPRESS_RUN_BINARY` * Cache /github/home * Adjust caching keys * Debug: search for cypress exec * Debugging: List dirs * Use pnpm install action to install node_modules * Do not log /home/runner * Use node_modules/.bin Cypress binary * Use absolute path to nodue modules * Run Cypress via custom command * Try with patched cypress action * Revert logging * Manually specify cypress config file * Use absolute paths * Fix cypress config name * Debug print cypress config * Remove debugging, increase to 4 containers * Increase amount of containers * Add env-version matrix * Replace node14 with node18 in testing matrix * Remove debugging and add node 14 * Use just node14 * Use cypress:base and remove browser req * Give more general timeouts * Try with node16 * Change cache directive position * Replace zip artifact upload with cache * Cache full packages not just dist * Test with variable inputs * Add commit info message * Remove wrongly commited code * Allow WF API dispatch * Try Chrome browser again for comparison * Include Monaco in the build * Make e2e workflow re-usable * Comment out invalid reusable workflow args * Use electron and add node 14 run * Fix env arg * Provide custom ci-build-id * Refactor remaining e2e workflow to use reusable action * Remove single matrix directive * Refactor ci-pull-req * Make lint job dependant on test jobs * Disable debugging job * Make containers dynamic * Cleanup & install git for linting action * Use regular buntu image for PR linting * Debugging failing tests * Remove fixed spec name * Debug e2e env var * Do not use realkeypress which crashes electron runner * Debugging * chore: remove console * chore: remove console * test: remove node 14 tests * test: replace test branch with master * test: use tests in current branch * test: use relative path * chore: clean up * test: only trigger on approval * ci: update test PR * ci: use curr branch * ci: only run 14 on schedule, not for slack command * ci: only run test on approval * ci: clean up branch, rename step * ci: rename steps * ci: clean up cancel * ci: clean up env var * ci: set var * ci: use chromef * ci: use electron * chore: add console log * chore: add console log * ci: update to string * ci: set all env options * test: build * ci: fix step issue * Fix failing tests & upgrade to Cypress 12 * Allow WF dispatch of e2e reusable * Fix wrong naming in e2e-tests workflow * Redeploy * Fix tests * Fix NDV tests and remove skipping of webhooks execution tests * Fix clipboard read command * Fix execution failing tests * Reset before each 15 and 3 * Fix flaky tests * Cleanup and log envs * Test fixes * Default owner spec fixes * Get rid of CYPRESS_RUN_ENV * Increase amount of containers, cleanup and add mock for credentials test call * Cleanup & fix PR tests unit tests * Wait for WF to loade in sharing spec * Do linting and unit tests first * Use frozen lockfile * Revert back ci pull request jobs order * Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec * test: build * Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request * Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions * Use setup node action * Remove caching for lint/unit tests * Experiment with parallel test & lint on ci * Provide cache key dynamically * Run e2e in parallel on pr * Only run node14 e2e on daily schedule * Make sure to generate generate new ci-build-id on re-runs * Remove debugging prints * Address PR comments * Rename custom onBeforeUnload handler * Make sure 19-execution spec waits for wf to load properly before import fixtures --------- Co-authored-by: Mutasem <[email protected]>
2023-03-02 07:50:21 -08:00
experimentalSessionAndOrigin: true,
setupNodeEvents(on, config) {
on('task', {
reset: () => fetch(BASE_URL + '/e2e/db/reset', { method: 'POST' }),
ci(editor): Run e2e tests in parallel and improve build caching (#5445) * WIP: Cypress parallel CI run test * Trigger action on branch push * Change build artifacts path * Make sure to checkout the repo for testing job * Use Cypress action for installing * Lock cypress action userd version * Skip node install step since we're using cypress node16 container * Let Cypress handle pnpm install * Use setup-node action for caching pnpm * Set CYPRESS_CACHE_FOLDER * Set CYPRESS_CACHE_FOLDER * Manually cache pnpm store * Dont fix pnpm version * Use caching action also in testing job * Zip packages dist before uploading the artifacts and change caching key * Use absolute build paths for zipping job * Use zip command in action * Use tar for zipping packages * Debuggin directory ls * Debugging caching of modules * Attempt to fix permissions issue * Porivde Cypress executable via `CYPRESS_RUN_BINARY` * Cache /github/home * Adjust caching keys * Debug: search for cypress exec * Debugging: List dirs * Use pnpm install action to install node_modules * Do not log /home/runner * Use node_modules/.bin Cypress binary * Use absolute path to nodue modules * Run Cypress via custom command * Try with patched cypress action * Revert logging * Manually specify cypress config file * Use absolute paths * Fix cypress config name * Debug print cypress config * Remove debugging, increase to 4 containers * Increase amount of containers * Add env-version matrix * Replace node14 with node18 in testing matrix * Remove debugging and add node 14 * Use just node14 * Use cypress:base and remove browser req * Give more general timeouts * Try with node16 * Change cache directive position * Replace zip artifact upload with cache * Cache full packages not just dist * Test with variable inputs * Add commit info message * Remove wrongly commited code * Allow WF API dispatch * Try Chrome browser again for comparison * Include Monaco in the build * Make e2e workflow re-usable * Comment out invalid reusable workflow args * Use electron and add node 14 run * Fix env arg * Provide custom ci-build-id * Refactor remaining e2e workflow to use reusable action * Remove single matrix directive * Refactor ci-pull-req * Make lint job dependant on test jobs * Disable debugging job * Make containers dynamic * Cleanup & install git for linting action * Use regular buntu image for PR linting * Debugging failing tests * Remove fixed spec name * Debug e2e env var * Do not use realkeypress which crashes electron runner * Debugging * chore: remove console * chore: remove console * test: remove node 14 tests * test: replace test branch with master * test: use tests in current branch * test: use relative path * chore: clean up * test: only trigger on approval * ci: update test PR * ci: use curr branch * ci: only run 14 on schedule, not for slack command * ci: only run test on approval * ci: clean up branch, rename step * ci: rename steps * ci: clean up cancel * ci: clean up env var * ci: set var * ci: use chromef * ci: use electron * chore: add console log * chore: add console log * ci: update to string * ci: set all env options * test: build * ci: fix step issue * Fix failing tests & upgrade to Cypress 12 * Allow WF dispatch of e2e reusable * Fix wrong naming in e2e-tests workflow * Redeploy * Fix tests * Fix NDV tests and remove skipping of webhooks execution tests * Fix clipboard read command * Fix execution failing tests * Reset before each 15 and 3 * Fix flaky tests * Cleanup and log envs * Test fixes * Default owner spec fixes * Get rid of CYPRESS_RUN_ENV * Increase amount of containers, cleanup and add mock for credentials test call * Cleanup & fix PR tests unit tests * Wait for WF to loade in sharing spec * Do linting and unit tests first * Use frozen lockfile * Revert back ci pull request jobs order * Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec * test: build * Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request * Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions * Use setup node action * Remove caching for lint/unit tests * Experiment with parallel test & lint on ci * Provide cache key dynamically * Run e2e in parallel on pr * Only run node14 e2e on daily schedule * Make sure to generate generate new ci-build-id on re-runs * Remove debugging prints * Address PR comments * Rename custom onBeforeUnload handler * Make sure 19-execution spec waits for wf to load properly before import fixtures --------- Co-authored-by: Mutasem <[email protected]>
2023-03-02 07:50:21 -08:00
'setup-owner': (payload) => {
try {
return fetch(BASE_URL + '/e2e/db/setup-owner', {
method: 'POST',
body: JSON.stringify(payload),
headers: { 'Content-Type': 'application/json' },
})
} catch (error) {
console.error("setup-owner failed with: ", error)
return null
}
},
feat: Add global event bus (#4860) * fix branch * fix deserialize, add filewriter * add catchAll eventGroup/Name * adding simple Redis sender and receiver to eventbus * remove native node threads * improve eventbus * refactor and simplify * more refactoring and syslog client * more refactor, improved endpoints and eventbus * remove local broker and receivers from mvp * destination de/serialization * create MessageEventBusDestinationEntity * db migrations, load destinations at startup * add delete destination endpoint * pnpm merge and circular import fix * delete destination fix * trigger log file shuffle after size reached * add environment variables for eventbus * reworking event messages * serialize to thread fix * some refactor and lint fixing * add emit to eventbus * cleanup and fix sending unsent * quicksave frontend trial * initial EventTree vue component * basic log streaming settings in vue * http request code merge * create destination settings modals * fix eventmessage options types * credentials are loaded * fix and clean up frontend code * move request code to axios * update lock file * merge fix * fix redis build * move destination interfaces into workflow pkg * revive sentry as destination * migration fixes and frontend cleanup * N8N-5777 / N8N-5789 N8N-5788 * N8N-5784 * N8N-5782 removed event levels * N8N-5790 sentry destination cleanup * N8N-5786 and refactoring * N8N-5809 and refactor/cleanup * UI fixes and anonymize renaming * N8N-5837 * N8N-5834 * fix no-items UI issues * remove card / settings label in modal * N8N-5842 fix * disable webhook auth for now and update ui * change sidebar to tabs * remove payload option * extend audit events with more user data * N8N-5853 and UI revert to sidebar * remove redis destination * N8N-5864 / N8N-5868 / N8N-5867 / N8N-5865 * ui and licensing fixes * add node events and info bubbles to frontend * ui wording changes * frontend tests * N8N-5896 and ee rename * improves backend tests * merge fix * fix backend test * make linter happy * remove unnecessary cfg / limit actions to owners * fix multiple sentry DSN and anon bug * eslint fix * more tests and fixes * merge fix * fix workflow audit events * remove 'n8n.workflow.execution.error' event * merge fix * lint fix * lint fix * review fixes * fix merge * prettier fixes * merge * review changes * use loggerproxy * remove catch from internal hook promises * fix tests * lint fix * include review PR changes * review changes * delete duplicate lines from a bad merge * decouple log-streaming UI options from public API * logstreaming -> log-streaming for consistency * do not make unnecessary api calls when log streaming is disabled * prevent sentryClient.close() from being called if init failed * fix the e2e test for log-streaming * review changes * cleanup * use `private` for one last private property * do not use node prefix package names.. just yet * remove unused import * fix the tests because there is a folder called `events`, tsc-alias is messing up all imports for native events module. https://github.com/justkey007/tsc-alias/issues/152 Co-authored-by: कारतोफ्फेलस्क्रिप्ट™ <[email protected]>
2023-01-04 00:47:48 -08:00
'enable-feature': (feature) =>
fetch(BASE_URL + `/e2e/enable-feature/${feature}`, { method: 'POST' }),
});
},
},
});
ci(editor): Run e2e tests in parallel and improve build caching (#5445) * WIP: Cypress parallel CI run test * Trigger action on branch push * Change build artifacts path * Make sure to checkout the repo for testing job * Use Cypress action for installing * Lock cypress action userd version * Skip node install step since we're using cypress node16 container * Let Cypress handle pnpm install * Use setup-node action for caching pnpm * Set CYPRESS_CACHE_FOLDER * Set CYPRESS_CACHE_FOLDER * Manually cache pnpm store * Dont fix pnpm version * Use caching action also in testing job * Zip packages dist before uploading the artifacts and change caching key * Use absolute build paths for zipping job * Use zip command in action * Use tar for zipping packages * Debuggin directory ls * Debugging caching of modules * Attempt to fix permissions issue * Porivde Cypress executable via `CYPRESS_RUN_BINARY` * Cache /github/home * Adjust caching keys * Debug: search for cypress exec * Debugging: List dirs * Use pnpm install action to install node_modules * Do not log /home/runner * Use node_modules/.bin Cypress binary * Use absolute path to nodue modules * Run Cypress via custom command * Try with patched cypress action * Revert logging * Manually specify cypress config file * Use absolute paths * Fix cypress config name * Debug print cypress config * Remove debugging, increase to 4 containers * Increase amount of containers * Add env-version matrix * Replace node14 with node18 in testing matrix * Remove debugging and add node 14 * Use just node14 * Use cypress:base and remove browser req * Give more general timeouts * Try with node16 * Change cache directive position * Replace zip artifact upload with cache * Cache full packages not just dist * Test with variable inputs * Add commit info message * Remove wrongly commited code * Allow WF API dispatch * Try Chrome browser again for comparison * Include Monaco in the build * Make e2e workflow re-usable * Comment out invalid reusable workflow args * Use electron and add node 14 run * Fix env arg * Provide custom ci-build-id * Refactor remaining e2e workflow to use reusable action * Remove single matrix directive * Refactor ci-pull-req * Make lint job dependant on test jobs * Disable debugging job * Make containers dynamic * Cleanup & install git for linting action * Use regular buntu image for PR linting * Debugging failing tests * Remove fixed spec name * Debug e2e env var * Do not use realkeypress which crashes electron runner * Debugging * chore: remove console * chore: remove console * test: remove node 14 tests * test: replace test branch with master * test: use tests in current branch * test: use relative path * chore: clean up * test: only trigger on approval * ci: update test PR * ci: use curr branch * ci: only run 14 on schedule, not for slack command * ci: only run test on approval * ci: clean up branch, rename step * ci: rename steps * ci: clean up cancel * ci: clean up env var * ci: set var * ci: use chromef * ci: use electron * chore: add console log * chore: add console log * ci: update to string * ci: set all env options * test: build * ci: fix step issue * Fix failing tests & upgrade to Cypress 12 * Allow WF dispatch of e2e reusable * Fix wrong naming in e2e-tests workflow * Redeploy * Fix tests * Fix NDV tests and remove skipping of webhooks execution tests * Fix clipboard read command * Fix execution failing tests * Reset before each 15 and 3 * Fix flaky tests * Cleanup and log envs * Test fixes * Default owner spec fixes * Get rid of CYPRESS_RUN_ENV * Increase amount of containers, cleanup and add mock for credentials test call * Cleanup & fix PR tests unit tests * Wait for WF to loade in sharing spec * Do linting and unit tests first * Use frozen lockfile * Revert back ci pull request jobs order * Refine credential input selector and move cy.waitForLoad to correct position in 15-scheduler spec * test: build * Wait for WF execution instead of arbitraty timeout in WF execution spec, change order of jobs for ci pull request * Fix flaky 3-default owner spec and wait for execution list to load in 20-workflow-executions * Use setup node action * Remove caching for lint/unit tests * Experiment with parallel test & lint on ci * Provide cache key dynamically * Run e2e in parallel on pr * Only run node14 e2e on daily schedule * Make sure to generate generate new ci-build-id on re-runs * Remove debugging prints * Address PR comments * Rename custom onBeforeUnload handler * Make sure 19-execution spec waits for wf to load properly before import fixtures --------- Co-authored-by: Mutasem <[email protected]>
2023-03-02 07:50:21 -08:00