Closed alchem0x2A closed 1 year ago
An example of CI workflow testing the binary compatibilities can be seem in https://github.com/ulissigroup/vasp-interactive/actions/runs/3294628109:
For Cori / Perlmutter tests, action runner sends the slurm script to nersc and start an interactive job (for real-time pipeline).
To test the docker images, the test script is simply send to Perlmutter login node and tested in shifter, since it's relatively light job.
After each job finishes, the test results are send to gist https://gist.github.com/alchem0x2A/afede700c2b7703c77e10e51333bfa75. The final step in the action uses examples/command-test-examples/gist_to_table.py
to render the readme section and make a commit if the content changes. Example readme output looks like:
Docker images (**) | Cori Haswell (†) | Cori KNL (†) | Perlmutter CPU (†) | Perlmutter GPU (†) | |
---|---|---|---|---|---|
VASP 5.4.x | |||||
VASP 5.4.x - TPC (*) | |||||
VASP 6.1.x | |||||
VASP 6.2.x | |||||
VASP 6.2.x - TPC (*) | |||||
VASP 6.3.x | |||||
VASP 6.3.x - TPC (*) |
The workflow is dispatch-only to limit misusage on nersc quota. Things to think about for future maintance:
Add more scripts for compatibility tests on laikapack / nersc systems. Thanks inputs from Zhengji, now all VASP on NERSC are at least with minimal support in VaspInteractive.
Contents added:
examples/command-test-examples