84 lines
3.1 KiB
Markdown
84 lines
3.1 KiB
Markdown
# autoPROC
|
|
|
|
autoPROC (Global Phasing Ltd.) is an automated pipeline for integrating and scaling
|
|
macromolecular crystallography diffraction data. It is licence-gated: the PSI licence
|
|
token is committed as `autoPROC/.licence` and installed into the software tree at build
|
|
time.
|
|
|
|
Runtime deps follow the GPhL CentOS8/RHEL8 install doc
|
|
(https://www.globalphasing.com/autoproc/manual/installation/CentOS8_64bit/index.html):
|
|
CCP4 8.0 and XDS are absolute requirements, ImageMagick is "highly
|
|
recommended" for full functionality. All three come in as
|
|
`runtime_deps` (`xds/20260616`, `ccp4/8.0`, `ImageMagick/7.1.2-30`) —
|
|
the module-load equivalent of the doc's `.bashrc` recipe (source
|
|
setup.sh + CCP4 setup + XDS on PATH). The doc's `autoPROC_latest`
|
|
symlink trick is not needed: Pmodules versioning covers it.
|
|
|
|
## Build on Ra
|
|
|
|
Step 1: make sure you are in the `unx-mx_adm` group -- no -adm account needed, members can update the modules in `/opt/psi/MX` directly (if you have problems, please let the admins know)
|
|
|
|
Step 2: load the build tool (modbuild)
|
|
|
|
```
|
|
module use unstable
|
|
module load modbuild/2.1.3
|
|
```
|
|
|
|
Step 3: stage the licence-gated snapshot. Download it from Global Phasing (needs
|
|
credentials, so `wget` in the build script will not work) and save it in this module
|
|
directory named by its snapshot date. Do NOT commit it (it is proprietary and large;
|
|
`.gitignore` already excludes `autoPROC_snapshot_*.tar.gz`).
|
|
|
|
```
|
|
cd autoPROC
|
|
# e.g. save the download as autoPROC_snapshot_20240710.tar.gz here
|
|
```
|
|
|
|
Step 4: edit `files/config.yaml` to add the real snapshot date as the version, and
|
|
confirm the `ccp4` dependency coordinates for this cluster:
|
|
|
|
```
|
|
module avail ccp4 # adjust ccp4/8.0 in runtime_deps if the name/version differs
|
|
vi files/config.yaml
|
|
```
|
|
|
|
Step 5: build (installs to `/opt/psi/MX/autoPROC/<date>`)
|
|
|
|
```
|
|
modbuild build 20240710
|
|
```
|
|
|
|
Step 6: confirm the module loads and autoPROC is licensed
|
|
|
|
```
|
|
module use MX unstable
|
|
module load autoPROC/20240710
|
|
process -h
|
|
```
|
|
|
|
## Assumptions to verify on the first real build
|
|
|
|
- The snapshot tarball has a single top-level directory, so `tar --strip-components=1`
|
|
puts `setup.sh` directly at `$PREFIX/setup.sh`. If the layout differs, adjust the
|
|
strip level in `build`.
|
|
- autoPROC reads its licence from the software home, i.e. `$autoPROC_home/.licence`,
|
|
which equals `$PREFIX/.licence` after the strip. `build` copies `.licence` there.
|
|
- If loading the module fails with `... : unbound variable` (setup.sh under `set -u`),
|
|
add `puts stdout "set +x nounset"` before the `source` line in `modulefile` (same fix
|
|
used for phenix).
|
|
- `runtime_deps` must reference module versions that exist on Ra: check with
|
|
`module avail xds ccp4 ImageMagick` after an XDS/CCP4 update and adjust.
|
|
- ImageMagick/7.1.2-30 is still `unstable`; promote it to stable before promoting
|
|
autoPROC (a stable module may only depend on stable modules).
|
|
|
|
## Updating runtime_deps without a rebuild
|
|
|
|
`runtime_deps` land in the generated modulefile, so after editing
|
|
`files/config.yaml`:
|
|
|
|
```
|
|
modbuild build --update-modulefiles 20240710
|
|
module use MX unstable && module load autoPROC/20240710 # should auto-load xds, ccp4, ImageMagick
|
|
```
|