-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
LW-10615 Optimize e2e tests #1295
Conversation
|
d1dccc0
to
0b06bb1
Compare
0b06bb1
to
1cb9874
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work! 😎 🧙
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome job @iccicci ⭐
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fantastic work @iccicci 🚀
I'm so happy for this optimization 🥳
63c303f
to
52fd132
Compare
Context
Our
local-network
has an initial delay of about 12' in order to be operational. This has a huge development time cost as CI runs takes 32' and running e2e tests locally takes more or less the same time.Proposed Solution
Changes impacting both CI and local development
local-testnet
container from everything done to the nodes started so other containers depending on it can perform their init simultaneously to this container.local-testnet
init is completed; with previous change, we can no longer trust the healthy logic with this purpose.healthcheck
fromcardano-db-sync
as it is no longer needed.yarn test:wallet
into two groups: those which can be run at epoch 0 from those which need to wait for epoch 3 in order to be run.yarn test:wallet
with a wrapper to callyarn test:wallet:epoch0
,yarn test:wallet:epoch3
and relative wait script to run the tests at the right time.Changes dedicated to local development
local-testnet
init stage; this plus the change to healthy logic (with cached built docker images) gives the developer the ability to run locallyyarn test:wallet:epoch0
about one single minute later thanyarn local-network:up
rather than after about fifteen minutes!Changes dedicated to CI
--mode=skip-build
option to allyarn install
calls to save about 20" each.apt-get
packages. This actually has impact on local development as well, but has a very limited benefit due to local docker cache.Important Changes Introduced
version
property fromdocker-compose.yml
like files.healthcheck
definition of projector related containers fromdocker-compose.yml
toDockerfile
to remove some code repetition.storePoolMetricsUpdateJob
operator: if it sent a job at block zero, it no longer sent other jobs.pool-metrics
jobs interval from1000
blocks to50
blocks in thelocal-network
.