twenty/packages/twenty-front
Thaïs 992602b307
fix: fix storybook build cache not being used by tests in CI (#5451)
TL;DR:
- removed `--configuration={args.scope}` from `storybook:static:test`
for the `storybook:static` part, as it was making `front-sb-test` jobs
in CI not reuse the cache from the `front-sb-build` job and re-build
storybook every time.
- replaced it with a new `test` configuration which optimizes storybook
build for tests and builds storybook 2x faster.

## Fix storybook:build cache usage in CI

`storybook:static:test` executes two scripts in parallel:
1. `storybook:static`, which depends on `storybook:build`
1.a. it builds storybook first with `storybook:build`, the output
directory is `storybook-static`.
1.b. then it launches an `http-server`, using what has been built in
`storybook-static`
2. `storybook:test` to execute tests (needs the storybook http-server to
be running)

When passing `--configuration=pages` or `--configuration=modules` to
`storybook:static` from step 1, those configurations are passed to the
`storybook:build` script from step 1.a as well.

But for Nx `storybook:build` and `storybook:build --configuration=pages`
(or `modules`) are not the same command, therefore one does not reuse
the cache of the other because they could output completely different
things.

As `front-sb-test` jobs are passing `--configuration={args.scope}` to
`storybook:static`, the cache of the previously executed
`storybook:build` (from `front-sb-build`) is not reused and therefore
each job re-builds Storybook with its own scope, which increases CI
time.

### Solution

- Removed scope configurations from `storybook:static` and
`storybook:build` scripts to avoid confusion.
- `storybook:test` and `storybook:dev` can keep scope configurations as
they can be useful and this doesn't impact storybook build cache in CI.

### Improve Storybook build time for testing

Added the `test` configuration to `storybook:build` and
`storybook:static` which makes Storybook build time 2x faster. It
disables addons that slow down build time and are not used in tests.
2024-05-17 16:05:31 +02:00
..
__mocks__ Fix overlay scroll gaps (#4512) 2024-03-31 10:53:37 +02:00
.storybook fix: fix storybook build cache not being used by tests in CI (#5451) 2024-05-17 16:05:31 +02:00
public Add stripe connection option (#5372) 2024-05-13 18:00:13 +02:00
scripts feat: add SENTRY_RELEASE env (#4912) 2024-04-11 16:53:15 +02:00
src fix: fix storybook build cache not being used by tests in CI (#5451) 2024-05-17 16:05:31 +02:00
.env.example Delete auth/file front variables (#4455) 2024-03-19 22:19:40 +01:00
.eslintrc-ci.cjs chore: enable no-console eslint rule for tests and stories (#4816) 2024-04-04 18:36:39 +02:00
.eslintrc.cjs Increase storybook pages coverage (#4885) 2024-04-17 16:24:04 +02:00
.gitignore Feat/put target object identifier on use activities (#4682) 2024-04-01 13:12:37 +02:00
.prettierignore Update twenty-front commands (#4667) 2024-04-17 18:06:02 +02:00
.swcrc Migrate to a monorepo structure (#2909) 2023-12-10 18:10:54 +01:00
codegen-metadata.cjs feat: fetch database connections (#4813) 2024-04-04 17:27:36 +02:00
codegen.cjs feat: fetch database connections (#4813) 2024-04-04 17:27:36 +02:00
index.html Migrate to a monorepo structure (#2909) 2023-12-10 18:10:54 +01:00
jest.config.ts Update twenty-front commands (#4667) 2024-04-17 18:06:02 +02:00
nyc.config.cjs Fix front jest tests (#5331) 2024-05-08 01:49:49 +02:00
package.json fix: fix storybook build cache not being used by tests in CI (#5451) 2024-05-17 16:05:31 +02:00
project.json fix: fix storybook build cache not being used by tests in CI (#5451) 2024-05-17 16:05:31 +02:00
README.md Migrate to a monorepo structure (#2909) 2023-12-10 18:10:54 +01:00
setupTests.ts chore: setup twenty-ui absolute path alias (#4732) 2024-04-04 15:38:01 +02:00
tsconfig.app.json fix: fix root start script (#5032) 2024-04-19 18:28:02 +02:00
tsconfig.json 4900 multi select field front implement expanded cells (#5151) 2024-05-03 15:03:06 +02:00
tsconfig.spec.json fix: fix root start script (#5032) 2024-04-19 18:28:02 +02:00
tsconfig.storybook.json fix: fix root start script (#5032) 2024-04-19 18:28:02 +02:00
tsup.config.ts Update twenty-front commands (#4667) 2024-04-17 18:06:02 +02:00
tsup.ui.index.tsx 4900 multi select field front implement expanded cells (#5151) 2024-05-03 15:03:06 +02:00
vite.config.ts Update twenty-front commands (#4667) 2024-04-17 18:06:02 +02:00

Run yarn dev while server running on port 3000