Skip to content

Latest commit

 

History

History
70 lines (41 loc) · 2.73 KB

README.md

File metadata and controls

70 lines (41 loc) · 2.73 KB

LPhyBeastTest in NeSI

Comprehensive integration tests for LPhyBeast + BEAST2 tutorials

The URLs of the pre-released versions

prerelease.xml defines the dependencies of lphybeast and LPhyBeastExt, it also can be used to download their SNAPSHOT versions from the Maven repo. These SNAPSHOT versions map to the different versions for testing. The complex tests, therefore, can be done with minimised manual process using NeSI, and also are not engaging with the formal BEAST release framework.

Folder structure, setup beast2 and lphy

  • working dir is $HOME/LPhyBeastTest in NeSI.

  • install beast2.7.* under that folder, for example:

tar -xf BEAST.v2.7.*.Linux.x86.tgz
  • install lphy 1.6.* under this folder, for example:
unzip lphy-studio-1.6.*.zip -d lphy-studio-1.6.*
  • install all beast2 packages under $BEAST_LIB.

  • make modified beauti.properties available under that folder.

Testing pipeline

  1. ssh mahuika

  2. cd $HOME/LPhyBeastTest and scp all required files by alphabetic order into that folder:

    • beauti.properties, which points to the URL of pre-released versions;
    • prerelease.xml, which is for Package Manager.
    • beast.txt, which is a NeSI job template for beast runs, see also runBEAST.sh;
    • config.sh, which sets up required environment variables;
    • install-pkgs.sl, which submit a job to install the testing version of lphybeast and LPhyBeastExt, and their dependencies;
    • runBEAST.sh, which submits 4 jobs (one for each tutorial) to run beast XML, and analyses log and summarises trees.

Note: update the versions in _prerelease.xml and config.sh before scp.

Setup lphybeast and create XMLs

  1. rm install-pkgs.txt, which contains the previous installation and lphybeast message. rm xmls/* lphybeast/*, which may contain previous results.

  2. sbatch install-pkgs.sl, which installs lphybeast, LPhyBeastExt and their dependencies, then call lphybeast to saves XMLs into the subfolder xmls.

  3. ls lphybeast/ xmls/ to check files, or alternatively vi install-pkgs.txt to check messages, after the job is done.

Run XMLs and analyse log

  1. run runBEAST.sh under $HOME/LPhyBeastTest, which will submit one job for each tutorial for testing.

  2. after all jobs are done, transfer the entire subfolder xmls to the local, such as scp -r mahuika:$HOME/LPhyBeastTest/xmls/ $LOCAL/LPhyBeastTest/lphybeast. The subfolder should contain all beast results.

  3. run all JUnit tests under lphybeast.tutorial, to validate the estimated parameter values.

TODO