diff --git a/CHANGELOG.md b/CHANGELOG.md index 174808f..fc16d86 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,12 +3,15 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). +## 1.87 - 2023-10/17 +### Updated +- genometools: `1.6.0` -> `1.6.4` +- coseg: `0.2.2` -> `0.2.3` + ## 1.86 - 2023-10/09 ### Updated - RMBlast: `2.14.0` -> `2.14.1` - RepeatModeler: `2.0.4` -> `2.0.5` -- genometools: `1.6.0` -> `1.6.4` -- coseg: `0.2.2` -> `0.2.3` ## 1.85 - 2023-5/09 ### Updated diff --git a/Dockerfile b/Dockerfile index 9e08aaf..6af9beb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,7 +22,6 @@ RUN apt-get -y update && apt-get -y install \ COPY src/* /opt/src/ COPY sha256sums.txt /opt/src/ -COPY container_test.sh /opt/src/ WORKDIR /opt/src RUN sha256sum -c sha256sums.txt @@ -147,4 +146,6 @@ ENV LANG=C ENV PYTHONIOENCODING=utf8 ENV PATH=/opt/RepeatMasker:/opt/RepeatMasker/util:/opt/RepeatModeler:/opt/RepeatModeler/util:/opt/coseg:/opt/ucsc_tools:/opt:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/opt/rmblast/bin:/bin +COPY container_test.sh /opt/src/ +RUN chmod 701 /opt/src/container_test.sh RUN /opt/src/container_test.sh \ No newline at end of file diff --git a/README.md b/README.md index cc2e334..69fa619 100644 --- a/README.md +++ b/README.md @@ -161,7 +161,7 @@ singularity build dfam-tetools.sif dfam-tetools.def ## Included software -The following software is included in the Dfam TE Tools container (version `1.86`): +The following software is included in the Dfam TE Tools container (version `1.87`): | | | | | -------------- | -------- | --- | diff --git a/container_test.sh b/container_test.sh index 7f84c01..a83b55d 100644 --- a/container_test.sh +++ b/container_test.sh @@ -1,10 +1,61 @@ -#!/bin/sh +#!/bin/bash -set -eu - -declare -A tests=( - ["rmblast"]='/opt/rmblast/bin/rmblast -help' - ["other"]='placeholder' +declare -A installation_tests=( + ["rmblast"]='/opt/rmblast/bin/rmblastn' + ["hmmr"]='/opt/hmmer/bin/nhmmer' + ["trf"]='/opt/trf' + ["repeat_scout"]='/opt/RepeatScout/RepeatScout' + ["recon"]='/opt/RECON/bin/famdef' + ["cd-hit"]='/opt/cd-hit/cd-hit' + ["genometools"]='/opt/genometools/bin/gt' + ["mafft"]='/opt/mafft/libexec/mafft/mafft-distance' + ["ninja"]='/opt/NINJA/NINJA/Ninja' + ["faToTwoBit"]='/opt/ucsc_tools/faToTwoBit' + ["twoBitInfo"]='/opt/ucsc_tools/twoBitInfo' + ["twoBitToFa"]='/opt/ucsc_tools/twoBitToFa' + ["coseg"]='/opt/coseg/coseg' ) -echo "${tests[other]}" -for test in "${!tests[@]}"; do echo "$test - ${tests[$test]}"; done \ No newline at end of file + +run_installation_test () { + test="$1" + if ldd "${installation_tests[$test]}" | grep -q 'not found' + then + echo " - $test ERROR" + else + echo " - $test is installed correctly" + fi +} + +echo 'Running Installation Tests' +for test in "${!installation_tests[@]}"; do run_installation_test $test; done + +# TODO - test outputs of installed programs +# declare -A functional_tests=( +# ["rmblast"]='placeholder' +# ["hmmr"]='placeholder' +# ["trf"]='placeholder' +# ["repeat_scout"]='placeholder' +# ["recon"]='placeholder' +# ["cd-hit"]='placeholder' +# ["genometools"]='placeholder' +# ["ltr_retriever"]='placeholder' +# ["mafft"]='placeholder' +# ["ninja"]='placeholder' +# ["faToTwoBit"]='placeholder' +# ["twoBitInfo"]='placeholder' +# ["twoBitToFa"]='placeholder' +# ["coseg"]='placeholder' +# ["repeatmasker"]='placeholder' +# ["repeatmodeler"]='placeholder' +# ) +# run_functional_test () { +# test="$1" +# if placeholder +# then +# echo "$test" "error" +# else +# echo "$test" "is working" +# fi +# } +# echo 'Running Functional Tests' +# for test in "${!functional_tests[@]}"; do run_functional_test $test; done \ No newline at end of file diff --git a/dfam-tetools.sh b/dfam-tetools.sh index c7baa3d..7da338c 100755 --- a/dfam-tetools.sh +++ b/dfam-tetools.sh @@ -31,7 +31,7 @@ programs are available, singularity is preferred." ## Parse command-line arguments ## -container="dfam/tetools:1.86" +container="dfam/tetools:1.87" use_docker=0 use_singularity=0 diff --git a/releasing.md b/releasing.md index cb7b885..29f63d1 100644 --- a/releasing.md +++ b/releasing.md @@ -14,6 +14,7 @@ 3. Build the container (see `README.md`) * Use the tag `dfam/tetools:dev` 4. Test the container + * `container_test.sh` will run as the last step of the build 5. Commit and tag in git as x.y * run `git tag -a x.y` 6. Tag the container (in docker) as `:x`, `:x.y`, and `:latest`