[go: up one dir, main page]

CI: introduce tezt greedy tests

Context

This MR adds two new tezt tags "memory_3k" and "memory_4k" to tezt jobs that respectively ~4 and ~3 Gb of memory to execute. The mesures are taken from !9593 (closed)

subsequently we exclude these jobs to the main tezt job list and we run two additional separate jobs for these memory hungry tests. The longest test now takes 11minutes.

I introduce a new makefile target test-tezt-greedy to run memory hungry tezt jobs and a minor code refactor to allow to specify the value of the tezt option -j from a env variable TEZT_PARALLEL ( default 3 )

Manually testing the MR

Run the CI, make sure the memory expensive jobs are run separately and do not fail.

$ tezt --list-tsv memory_4k 
qcheck random seed: 278916017                
tezt/tests/p2p.ml	p2p-maintenance-init-expected_connections	p2p node maintenance memory_4k
tezt/tests/p2p.ml	p2p-swap-disable	p2p node swap memory_4k
tezt/tests/storage_snapshots.ml	Nairobi: storage snapshot export and import	nairobi storage snapshot export import memory_4k
tezt/tests/storage_snapshots.ml	Oxford: storage snapshot export and import	oxford storage snapshot export import memory_4k
tezt/tests/storage_snapshots.ml	Alpha: storage snapshot export and import	alpha storage snapshot export import memory_4k
tezt/tests/synchronisation_heuristic.ml	Nairobi: bootstrap: many nodes bootstrap	nairobi synchronisation_threshold bootstrap threshold memory_4k
tezt/tests/synchronisation_heuristic.ml	Oxford: bootstrap: many nodes bootstrap	oxford synchronisation_threshold bootstrap threshold memory_4k
tezt/tests/synchronisation_heuristic.ml	Alpha: bootstrap: many nodes bootstrap	alpha synchronisation_threshold bootstrap threshold memory_4k
qcheck random seed: 947557524                
tezt/tests/p2p.ml	Test [octez-admin-client p2p stat]	p2p connections p2p_stat memory_3k
tezt/tests/nonce_seed_revelation.ml	Nairobi: Nonce seed revelation	nairobi nonce seed revelation memory_3k
tezt/tests/nonce_seed_revelation.ml	Oxford: Nonce seed revelation	oxford nonce seed revelation memory_3k
tezt/tests/nonce_seed_revelation.ml	Alpha: Nonce seed revelation	alpha nonce seed revelation memory_3k
tezt/tests/precheck.ml	Nairobi: forge fake block	nairobi precheck fake_block propagation memory_3k
tezt/tests/precheck.ml	Oxford: forge fake block	oxford precheck fake_block propagation memory_3k
tezt/tests/precheck.ml	Alpha: forge fake block	alpha precheck fake_block propagation memory_3k
tezt/tests/precheck.ml	Nairobi: forge block with wrong payload	nairobi precheck fake_block propagation payload memory_3k
tezt/tests/precheck.ml	Oxford: forge block with wrong payload	oxford precheck fake_block propagation payload memory_3k
tezt/tests/precheck.ml	Alpha: forge block with wrong payload	alpha precheck fake_block propagation payload memory_3k
tezt/tests/synchronisation_heuristic.ml	Nairobi: check synchronization state	nairobi synchronisation_threshold bootstrap node sync memory_3k
tezt/tests/synchronisation_heuristic.ml	Oxford: check synchronization state	oxford synchronisation_threshold bootstrap node sync memory_3k
tezt/tests/synchronisation_heuristic.ml	Alpha: check synchronization state	alpha synchronisation_threshold bootstrap node sync memory_3k

Checklist

  • Document the interface of any function added or modified (see the coding guidelines)
  • Document any change to the user interface, including configuration parameters (see node configuration)
  • Provide automatic testing (see the testing guide).
  • For new features and bug fixes, add an item in the appropriate changelog (docs/protocols/alpha.rst for the protocol and the environment, CHANGES.rst at the root of the repository for everything else).
  • Select suitable reviewers using the Reviewers field below.
  • Select as Assignee the next person who should take action on that MR
Edited by pietro

Merge request reports

Loading