11
11
shell : bash -l -e -o pipefail {0}
12
12
13
13
env :
14
- PERL_CACHE : ~/perl5 # Perlbrew and CPAN modules installed here, cached
15
- NPG_LIB : ~/perl5npg # NPG modules installed here, not cached
16
- WSI_CONDA_CHANNEL : " https://dnap.cog.sanger.ac.uk/npg/conda/devel/generic"
14
+ PERL_CACHE : $HOME/perl5 # Perlbrew and CPAN modules installed here, cached
15
+ NPG_LIB : $HOME/perl5npg # NPG modules installed here, not cached
16
+ WSI_CONDA_CHANNEL : https://dnap.cog.sanger.ac.uk/npg/conda/devel/generic
17
+ CONDA_HOME : $HOME/conda
17
18
CONDA_TEST_ENV : test-environment
18
19
WTSI_NPG_GITHUB_URL : https://github.com/wtsi-npg
19
20
WTSI_NPG_BUILD_BRANCH : ${{ github.base_ref || github.ref }}
24
25
25
26
steps :
26
27
- uses : actions/checkout@v4
28
+ with :
29
+ fetch-depth : ' 0'
27
30
28
31
- name : " Install OS dependencies"
29
32
run : |
@@ -32,22 +35,32 @@ jobs:
32
35
sudo apt-get remove -y nginx libgd3
33
36
sudo apt-get install -y libgd-dev uuid-dev libgd-text-perl
34
37
35
- - name : " Initialize Miniconda "
38
+ - name : " Install Miniforge "
36
39
run : |
37
- echo 'source $CONDA/etc/profile.d/conda.sh' >> "$HOME/.bash_profile"
40
+ CONDA_HOME=${{ env.CONDA_HOME }} ./scripts/install_miniforge.sh
41
+ echo 'source "${{ env.CONDA_HOME }}/etc/profile.d/conda.sh"' >> "$HOME/.bash_profile"
42
+
43
+ - name : " Cache Conda"
44
+ id : miniforgeCache
45
+ uses : actions/cache@v4
46
+ with :
47
+ path : |
48
+ ${{ env.CONDA_HOME }}/pkgs
49
+ ${{ env.CONDA_HOME }}/envs
50
+ key : ${{ runner.os }}-build-miniforge
38
51
39
52
- name : " Install Conda packages"
40
53
run : |
41
- conda config --prepend pkgs_dirs ~/conda /pkgs
42
- conda config --prepend envs_dirs ~/conda /envs
54
+ conda config --prepend pkgs_dirs ${{ env.CONDA_HOME }} /pkgs
55
+ conda config --prepend envs_dirs ${{ env.CONDA_HOME }} /envs
43
56
44
57
conda config --set auto_update_conda False
45
- conda config --prepend channels "$WSI_CONDA_CHANNEL"
58
+ conda config --prepend channels "${{ env. WSI_CONDA_CHANNEL }} "
46
59
conda info
47
60
48
- conda create -y -n "$CONDA_TEST_ENV"
49
- conda install -y -n "$CONDA_TEST_ENV" baton
50
- conda install -y -n "$CONDA_TEST_ENV" samtools
61
+ conda create -y -n "${{ env. CONDA_TEST_ENV }} "
62
+ conda install -y -n "${{ env. CONDA_TEST_ENV }} " baton
63
+ conda install -y -n "${{ env. CONDA_TEST_ENV }} " samtools
51
64
52
65
- name : " Cache Perl"
53
66
id : cache-perl
@@ -77,14 +90,14 @@ jobs:
77
90
- name : " Install Perl dependencies"
78
91
run : |
79
92
cpanm --local-lib=${{ env.PERL_CACHE }} local::lib
80
- eval $(perl -I ${{ env.PERL_CACHE }}/lib/perl5/ -Mlocal::lib="$NPG_LIB")
93
+ eval $(perl -I ${{ env.PERL_CACHE }}/lib/perl5/ -Mlocal::lib="${{ env. NPG_LIB }} ")
81
94
eval $(perl -I ${{ env.PERL_CACHE }}/lib/perl5/ -Mlocal::lib)
82
95
83
96
cpanm --quiet --notest Module::Build
84
97
cpanm --quiet --notest Net::SSLeay
85
98
cpanm --quiet --notest https://github.com/chapmanb/vcftools-cpan/archive/v0.953.tar.gz
86
99
87
- ./scripts/install_wsi_dependencies.sh "$NPG_LIB" \
100
+ ./scripts/install_wsi_dependencies.sh "${{ env. NPG_LIB }} " \
88
101
perl-dnap-utilities \
89
102
perl-irods-wrap \
90
103
ml_warehouse \
@@ -98,23 +111,23 @@ jobs:
98
111
- name : " Log install failure"
99
112
if : ${{ failure() }}
100
113
run : |
101
- find ~ /.cpanm/work -cmin -1 -name '*.log' -exec tail -n20 {} \;
114
+ find $HOME /.cpanm/work -cmin -1 -name '*.log' -exec tail -n20 {} \;
102
115
103
116
- name : " Archive CPAN logs on failure"
104
117
if : ${{ failure() }}
105
118
uses : actions/upload-artifact@v4
106
119
with :
107
120
name : cpan_log
108
- path : ~ /.cpanm/work/*/build.log
121
+ path : $HOME /.cpanm/work/*/build.log
109
122
retention-days : 5
110
123
111
124
- name : " Run tests"
112
125
run : |
113
- conda activate "$CONDA_TEST_ENV"
126
+ conda activate "${{ env. CONDA_TEST_ENV }} "
114
127
conda info --envs
115
128
116
129
eval $(perl -I ${{ env.PERL_CACHE }}/lib/perl5/ -Mlocal::lib)
117
- eval $(perl -I ${{ env.PERL_CACHE }}/lib/perl5/ -Mlocal::lib="$NPG_LIB")
130
+ eval $(perl -I ${{ env.PERL_CACHE }}/lib/perl5/ -Mlocal::lib="${{ env. NPG_LIB }} ")
118
131
119
132
export TEST_AUTHOR=1
120
133
perl Build.PL
0 commit comments