diff --git a/LifeSciences/gatk-4.0.0.0/build.sh b/LifeSciences/gatk-4.0.0.0/build.sh new file mode 100644 index 0000000000000000000000000000000000000000..8e280c9f6d0a3a6d14b64e58d8f74fbe0520c1dc --- /dev/null +++ b/LifeSciences/gatk-4.0.0.0/build.sh @@ -0,0 +1,71 @@ +#!/bin/bash +if [[ $# -ne 2 ]]; then + echo "The format is as follows:" + echo "bash build.sh buildpath installpath" + echo ":param buildpath: 应用构建绝对路径" + echo ":param installpath: 应用安装绝对路径" + exit 1 +fi + +[[ ! "$1" =~ ^/.* || "$1" = "/" ]] && echo "请输入正确的构建路径" && exit 1 +[[ ! "$2" =~ ^/.* || "$2" = "/" ]] && echo "请输入正确的安装路径" && exit 1 + +create_dir() +{ + local path=$1 + [[ "$path" =~ .*/$ ]] && path=${path%/*} + if [[ ! -d "$path" && ! -f "$path" ]]; then mkdir -p $path; else path=$path`date "+%y%m%d%H%M%S"` && mkdir -p $path; fi + echo $path +} + +buildpath=$(create_dir $1) +installpath=$(create_dir $2) + +yum install -y m4 environment-modules systemd-devel +source /etc/profile +module purge + +set -e +dep_dir="dependency" + +bash $dep_dir/bisheng-compiler-2.1.0.sh $buildpath $installpath +module use $installpath/bisheng-compiler-2.1.0 +module load $installpath/bisheng-compiler-2.1.0/bisheng_modulefiles + + +bash $dep_dir/blat-35.1.sh $buildpath $installpath +module use $installpath/blat-35.1 +module load $installpath/blat-35.1/blat_modulefiles + + +bash $dep_dir/bwa-0.7.17.sh $buildpath $installpath +module use $installpath/bwa-0.7.17 +module load $installpath/bwa-0.7.17/bwa_modulefiles + +bash $dep_dir/samtools-1.15.1.sh $buildpath $installpath +module use $installpath/samtools-1.15.1 +module load $installpath/samtools-1.15.1/samtools_modulefiles + +bash $dep_dir/bisheng-jdk1.8.0.sh $buildpath $installpath +module use $installpath/bisheng-jdk1.8.0_322 +module load $installpath/bisheng-jdk1.8.0_322/jdk_modulefiles + +bash gatk-4.0.0.0.sh $buildpath $installpath + +mkdir -p pkg/gatk-4.0.0.0-hpc && cp -r $installpath/* pkg/gatk-4.0.0.0-hpc/ +cat>"pkg/gatk-4.0.0.0-hpc/run.sh"< /dev/null +current_dir="\$(cd "\$(dirname "\${BASH_SOURCE[0]}")" && pwd -P)" +for f in "\${current_dir}"/*; do + if [[ -d "\${f}" && -f "\$(ls "\${f}"/*modulefiles 2>&1)" ]]; then + module use "\${f}" && module load "\${f}"/*modulefiles + fi +done +echo -e "\033[1;32;1mgatk environment initialization completed.\033[0m" +EOF + + +cd pkg/ && tar zcvf gatk-4.0.0.0-hpc.tar.gz gatk-4.0.0.0-hpc +rm -rf $buildpath $installpath diff --git a/LifeSciences/gatk-4.0.0.0/dependency/bisheng-compiler-2.1.0.sh b/LifeSciences/gatk-4.0.0.0/dependency/bisheng-compiler-2.1.0.sh new file mode 100644 index 0000000000000000000000000000000000000000..a9f267c24cff4c3d2b8084cdc19684cfc8b0ec0b --- /dev/null +++ b/LifeSciences/gatk-4.0.0.0/dependency/bisheng-compiler-2.1.0.sh @@ -0,0 +1,42 @@ +#!/bin/bash + +if [[ $# -ne 2 ]]; then + echo "The format is as follows:" + echo "bash bisheng-compiler-2.1.0.sh buildpath installpath" + echo ":param buildpath: 应用构建绝对路径" + echo ":param installpath: 应用安装绝对路径" + exit 1 +fi + +[[ ! "$1" =~ ^/.* || ! -d "$1" || "$1" = "/" ]] && echo "请输入正确的构建路径" && exit 1 +[[ ! "$2" =~ ^/.* || ! -d "$2" || "$2" = "/" ]] && echo "请输入正确的安装路径" && exit 1 + +buildpath=$1 +installpath=$2 +[[ "$buildpath" =~ .*/$ ]] && buildpath=${buildpath%/*} +[[ "$installpath" =~ .*/$ ]] && installpath=${installpath%/*} +[[ "$buildpath" == "$installpath" ]] && echo "构建路径与安装路径需为不同路径" && exit 1 +set -e +yum install -y wget tar environment-modules libatomic + +wget -t 10 -c -P $buildpath https://mirrors.huaweicloud.com/kunpeng/archive/compiler/bisheng_compiler/bisheng-compiler-2.1.0-aarch64-linux.tar.gz +tar xf $buildpath/bisheng-compiler-2.1.0-aarch64-linux.tar.gz -C $buildpath && rm -rf $buildpath/bisheng-compiler-2.1.0-aarch64-linux.tar.gz +mkdir -p $installpath/bisheng-compiler-2.1.0 && cp -r $buildpath/bisheng-compiler-2.1.0-aarch64-linux/* $installpath/bisheng-compiler-2.1.0/ + +cat>"$installpath/bisheng-compiler-2.1.0/bisheng_modulefiles"<$installpath/bisheng-jdk1.8.0_322/jdk_modulefiles<"$installpath/blat-35.1/blat_modulefiles"<"$installpath/bwa-0.7.17/bwa_modulefiles"<"$installpath/samtools-1.15.1/samtools_modulefiles"<"$installpath/gatk-4.0.0.0/gatk_modulefiles"<