diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 282dd4e..8eace92 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -78,10 +78,14 @@ jobs: run: | perl -v - - name: Customize environment + - name: Install support modules + continue-on-error: true run: | cpanm -v cpanm File::HomeDir Getopt::Long version + + - name: Customize environment + run: | perl .github/workflows/environment.PL - name: Display local envoronment variables diff --git a/.github/workflows/environment.PL b/.github/workflows/environment.PL index 7422f5f..9df12d2 100644 --- a/.github/workflows/environment.PL +++ b/.github/workflows/environment.PL @@ -5,7 +5,6 @@ use 5.006002; use strict; use warnings; -use File::HomeDir; use Getopt::Long; use version; @@ -45,8 +44,21 @@ sub compute_environment { dos => 1, }->{$^O} || ''; my $is_unix = $is_windows ? '' : 1; + my $my_home; + { + local $@ = undef; + eval { + require File::HomeDir; + $my_home = File::HomeDir->my_home(); + print "Home from File::HomeDir\n"; + 1; + } or do { + $my_home = $ENV{HOME}; + print "Home from \$HOME\n"; + }; + } my %env = ( - MY_HOME => File::HomeDir->my_home(), + MY_HOME => $my_home, MY_IS_GITHUB_ACTION => 1, MY_IS_UNIX => $is_unix, MY_IS_WINDOWS => $is_windows,