Skip to content

Commit

Permalink
Merge pull request #292 from wtsi-npg/devel
Browse files Browse the repository at this point in the history
pull from devel to master to create Release 3.21.0
  • Loading branch information
jmtcsngr authored Dec 1, 2023
2 parents d6eb44d + 9bb2c2a commit 193e034
Show file tree
Hide file tree
Showing 4 changed files with 45 additions and 13 deletions.
35 changes: 27 additions & 8 deletions .github/workflows/run-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,34 @@ jobs:
include:
- perl: "5.22.4"
irods: "4.2.7"
client_image: "ghcr.io/wtsi-npg/ub-18.04-irods-clients-4.2.11:latest"
client_image: "ghcr.io/wtsi-npg/ub-16.04-irods-clients-4.2.7:latest"
server_image: "ghcr.io/wtsi-npg/ub-16.04-irods-4.2.7:latest"
experimental: false
- perl: "5.22.4"
irods: "4.2.11"
client_image: "ghcr.io/wtsi-npg/ub-18.04-irods-clients-4.2.11:latest"
server_image: "ghcr.io/wtsi-npg/ub-18.04-irods-4.2.11:latest"
experimental: false
- perl: "5.34.1"
irods: "4.2.11"
client_image: "ghcr.io/wtsi-npg/ub-18.04-irods-clients-4.2.11:latest"
server_image: "ghcr.io/wtsi-npg/ub-18.04-irods-4.2.11:latest"
experimental: false
- perl: "5.22.4"
irods: "4.2.12"
client_image: "ghcr.io/wtsi-npg/ub-18.04-irods-clients-4.2.12:latest"
server_image: "ghcr.io/wtsi-npg/ub-18.04-irods-4.2.12:latest"
experimental: false
- perl: "5.22.4"
irods: "4.3.1"
client_image: "ghcr.io/wtsi-npg/ub-22.04-irods-clients-4.3.1:latest"
server_image: "ghcr.io/wtsi-npg/ub-22.04-irods-4.3.1:latest"
experimental: false
- perl: "5.22.4"
irods: "4.3.0"
client_image: "ghcr.io/wtsi-npg/ub-22.04-irods-clients-4.3-nightly:latest"
server_image: "ghcr.io/wtsi-npg/ub-22.04-irods-4.3-nightly:latest"
experimental: true

services:
irods-server:
Expand All @@ -49,6 +64,13 @@ jobs:
--health-retries 6
steps:
- name: "Set environmental variables based on other environmental variables"
run: |
echo "SINGULARITY_CACHEDIR=$HOME/.singularity-cache" >> $GITHUB_ENV
# '~' in SINGULARITY_CACHEDIR value (from say a env: section in this YAML) is not expanded by
# singularity so that paths used are misleading/unclear
- uses: actions/checkout@v3

- name: "Install OS dependencies"
Expand All @@ -74,24 +96,21 @@ jobs:
- name: "Cache Singularity images"
uses: actions/cache@v3
with:
path: ${{ github.workspace }}/.singularity-cache
path: ${{ env.SINGULARITY_CACHEDIR }}
key: ${{ runner.os }}-singularity

- name: "Install iRODS client wrappers"
env:
DOCKER_IMAGE: ${{ matrix.client_image }}
PREFIX: ${{ github.workspace }}
SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity-cache
run: |
# Use -s option for the wrappers to enable re-usable service instances
singularity exec docker://$DOCKER_IMAGE singularity-wrapper -s -p $PREFIX install
echo "$PREFIX/bin" >> $GITHUB_PATH
# Install is to HOME rather than workspace to avoid clashes with repo e.g. in bin/
singularity exec docker://$DOCKER_IMAGE singularity-wrapper -s -p $HOME/.local install
echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: "Configure iRODS clients"
env:
DOCKER_IMAGE: ${{ matrix.client_image }}
PREFIX: ${{ github.workspace }}
SINGULARITY_CACHEDIR: ${{ github.workspace }}/.singularity-cache
run: |
mkdir -p "$HOME/.irods"
cat <<'EOF' > "$HOME/.irods/irods_environment.json"
Expand Down
12 changes: 12 additions & 0 deletions Changes
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
Release 3.21.0

- Add iRODS 4.3.1 Ubuntu 22.04 as a required test target
- Handle optional rodsadmin group
- Update test matrix iRODS versions
Remove the combination of 4.2.11 clients with a 4.2.7 server
Add the combination of 4.2.7 clients with a 4.2.7 server
Add the combination of 4.3-nightly clients with a 4.3-nightly server
- GHA: move irods client deployment and singularity cache to HOME
instead of workspace/ repo checkout dir.
- Add Perl 5.34 to CI matrix

Release 3.20.0
- Add iquest wrapper

Expand Down
7 changes: 4 additions & 3 deletions t/lib/WTSI/NPG/iRODS/GroupAdminTest.pm
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ my $have_admin_rights =
my $group_prefix = 'ss_';

# Groups to be added to the test iRODS
my @irods_groups = map { $group_prefix . $_ } (0 .. 100);
my @irods_groups = map { $group_prefix . $_ } (0 .. 5);
my @irods_users = qw(user_foo user_bar);

my $test_irods = WTSI::NPG::iRODS->new(environment => \%ENV,
Expand Down Expand Up @@ -76,8 +76,9 @@ sub lg : Test(5) {
skip 'No admin rights to create test groups', 2;
}

my @observed_groups = sort $iga->lg;
my @expected_groups = sort ('public', 'rodsadmin', @irods_groups);
# Ignore the rodsadmin group as it is not present in iRODS >4.3.0
my @observed_groups = sort grep { $_ ne 'rodsadmin' } $iga->lg;
my @expected_groups = sort ('public', @irods_groups);
is_deeply(\@observed_groups, \@expected_groups, 'Expected groups found') or
diag explain \@observed_groups;

Expand Down
4 changes: 2 additions & 2 deletions t/lib/WTSI/NPG/iRODSTest.pm
Original file line number Diff line number Diff line change
Expand Up @@ -231,14 +231,14 @@ sub list_groups : Test(1) {
my $irods = WTSI::NPG::iRODS->new(environment => \%ENV,
strict_baton_version => 0);

ok(grep { /^rodsadmin$/ } $irods->list_groups, 'Listed the rodsadmin group');
ok(grep { /^public/ } $irods->list_groups, 'Listed the public group');
}

sub group_exists : Test(2) {
my $irods = WTSI::NPG::iRODS->new(environment => \%ENV,
strict_baton_version => 0);

ok($irods->group_exists('rodsadmin'), 'The rodsadmin group exists');
ok($irods->group_exists('public'), 'The public group exists');
ok(!$irods->group_exists('no_such_group'), 'An absent group does not exist');
}

Expand Down

0 comments on commit 193e034

Please sign in to comment.