EESSI / filesystem-layer

Filesystem layer of the EESSI project
https://eessi.github.io/docs/filesystem_layer
GNU General Public License v2.0
7 stars 17 forks source link

Fix CI issues with Ubuntu 18.04 and CentOS 8 containers, and with macOS CVMFS tests #116

Closed bedroge closed 2 years ago

bedroge commented 2 years ago

CentOS 8 is not supported anymore, so I've replaced it by a Rocky container. The Ubuntu 18.04 container had issues with installing ansible's dependency markupsafe (see: https://github.com/pallets/markupsafe/issues/285), so I fixed that by first upgrading pip.

bedroge commented 2 years ago

@boegel I reproduced the issue on an AWS macOS VM:

# This is the command that we use in our workflow:
ec2-user@ip-172-31-23-144 ~ % sudo mount -t cvmfs pilot.eessi-hpc.org /Users/Shared/cvmfs/pilot.eessi-hpc.org
Failed loading macFUSE
mount: /Users/Shared/cvmfs/pilot.eessi-hpc.org failed with 1

# The CVMFS code tries to run the following command, which (silently) fails:
# (see: https://github.com/cvmfs/cvmfs/blob/devel/mount/mount.cvmfs.cc#L76)
ec2-user@ip-172-31-23-144 ~ % /Library/Filesystems/macfuse.fs/Contents/Resources/load_macfuse             
ec2-user@ip-172-31-23-144 ~ % echo $?
1

# Alternative way of loading the kernel extension from the CLI:
ec2-user@ip-172-31-23-144 ~ % sudo kextload /Library/Filesystems/macfuse.fs/Contents/Extensions/11/macfuse.kext
Executing: /usr/bin/kmutil load -p /Library/Filesystems/macfuse.fs/Contents/Extensions/11/macfuse.kext
Error Domain=KMErrorDomain Code=27 "Extension with identifiers io.macfuse.filesystems.macfuse not approved to load. Please approve using System Preferences." UserInfo={NSLocalizedDescription=Extension with identifiers io.macfuse.filesystems.macfuse not approved to load. Please approve using System Preferences.}

I could only find ways of approving this using a graphical installation or using the recovery mode of the OS. There's lots of discussion about this issue, for instance here: https://github.com/osxfuse/osxfuse/issues/828

I've now switched our runner from macos-latest to macos-10.15, and now it seems to work fine. So let's stick to macOS 10 for now?