mirror of
https://github.com/gravitational/teleport.git
synced 2026-10-11 22:49:54 +00:00
* Auto detect fixture usage in tests * Changes to runner for enabling e e2e tests * Only detect fixtures in test/UI/debug modes * Make scanning more resilient - require test.use, allow for multiple lines * Fix e2e/runner CI generate check * Make scanning context aware to match with running individual tests * Log enabled fixtures on one line * Rename gen-fixtures, move go gen to main.go * Return an error if no tests are matched * gen-ts-fixtures: Use text/template instead of manually writing to buf * Ignore generated fixtures.ts instead of formatting it * Fix pnpm lockfile patching for when e/e2e is missing * Simplify test running mode detection for scanning fixtures * go generate * Remove codegen from test run logic * Handle run.sh receiving e/e2e directly * Allow for fixtures to be enabled manually through flags * Fix logging of enabled fixtures to include the ones set by flags * Handle inline comments * Update cmd in generated file * Only pnpm install if teleport/connect needs building * Error if UI mode is invoked with connect tests * Handle errors better when checking if a binary exists * Add info to the README about manually enabling fixtures * Debug -> Warn * Add test files to --ui * Handle comments in strings properly * Remove connect TSH from pnpm install logic * Ignore flags in run.sh * Handle double quotes just in case * Add line number back * Handle commented out imports * Always include host.docker.internal in the certs * Only scan fixtures in test mode/when test files are specified * Make e2e/run.sh work with absolute paths to e/ tests * Scan fixtures when running tests but not in UI mode --------- Co-authored-by: Maja Cieślak <[email protected]>
28 lines
849 B
JavaScript
28 lines
849 B
JavaScript
function afterAllResolved(lockfile, context) {
|
|
// The pnpm lockfile contains entries for all workspaces.
|
|
// This means that if the `e` repo is not cloned, we will get a different
|
|
// lockfile.
|
|
// The ugly workaround is to add entries for enterprise workspaces manually.
|
|
if (!lockfile.importers['e/web/teleport']) {
|
|
context.log(`Workspace 'e/web/teleport' is not present, patching lockfile.`);
|
|
lockfile.importers['e/web/teleport'] = {};
|
|
}
|
|
if (!lockfile.importers['e/e2e']) {
|
|
context.log(`Workspace 'e/e2e' is not present, patching lockfile.`);
|
|
lockfile.importers['e/e2e'] = {
|
|
dependencies: {
|
|
'@gravitational/e2e': 'link:../../e2e',
|
|
},
|
|
specifiers: {
|
|
'@gravitational/e2e': 'workspace:*',
|
|
},
|
|
};
|
|
}
|
|
return lockfile;
|
|
}
|
|
|
|
module.exports = {
|
|
hooks: {
|
|
afterAllResolved,
|
|
},
|
|
}; |