From 794c2798cfb28f848cebef2899d72ad788c85207 Mon Sep 17 00:00:00 2001 From: "Roger J. A. Duthie" <343584+rjaduthie@users.noreply.github.com> Date: Wed, 8 Apr 2026 10:35:35 +0100 Subject: [PATCH 1/5] Revise README for installation and usage instructions Updated installation instructions and added unmount section. --- README.md | 94 ++++++++++++---------------- SERVER-CONFIGURATION.md | 131 +++++++++++++++++++--------------------- 2 files changed, 100 insertions(+), 125 deletions(-) diff --git a/README.md b/README.md index b6ca895..cc06741 100644 --- a/README.md +++ b/README.md @@ -1,86 +1,70 @@ # Path Finder -A Rust implementation of the SKA path finder tool for authentication, locating & mounting data from the SKA storage system within a Slurm login host. +A Rust implementation of the SKA path finder tool for authentication, locating & mounting data from the SKA storage system within a Slurm login host. It provides a single binary and an RPM installer. -## System Requirements +Features: -For instructions on the setup & requirements for your HPC Server side environment see [pathFinder - Server Configuration](./SERVER-CONFIGURATION.md) +- OAuth2 device code flow authentication +- Data location lookup via Data Management API +- Site capabilities verification via Site Capabilities API +- Secure data mounting with proper permissions +## Installation +For instructions on the setup & requirements for your HPC Server environment, see the [server configuration doc](./SERVER-CONFIGURATION.md) ## Usage -**Note**: The tool will automatically check if the file exists locally at the local RSE `/skadata`. If the file is not found locally, it will display the sites where the file is available and prompt you to ensure the data has been staged to your local site before mounting. - ### Mount Data -The `pathFinder` command is available to run on the CLI after logging into the Slurm login node. The command needs to be run as `sudo` because it is mounting data, users in the `pathfinder` group are granted `sudo` privileges to execute the `pathFinder` executable. - -#### Usage +The `pathFinder` command is available to run on the CLI after logging into the Slurm login node. The command needs to be run as `sudo` because it is mounting data, users in the `pathfinder` group are granted `sudo` privileges to execute the `pathFinder` executable. -``` -$ sudo pathFinder --help + $ sudo pathFinder --help -A tool for finding SKA data paths for mounting purposes + A tool for finding SKA data paths for mounting purposes -Usage: pathFinder [OPTIONS] --namespace --file-name + Usage: pathFinder [OPTIONS] --namespace --file-name -Options: - --namespace Namespace of the data - --file-name Name of the data file - --no-login Do not use OAuth2 for authentication - use environment variables instead - --unmount Unmount previously mounted data instead of mounting - -h, --help Print help -``` + Options: + --namespace Namespace of the data + --file-name Name of the data file + --no-login Do not use OAuth2 for authentication - use environment variables instead + --unmount Unmount previously mounted data instead of mounting + -h, --help Print help #### OAUTH Authentication -Example using SKAIAM OAuth2 (required). +Example using SKAIAM OAuth2: -``` -$ sudo pathFinder --namespace daac --file-name simple_file.txt + $ sudo pathFinder --namespace daac --file-name simple_file.txt -Authenticating with OAuth2... -Cached tokens expired + Authenticating with OAuth2... + Cached tokens expired -ACTION REQUIRED: - Open this URL in a browser and authenticate: https://ska-iam.stfc.ac.uk/device?user_code=KNIBUH + ACTION REQUIRED: + Open this URL in a browser and authenticate: https://ska-iam.stfc.ac.uk/device?user_code=KNIBUH -Waiting for authentication (timeout: 5 minutes)... -Tokens cached for 3600 seconds -Authentication successful! -RSE Path for file 'simple_file.txt' in namespace 'daac': /daac/14/66/simple_file.txt -Mount verification successful: simple_file.txt is mounted at /home/sm2921/projects/daac/simple_file.txt -``` + Waiting for authentication (timeout: 5 minutes)... + Tokens cached for 3600 seconds + Authentication successful! + RSE Path for file 'simple_file.txt' in namespace 'daac': /daac/14/66/simple_file.txt + Mount verification successful: simple_file.txt is mounted at /home/sm2921/projects/daac/simple_file.txt -#### Token Authentication +#### Authentication using environment variables -Example with environment variables (for automation): +Example with environment variables (e.g. for automation): -``` -$ export DATA_MANAGEMENT_ACCESS_TOKEN="your_token_here" -$ export SITE_CAPABILITIES_ACCESS_TOKEN="your_token_here" -$ sudo pathFinder --namespace daac --file-name simple_file.txt -``` + export DATA_MANAGEMENT_ACCESS_TOKEN="your_token_here" + export SITE_CAPABILITIES_ACCESS_TOKEN="your_token_here" + sudo pathFinder --namespace daac --file-name simple_file.txt --no-login #### Unmounting Data -Example for unmounting a file. - -``` -$ sudo pathFinder --namespace daac --file-name simple_file.txt --unmount -Unmounted simple_file.txt from /home/sm2921/projects/daac/simple_file.txt -``` - -#### RPM Package - -The binary and RPM are built and published at [pathFinder GitHub release](https://github.com/uksrc/pathFinder/releases). - -Check your current release with : - -``` -dnf info pathFinder -``` +Example for unmounting a file: + $ sudo pathFinder --namespace daac --file-name simple_file.txt --unmount + Unmounted simple_file.txt from /home/sm2921/projects/daac/simple_file.txt +## Development +Notes on development can be found in the [development doc](DEVELOPMENT.md). diff --git a/SERVER-CONFIGURATION.md b/SERVER-CONFIGURATION.md index 85cc6b9..40c68df 100644 --- a/SERVER-CONFIGURATION.md +++ b/SERVER-CONFIGURATION.md @@ -1,4 +1,4 @@ -# pathFinder - Server Configuration # +# pathFinder - Server Configuration pathFinder is a tool for mounting SKA data on Slurm clusters without copying the data locally. @@ -8,96 +8,87 @@ Two methods are planned, interactive and a workflow managed by the Science Gatew This documentation covers the prerequisites to setup on the underlying configuration on a Slurm cluster using a Ceph file-system and the installation of the pathFinder tool. -## Pre-requisites ## +## Pre-requisites -The following requirements must be met. +The following requirements must be met. (Note these are for Rocky 9.x releases and have not been tested on RHEL 10.x or Ubuntu) - - CRB Enabled + - CRB Enabled - RHEL EPEL (Extra Packages) - BindFS - Ceph Common -## Server Side Configuration ## +## Server Side Configuration The configuration is only required on the Login node of your Slurm cluster, this assumes that all your user home directories are CephFS/NFS mount points. If you already have EPEL enabled you can skip the next 2 steps. -1. Enable CRB - -``` -crb status -crb enable -``` - -2. Install EPEL -``` -sudo dnf install epel-release -sudo dnf repolist -``` - -3. Configure your Ceph Keyring - -``` -vi /etc/ceph/ceph.client.rucio_prod_ro.keyring -``` -Add your Access key. -``` -[client.rucio_prod_ro] -key = **************************** -``` - -4. Create mountpoints, this MUST be owned by root with permissions of 550 & 700. -``` -sudo mkdir /skadata /mnt/private_mounts/skadata -sudo chmod 550 /skadata -sudo chmod 700 /mnt/private_mounts/skadata -``` - -5. Add the following entries to the **/etc/fstab** file. The `/mnt/private_mounts` is used to hide the owner & group of the mounted file-system, so all files under `/skadata` are presented as `root root` for owner and group and hides the real owner **uid/gid** which would typically be the xrootd, Webdav & Storm user uid/gid. -``` -# Ceph mount -10.4.200.9:6789,10.4.200.13:6789,10.4.200.13:6789,10.4.200.17:6789,10.4.200.25:6789,10.4.200.26:6789:/volumes/_nogroup/a8af40e8-6412-44da-ad08-3731fdf19258/4945e5c2-aab7-4416-9b75-666f2af512d7 /skadata ceph name=rucio_prod_ro,x-systemd.device-timeout=30,x-systemd.mount-timeout=30,noatime,_netdev,ro,nodev,nosuid 0 2 -# Bindfs mount -/mnt/private_mounts/skadata /skadata fuse.bindfs force-user=root,force-group=root 0 0 -``` +1. Enable CRB: + + crb status + crb enable + +2. Install EPEL: + + sudo dnf install epel-release + sudo dnf repolist + +3. Configure your Ceph Keyring: + + vi /etc/ceph/ceph.client.rucio_prod_ro.keyring + +Add your Access key: + + [client.rucio_prod_ro] + key = **************************** + +4. Create mountpoints, this MUST be owned by root with permissions of 550 & 700: + + sudo mkdir /skadata /mnt/private_mounts/skadata + sudo chmod 550 /skadata + sudo chmod 700 /mnt/private_mounts/skadata + +5. Add the following entries to the **/etc/fstab** file. The `/mnt/private_mounts` is used to hide the owner & group of the mounted file-system, so all files under `/skadata` are presented as `root root` for owner and group and hides the real owner **uid/gid** which would typically be the xrootd, Webdav & Storm user uid/gid: + + # Ceph mount + 10.4.200.9:6789,10.4.200.13:6789,10.4.200.13:6789,10.4.200.17:6789,10.4.200.25:6789,10.4.200.26:6789:/volumes/_nogroup/a8af40e8-6412-44da-ad08-3731fdf19258/4945e5c2-aab7-4416-9b75-666f2af512d7 /skadata ceph name=rucio_prod_ro,x-systemd.device-timeout=30,x-systemd.mount-timeout=30,noatime,_netdev,ro,nodev,nosuid 0 2 + # Bindfs mount + /mnt/private_mounts/skadata /skadata fuse.bindfs force-user=root,force-group=root 0 0 6. Mount the /skadata mountpoints. -Note that we use bindfs here as well so all files under `/skadata` are presented as `root root` for owner and group and hides the real owner **uid/gid** which would typically be the xrootd, Webdav & Storm user uid/gid. -``` -mount -a -systemctl daemon-reload -``` +Note that we use bindfs here as well so all files under `/skadata` are presented as `root root` for owner and group and hides the real owner **uid/gid** which would typically be the xrootd, Webdav & Storm user uid/gid: + + mount -a + systemctl daemon-reload 7. Add a sudoers file to control access to the pathfinder tool. -``` -vi /etc/sudoers.d/pathFinder -``` -Using group `pathfinder` for group access for users you want to give access to. -``` -%pathfinder ALL = NOPASSWD: /usr/bin/pathfinder, /usr/bin/pathFinder -``` - -8. Add the patfinder group. -``` -groupadd pathfinder -``` - -9. Add or update the local users to their corresponding group. -``` -usermod -a -G pathfinder sm2921 -``` + + vi /etc/sudoers.d/pathFinder + +Using group `pathfinder` for group access for users you want to give access to: + + %pathfinder ALL = NOPASSWD: /usr/bin/pathfinder, /usr/bin/pathFinder + +8. Add the patfinder group: + + groupadd pathfinder + +9. Add or update the local users to their corresponding group: + + usermod -a -G pathfinder sm2921 ## pathFinder Package installation The latest version is published at [pathFinder Release](https://github.com/uksrc/pathFinder/releases) check before installing or upgrading. -Set the version and install the pathFinder package. +Set the version and install the pathFinder package: + + VERSION=1.x.x + dnf upgrade https://github.com/uksrc/pathFinder/releases/download/v1.0.0/pathfinder-${VERSION}-1.x86_64.rpm + +## pathFinder RPM package -``` -VERSION=1.x.x -dnf upgrade https://github.com/uksrc/pathFinder/releases/download/v1.0.0/pathfinder-${VERSION}-1.x86_64.rpm -``` +The RPM package for pathFinder is published as a part of a [GitHub release](https://github.com/uksrc/pathFinder/releases). From 5b4bf17110655125d62f8b0b0002254c73710d88 Mon Sep 17 00:00:00 2001 From: "Roger J. A. Duthie" <343584+rjaduthie@users.noreply.github.com> Date: Wed, 8 Apr 2026 10:35:35 +0100 Subject: [PATCH 2/5] Fix code indents and do another pass over the docs Updated installation instructions and added unmount section. --- README.md | 56 +++++++++++++------------- SERVER-CONFIGURATION.md | 88 ++++++++++++++++++++--------------------- 2 files changed, 71 insertions(+), 73 deletions(-) diff --git a/README.md b/README.md index cc06741..4c35ddd 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # Path Finder -A Rust implementation of the SKA path finder tool for authentication, locating & mounting data from the SKA storage system within a Slurm login host. It provides a single binary and an RPM installer. +**pathFinder** is a tool for mounting SKA data on Slurm clusters without copying the data locally. Currently, it is provided as a single binary or an RPM installer. It is important to prepare the Slurm cluster ahead of its use (see [Installation](#installation)). + +The tool allows the Scientist to specify which files, identified from the Science Gateway, they want to mount while keeping the files secure and owned by them. Two methods are planned: interactive and a workflow managed by the Science Gateway via prepareData. Features: @@ -11,7 +13,7 @@ Features: ## Installation -For instructions on the setup & requirements for your HPC Server environment, see the [server configuration doc](./SERVER-CONFIGURATION.md) +For instructions on the setup & requirements for your HPC Server environment, see the [server configuration](./SERVER-CONFIGURATION.md) doc. ## Usage @@ -19,52 +21,52 @@ For instructions on the setup & requirements for your HPC Server environment, se The `pathFinder` command is available to run on the CLI after logging into the Slurm login node. The command needs to be run as `sudo` because it is mounting data, users in the `pathfinder` group are granted `sudo` privileges to execute the `pathFinder` executable. - $ sudo pathFinder --help + $ sudo pathFinder --help - A tool for finding SKA data paths for mounting purposes + A tool for finding SKA data paths for mounting purposes - Usage: pathFinder [OPTIONS] --namespace --file-name + Usage: pathFinder [OPTIONS] --namespace --file-name - Options: - --namespace Namespace of the data - --file-name Name of the data file - --no-login Do not use OAuth2 for authentication - use environment variables instead - --unmount Unmount previously mounted data instead of mounting - -h, --help Print help + Options: + --namespace Namespace of the data + --file-name Name of the data file + --no-login Do not use OAuth2 for authentication - use environment variables instead + --unmount Unmount previously mounted data instead of mounting + -h, --help Print help #### OAUTH Authentication Example using SKAIAM OAuth2: - $ sudo pathFinder --namespace daac --file-name simple_file.txt + $ sudo pathFinder --namespace daac --file-name simple_file.txt - Authenticating with OAuth2... - Cached tokens expired + Authenticating with OAuth2... + Cached tokens expired - ACTION REQUIRED: - Open this URL in a browser and authenticate: https://ska-iam.stfc.ac.uk/device?user_code=KNIBUH + ACTION REQUIRED: + Open this URL in a browser and authenticate: https://ska-iam.stfc.ac.uk/device?user_code=KNIBUH - Waiting for authentication (timeout: 5 minutes)... - Tokens cached for 3600 seconds - Authentication successful! - RSE Path for file 'simple_file.txt' in namespace 'daac': /daac/14/66/simple_file.txt - Mount verification successful: simple_file.txt is mounted at /home/sm2921/projects/daac/simple_file.txt + Waiting for authentication (timeout: 5 minutes)... + Tokens cached for 3600 seconds + Authentication successful! + RSE Path for file 'simple_file.txt' in namespace 'daac': /daac/14/66/simple_file.txt + Mount verification successful: simple_file.txt is mounted at /home/sm2921/projects/daac/simple_file.txt #### Authentication using environment variables Example with environment variables (e.g. for automation): - export DATA_MANAGEMENT_ACCESS_TOKEN="your_token_here" - export SITE_CAPABILITIES_ACCESS_TOKEN="your_token_here" - sudo pathFinder --namespace daac --file-name simple_file.txt --no-login + export DATA_MANAGEMENT_ACCESS_TOKEN="your_token_here" + export SITE_CAPABILITIES_ACCESS_TOKEN="your_token_here" + sudo pathFinder --namespace daac --file-name simple_file.txt --no-login #### Unmounting Data Example for unmounting a file: - $ sudo pathFinder --namespace daac --file-name simple_file.txt --unmount - Unmounted simple_file.txt from /home/sm2921/projects/daac/simple_file.txt + $ sudo pathFinder --namespace daac --file-name simple_file.txt --unmount + Unmounted simple_file.txt from /home/sm2921/projects/daac/simple_file.txt ## Development -Notes on development can be found in the [development doc](DEVELOPMENT.md). +Notes on development can be found in the [development](DEVELOPMENT.md) doc. diff --git a/SERVER-CONFIGURATION.md b/SERVER-CONFIGURATION.md index 40c68df..9799f46 100644 --- a/SERVER-CONFIGURATION.md +++ b/SERVER-CONFIGURATION.md @@ -1,25 +1,19 @@ -# pathFinder - Server Configuration +# Server Configuration -pathFinder is a tool for mounting SKA data on Slurm clusters without copying the data locally. - -It allows the Scientist to specify which files, identified from the Science Gateway, they want to mount while keeping the files secure and owned by them. - -Two methods are planned, interactive and a workflow managed by the Science Gateway via prepareData. - -This documentation covers the prerequisites to setup on the underlying configuration on a Slurm cluster using a Ceph file-system and the installation of the pathFinder tool. +This document covers the prerequisites to setup on the underlying configuration on a Slurm cluster using a Ceph file-system and the installation of the pathFinder tool. ## Pre-requisites -The following requirements must be met. +The following requirements must be met: -(Note these are for Rocky 9.x releases and have not been tested on RHEL 10.x or Ubuntu) +- CRB Enabled +- RHEL EPEL (Extra Packages) +- BindFS +- Ceph Common - - CRB Enabled - - RHEL EPEL (Extra Packages) - - BindFS - - Ceph Common +Note: These are for Rocky 9.x releases and have not been tested on RHEL 10.x or Ubuntu. -## Server Side Configuration +## Server-Side Configuration The configuration is only required on the Login node of your Slurm cluster, this assumes that all your user home directories are CephFS/NFS mount points. @@ -27,68 +21,70 @@ If you already have EPEL enabled you can skip the next 2 steps. 1. Enable CRB: - crb status - crb enable + crb status + crb enable 2. Install EPEL: - sudo dnf install epel-release - sudo dnf repolist + sudo dnf install epel-release + sudo dnf repolist 3. Configure your Ceph Keyring: - vi /etc/ceph/ceph.client.rucio_prod_ro.keyring + vi /etc/ceph/ceph.client.rucio_prod_ro.keyring -Add your Access key: + ... and add your Access key: - [client.rucio_prod_ro] - key = **************************** + [client.rucio_prod_ro] + key = **************************** 4. Create mountpoints, this MUST be owned by root with permissions of 550 & 700: - sudo mkdir /skadata /mnt/private_mounts/skadata - sudo chmod 550 /skadata - sudo chmod 700 /mnt/private_mounts/skadata + sudo mkdir /skadata /mnt/private_mounts/skadata + sudo chmod 550 /skadata + sudo chmod 700 /mnt/private_mounts/skadata + +5. Add the following entries to the **/etc/fstab** file: + + # Ceph mount + 10.4.200.9:6789,10.4.200.13:6789,10.4.200.13:6789,10.4.200.17:6789,10.4.200.25:6789,10.4.200.26:6789:/volumes/_nogroup/a8af40e8-6412-44da-ad08-3731fdf19258/4945e5c2-aab7-4416-9b75-666f2af512d7 /skadata ceph name=rucio_prod_ro,x-systemd.device-timeout=30,x-systemd.mount-timeout=30,noatime,_netdev,ro,nodev,nosuid 0 2 -5. Add the following entries to the **/etc/fstab** file. The `/mnt/private_mounts` is used to hide the owner & group of the mounted file-system, so all files under `/skadata` are presented as `root root` for owner and group and hides the real owner **uid/gid** which would typically be the xrootd, Webdav & Storm user uid/gid: + # Bindfs mount + /mnt/private_mounts/skadata /skadata fuse.bindfs force-user=root,force-group=root 0 0 - # Ceph mount - 10.4.200.9:6789,10.4.200.13:6789,10.4.200.13:6789,10.4.200.17:6789,10.4.200.25:6789,10.4.200.26:6789:/volumes/_nogroup/a8af40e8-6412-44da-ad08-3731fdf19258/4945e5c2-aab7-4416-9b75-666f2af512d7 /skadata ceph name=rucio_prod_ro,x-systemd.device-timeout=30,x-systemd.mount-timeout=30,noatime,_netdev,ro,nodev,nosuid 0 2 - # Bindfs mount - /mnt/private_mounts/skadata /skadata fuse.bindfs force-user=root,force-group=root 0 0 + **Note**: The `/mnt/private_mounts` is used to hide the owner & group of the mounted file-system, so all files under `/skadata` are presented as `root root` for owner and group and hides the real owner **uid/gid** which would typically be the xrootd, Webdav & Storm user uid/gid. -6. Mount the /skadata mountpoints. +6. Mount the /skadata mountpoints: -Note that we use bindfs here as well so all files under `/skadata` are presented as `root root` for owner and group and hides the real owner **uid/gid** which would typically be the xrootd, Webdav & Storm user uid/gid: + mount -a + systemctl daemon-reload - mount -a - systemctl daemon-reload + **Note**: We use bindfs here as well so all files under `/skadata` are presented as `root root` for owner and group and hides the real owner **uid/gid** which would typically be the xrootd, Webdav & Storm user uid/gid: -7. Add a sudoers file to control access to the pathfinder tool. +7. Add a sudoers file to control access to the pathfinder tool: - vi /etc/sudoers.d/pathFinder + vi /etc/sudoers.d/pathFinder -Using group `pathfinder` for group access for users you want to give access to: + ...allow group `pathfinder` access to the `pathFinder` executable: - %pathfinder ALL = NOPASSWD: /usr/bin/pathfinder, /usr/bin/pathFinder + %pathfinder ALL = NOPASSWD: /usr/bin/pathfinder, /usr/bin/pathFinder 8. Add the patfinder group: - groupadd pathfinder + groupadd pathfinder 9. Add or update the local users to their corresponding group: - usermod -a -G pathfinder sm2921 + usermod -a -G pathfinder sm2921 -## pathFinder Package installation +## Package installation The latest version is published at [pathFinder Release](https://github.com/uksrc/pathFinder/releases) check before installing or upgrading. Set the version and install the pathFinder package: - VERSION=1.x.x - dnf upgrade https://github.com/uksrc/pathFinder/releases/download/v1.0.0/pathfinder-${VERSION}-1.x86_64.rpm + VERSION=1.x.x dnf upgrade https://github.com/uksrc/pathFinder/releases/download/v1.0.0/pathfinder-${VERSION}-1.x86_64.rpm -## pathFinder RPM package +## RPM package -The RPM package for pathFinder is published as a part of a [GitHub release](https://github.com/uksrc/pathFinder/releases). +The RPM package for pathFinder is published as a part of the [GitHub releases](https://github.com/uksrc/pathFinder/releases). From 0df8cfa1d05451c171ca9011e78a71cc7fbfe2de Mon Sep 17 00:00:00 2001 From: Roger Duthie <343584+rjaduthie@users.noreply.github.com> Date: Fri, 10 Apr 2026 10:55:43 +0100 Subject: [PATCH 3/5] Fix heading levels in README --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 4c35ddd..826bb26 100644 --- a/README.md +++ b/README.md @@ -34,9 +34,9 @@ The `pathFinder` command is available to run on the CLI after logging into the S --unmount Unmount previously mounted data instead of mounting -h, --help Print help -#### OAUTH Authentication +#### Authentication with SKA-IAM flow -Example using SKAIAM OAuth2: +Example using SKA-IAM OAuth2: $ sudo pathFinder --namespace daac --file-name simple_file.txt @@ -60,7 +60,7 @@ Example with environment variables (e.g. for automation): export SITE_CAPABILITIES_ACCESS_TOKEN="your_token_here" sudo pathFinder --namespace daac --file-name simple_file.txt --no-login -#### Unmounting Data +### Unmount Data Example for unmounting a file: From 972ccbfecc5c279121b4834fc433338812f69fac Mon Sep 17 00:00:00 2001 From: Roger Duthie <343584+rjaduthie@users.noreply.github.com> Date: Fri, 10 Apr 2026 11:00:28 +0100 Subject: [PATCH 4/5] Minor tweaks to README --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 826bb26..9477588 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Path Finder -**pathFinder** is a tool for mounting SKA data on Slurm clusters without copying the data locally. Currently, it is provided as a single binary or an RPM installer. It is important to prepare the Slurm cluster ahead of its use (see [Installation](#installation)). +**pathFinder** is a tool for mounting SKA data on Slurm clusters without copying the data locally. Currently, it is provided as a single binary or an RPM installer. The tool allows the Scientist to specify which files, identified from the Science Gateway, they want to mount while keeping the files secure and owned by them. Two methods are planned: interactive and a workflow managed by the Science Gateway via prepareData. @@ -13,7 +13,7 @@ Features: ## Installation -For instructions on the setup & requirements for your HPC Server environment, see the [server configuration](./SERVER-CONFIGURATION.md) doc. +For instructions on the requirements and setup for your HPC server environment, and installation of **pathFinder** itself, see the [SERVER-CONFIGURATION.md](./SERVER-CONFIGURATION.md) doc. ## Usage @@ -69,4 +69,4 @@ Example for unmounting a file: ## Development -Notes on development can be found in the [development](DEVELOPMENT.md) doc. +Notes on development can be found in the [DEVELOPMENT.md](DEVELOPMENT.md) doc. From e1332eb07907b97e3d23cbb68f851910216891f7 Mon Sep 17 00:00:00 2001 From: Roger Duthie <343584+rjaduthie@users.noreply.github.com> Date: Fri, 10 Apr 2026 11:05:45 +0100 Subject: [PATCH 5/5] Fix RPM instructions --- SERVER-CONFIGURATION.md | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/SERVER-CONFIGURATION.md b/SERVER-CONFIGURATION.md index 9799f46..4f43431 100644 --- a/SERVER-CONFIGURATION.md +++ b/SERVER-CONFIGURATION.md @@ -77,14 +77,10 @@ If you already have EPEL enabled you can skip the next 2 steps. usermod -a -G pathfinder sm2921 -## Package installation +## RPM Package installation -The latest version is published at [pathFinder Release](https://github.com/uksrc/pathFinder/releases) check before installing or upgrading. +An RPM installation package is published on the [pathFinder release](https://github.com/uksrc/pathFinder/releases) page, check for the latest version before installing or upgrading. Set the version and install the pathFinder package: - VERSION=1.x.x dnf upgrade https://github.com/uksrc/pathFinder/releases/download/v1.0.0/pathfinder-${VERSION}-1.x86_64.rpm - -## RPM package - -The RPM package for pathFinder is published as a part of the [GitHub releases](https://github.com/uksrc/pathFinder/releases). + VERSION=1.x.y dnf upgrade https://github.com/uksrc/pathFinder/releases/download/v${VERSION}/pathfinder-${VERSION}-1.x86_64.rpm