As I'm working with patient data (level 4 data) we're on a secure Linux compute cluster where, for security reasons, it is not possible to make outbound connections to the internet.
Originally I had tried building from source, however, I ran into major issues with the installation of a particular Perl dependency (see notes at bottom) therefore I would like to run the Docker container for TypeTE but not sure if it's ready or not?
me not knowing how to use the container
sudo docker pull cgoubert/typete
sudo docker run -it --entrypoint /home/TypeTE/softwares/TypeTE/ cgoubert/typete run_TypeTE_NRef.sh &> TypeTE.log &
Doesn't look running this container would be straight-forward, so if it's functional some documentation would be greatly helpful.
Issues with building from source
As I have no outbound connection to the internet I cannot use pip to download Perl modules. After downloading/installing all the dependencies listed I ran typeTE and recieved errors about missing Perl module Bio::SeqIO so I have to do the following.
First, I grab the link for the module from meta::cpan website on a laptop with internet connection.
wget https://cpan.metacpan.org/authors/id/C/CJ/CJFIELDS/BioPerl-1.7.8.tar.gz
Then I transfer this to the secure computing environment into my perl5 directory and tar zxvf BioPerl-1.7.8.tar.gz && cd BioPerl, followed by building perl Makefile.PL. I will then verify the installation with perl -e "use Bio::SeqIO (if I don't see errors that means it's installed).
[moldach@marc TypeTE-Test]$ perl -e "use Bio::SeqIO;"
[moldach@marc TypeTE-Test]$
Next try to run typeTE again but I get an error about String::Approx so I follow the same method described, followed by perl -e "use String::Approx qw(amatch);" - things appear to be installed:
[moldach@marc TypeTE-Test]$ perl -e "use String::Approx qw(amatch);"
[moldach@marc TypeTE-Test]$
I add both the perl -e statements now to the top of my batch script and try to run typeTE and here is where the odd behavior is happening:
Script
#!/bin/bash
#SBATCH --job-name=typeTE_test # Job name
#SBATCH --mail-type=END,FAIL # Mail events (NONE, BEGIN, END, FAIL, ALL)
#SBATCH --mail-user=moldach@ucalgary.ca # Where to send mail
#SBATCH --ntasks=1 #Run on a single CPU
#SBATCH --cpus-per-task=1 # How many cores?
#SBATCH --mem-per-cpu=1G
#SBATCH --output=typeTE_test_%j.log # Standard output and error log
#SBATCH --error=typeTE_test_%j.err # Error log
#SBATCH --time=01:00:00
pwd; hostname; date
perl -e "use Bio::Seq"
perl -e "use String::Approx"
#bash run_TypeTE_Ref.sh
date
As you can see I've commented out the run_TypeTE_Ref.sh script and the first call to Bio::Seq runs successfully without error; however, the call to String::Approx throws an error.
Error
Can't locate String/Approx.pm in @INC (you may need to install the String::Approx module) (@INC contains: /project/M-mtgraovac182840/perl5-matt/lib/perl5 /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
Albeit, not directly a typeTE issue, this issue with the String::Approx Perl module dependency in the linchpin preventing me from using this tool.
While we are fairly new to working in this restrictive environment I have successfully installed 15 other Perl modules into /project/M-mtgraovac182840/perl5-matt/, by running the install process described above (e.g. tar ... && cd ... && perl Makefile.pl)
As I'm working with patient data (level 4 data) we're on a secure Linux compute cluster where, for security reasons, it is not possible to make outbound connections to the internet.
Originally I had tried building from source, however, I ran into major issues with the installation of a particular Perl dependency (see notes at bottom) therefore I would like to run the Docker container for TypeTE but not sure if it's ready or not?
me not knowing how to use the container
Doesn't look running this container would be straight-forward, so if it's functional some documentation would be greatly helpful.
Issues with building from source
As I have no outbound connection to the internet I cannot use
pipto downloadPerlmodules. After downloading/installing all the dependencies listed I rantypeTEand recieved errors about missing Perl moduleBio::SeqIOso I have to do the following.First, I grab the link for the module from
meta::cpanwebsite on a laptop with internet connection.Then I transfer this to the secure computing environment into my
perl5directory andtar zxvf BioPerl-1.7.8.tar.gz && cd BioPerl, followed by buildingperl Makefile.PL. I will then verify the installation withperl -e "use Bio::SeqIO(if I don't see errors that means it's installed).Next try to run
typeTEagain but I get an error aboutString::Approxso I follow the same method described, followed byperl -e "use String::Approx qw(amatch);"- things appear to be installed:I add both the
perl -estatements now to the top of my batch script and try to runtypeTEand here is where the odd behavior is happening:Script
As you can see I've commented out the
run_TypeTE_Ref.shscript and the first call toBio::Seqruns successfully without error; however, the call toString::Approxthrows an error.Error
Albeit, not directly a
typeTEissue, this issue with theString::ApproxPerlmodule dependency in the linchpin preventing me from using this tool.While we are fairly new to working in this restrictive environment I have successfully installed 15 other Perl modules into
/project/M-mtgraovac182840/perl5-matt/, by running the install process described above (e.g.tar ... && cd ... && perl Makefile.pl)