feat: shard modules and API integration tests (#6775)

what:

- runs module and api integration tests in matrix strategy
  - v28 of jest comes with sharding support, which we can utilize when we upgrade
- splits the tests by number of matrix jobs and run them in parallel
  - This introduced some flakiness in some specs, but couldn't reproduce locally. Those have been skipped for now.
- uses swc/jest for added performance
  - Locally, a chunk took 90 seconds with babel and 30 seconds with swc. 
  - This translated to 2 mins saved per shard in CI, but haven't tested this enough.
This commit is contained in:
Riqwan Thamir
2024-03-22 12:15:01 +01:00
committed by GitHub
parent 8929b2d60b
commit 4c98545ab3
13 changed files with 269 additions and 35 deletions

View File

@@ -72,9 +72,9 @@
"jest": "jest",
"test": "turbo run test --concurrency=50% --no-daemon",
"test:integration:packages": "turbo run test:integration --concurrency=50% --no-daemon --filter='./packages/*'",
"test:integration:api": "turbo run test:integration --concurrency=50% --no-daemon --filter=integration-tests-api",
"test:integration:api": "turbo run test:integration:chunk --concurrency=50% --no-daemon --filter=integration-tests-api",
"test:integration:plugins": "turbo run test:integration --concurrency=50% --no-daemon --filter=integration-tests-plugins",
"test:integration:modules": "turbo run test:integration --concurrency=50% --no-daemon --filter=integration-tests-modules",
"test:integration:modules": "turbo run test:integration:chunk --concurrency=50% --no-daemon --filter=integration-tests-modules",
"test:integration:repositories": "turbo run test:integration --concurrency=50% --no-daemon --filter=integration-tests-repositories",
"openapi:generate": "yarn ./packages/oas/oas-github-ci run ci --with-full-file",
"medusa-oas": "yarn ./packages/oas/medusa-oas-cli run medusa-oas",