examples/alphafold2.md.hold
... ...
@@ -0,0 +1,177 @@
1
+
2
+## ALPHAFOLD2
3
+<!-- TOC -->
4
+
5
+- [ALPHAFOLD2](#alphafold2)
6
+ - [Preparing to run Alphafold](#preparing-to-run-alphafold)
7
+ - [Running the python script run_alphafold.py](#running-the-python-script-run_alphafoldpy)
8
+ - [GPU Memory](#gpu-memory)
9
+ - [Web portal](#web-portal)
10
+ - [Changes in AlphaFold 2.1.1 multimer](#changes-in-alphafold-211-multimer)
11
+ - [Examples](#examples)
12
+ - [Known issues](#known-issues)
13
+
14
+<!-- /TOC -->
15
+### Preparing to run Alphafold
16
+The ALPHAFOLD2 source an implementation of the inference pipeline of AlphaFold v2.0. using a completely new model that was entered in CASP14. This is not a production application per se, but a reference that is capable of producing structures from a single amino acid sequence.
17
+
18
+From the developers' original publication: "The provided inference script is optimized for predicting the structure of a single protein, and it will compile the neural network to be specialized to exactly the size of the sequence, MSA, and templates. For large proteins, the compile time is a negligible fraction of the runtime, but it may become more significant for small proteins or if the multi-sequence alignments are already precomputed. In the bulk inference case, it may make sense to use our make_fixed_size function to pad the inputs to a uniform size, thereby reducing the number of compilations required."
19
+
20
+The SBGrid installation of Alphafold2 does not require Docker to run, but does require a relatively recent NVidia GPU and updated driver.
21
+
22
+AlphaFold requires a set of (large) genetic databases that must be downloaded separately. See https://github.com/deepmind/alphafold#genetic-databases for more information.
23
+
24
+These databases can be downloaded with the included download script and the aria2c program, both of which are available in the SBGrid collection. Note that these databases are large in size (> 2Tb) and may require a significant amount of time to download.
25
+
26
+```
27
+/programs/x86_64-linux/alphafold/2.1.1/alphafold/scripts/download_all_data.sh <destination path>
28
+```
29
+
30
+The database directory shouuld look like this :
31
+
32
+```
33
+├── bfd
34
+│   ├── bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt_a3m.ffdata
35
+│   ├── bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt_a3m.ffindex
36
+│   ├── bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt_cs219.ffdata
37
+│   ├── bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt_cs219.ffindex
38
+│   ├── bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt_hhm.ffdata
39
+│   └── bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt_hhm.ffindex
40
+├── mgnify
41
+│   ├── mgy_clusters_2018_12.fa
42
+├── params
43
+│   ├── LICENSE
44
+│   ├── params_model_1_multimer.npz
45
+│   ├── params_model_1.npz
46
+│   ├── params_model_1_ptm.npz
47
+│   ├── params_model_2_multimer.npz
48
+│   ├── params_model_2.npz
49
+│   ├── params_model_2_ptm.npz
50
+│   ├── params_model_3_multimer.npz
51
+│   ├── params_model_3.npz
52
+│   ├── params_model_3_ptm.npz
53
+│   ├── params_model_4_multimer.npz
54
+│   ├── params_model_4.npz
55
+│   ├── params_model_4_ptm.npz
56
+│   ├── params_model_5_multimer.npz
57
+│   ├── params_model_5.npz
58
+│   └── params_model_5_ptm.npz
59
+├── pdb70
60
+│   ├── md5sum
61
+│   ├── pdb70_a3m.ffdata
62
+│   ├── pdb70_a3m.ffindex
63
+│   ├── pdb70_clu.tsv
64
+│   ├── pdb70_cs219.ffdata
65
+│   ├── pdb70_cs219.ffindex
66
+│   ├── pdb70_hhm.ffdata
67
+│   ├── pdb70_hhm.ffindex
68
+│   └── pdb_filter.dat
69
+├── pdb_mmcif
70
+│   ├── mmcif_files
71
+│   └── obsolete.dat
72
+├── pdb_seqres
73
+│   └── pdb_seqres.txt
74
+├── small_bfd
75
+│   └── bfd-first_non_consensus_sequences.fasta
76
+├── uniclust30
77
+│   └── uniclust30_2018_08
78
+├── uniprot
79
+│   └── uniprot.fasta
80
+```
81
+
82
+### Running the python script run_alphafold.py
83
+The run_alphafold.py script requires all parameters to be set explicitly.
84
+Pass --helpshort or --helpfull to see help on flags. See examples below.
85
+
86
+### GPU Memory
87
+Memory is going to be an issue with larger protein sizes. The original publication suggests some things to try:
88
+
89
+"Inferencing large proteins can easily exceed the memory of a single GPU. For a V100 with 16 GB of memory, we can predict the structure of proteins up to ~1,300 residues without ensembling and the 256- and 384-residue inference times are using a single GPU’s memory. "
90
+
91
+"The memory usage is approximately quadratic in the number of residues, so a 2,500 residue protein involves using unified memory so that we can greatly exceed the memory of a single V100. In our cloud setup, a single V100 is used for computation on a 2,500 residue protein but we requested four GPUs to have sufficient memory."
92
+
93
+The following environment variable settings may help with larger polypeptide calculations (> 1,200 aa).
94
+
95
+```
96
+TF_FORCE_UNIFIED_MEMORY=1
97
+XLA_PYTHON_CLIENT_MEM_FRACTION=0.5
98
+XLA_PYTHON_CLIENT_ALLOCATOR=platform
99
+```
100
+*Thanks Ci Ji Lim at Wisconsin for suggesting and testing these.*
101
+
102
+### Web portal
103
+It is possible to run alphafold through a web portal. See
104
+https://colab.research.google.com/github/deepmind/alphafold/blob/main/notebooks/AlphaFold.ipynb .
105
+
106
+### Changes in AlphaFold 2.1.1 multimer
107
+On 4 Nov 2021 we added vesion 2.1.1 to the installation. This version allows prediction of multimers from fasta files containing multiple sequences.
108
+
109
+**NOTE**
110
+- Databases must be redownloaded, specifically UniProt and PDB seqres databases.
111
+ - Run `scripts/download_uniprot.sh <DOWNLOAD_DIR>`.
112
+ - Remove/rename `<DOWNLOAD_DIR>/pdb_mmcif`. It is needed to have PDB SeqRes and PDB from exactly the same date. Failure to do this step will result in potential errors when searching for templates when running AlphaFold-Multimer.
113
+ - Run `scripts/download_pdb_mmcif.sh <DOWNLOAD_DIR>`.
114
+ - Run `scripts/download_pdb_seqres.sh <DOWNLOAD_DIR>`.
115
+- Update the model parameters.
116
+ - Remove/rename the old model parameters in `<DOWNLOAD_DIR>/params`.
117
+ - Download new model parameters using `scripts/download_alphafold_params.sh <DOWNLOAD_DIR>`.
118
+
119
+Some command line flags have changed since version 2.0.0. We recommend running the `run_alphafold.py` command directly and we are not providing a wrapper script ( as we did for 2.0.0) at the present time.
120
+
121
+### Examples
122
+**Standard prediction example :**
123
+```
124
+/programs/x86_64-linux/alphafold/2.1.1/bin.capsules/run_alphafold.py \
125
+--data_dir=/programs/local/alphafold/ \
126
+--output_dir=/scratch/data/sbgrid/alphafold/test_monomer \
127
+--fasta_paths=test_monomer.fasta \
128
+--max_template_date=2020-05-14 \
129
+--db_preset=full_dbs \
130
+--bfd_database_path=/programs/local/alphafold/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
131
+--uniclust30_database_path=/programs/local/alphafold//uniclust30/uniclust30_2018_08/uniclust30_2018_08 \
132
+--uniref90_database_path=/programs/local/alphafold//uniref90/uniref90.fasta \
133
+--mgnify_database_path=/programs/local/alphafold//mgnify/mgy_clusters_2018_12.fa \
134
+--template_mmcif_dir=/programs/local/alphafold//pdb_mmcif/mmcif_files \
135
+--pdb70_database_path=/programs/local/alphafold//pdb70/pdb70 \
136
+--obsolete_pdbs_path=/programs/local/alphafold//pdb_mmcif/obsolete.dat
137
+```
138
+
139
+where test_monomer.fasta is
140
+
141
+```
142
+>T1083
143
+GAMGSEIEHIEEAIANAKTKADHERLVAHYEEEAKRLEKKSEEYQELAKVYKKITDVYPNIRSYMVLHYQNLTRRYKEAAEENRALAKLHHELAIVED
144
+```
145
+
146
+**Multimer example :**
147
+```
148
+/programs/x86_64-linux/alphafold/2.1.1/bin.capsules/run_alphafold.py \
149
+--data_dir=/programs/local/alphafold \
150
+--output_dir=/scratch/data/sbgrid/alphafold/test_multimer \
151
+--fasta_paths=test_multimer.fasta \
152
+--max_template_date=2020-05-14 \
153
+--db_preset=full_dbs \
154
+--bfd_database_path=/programs/local/alphafold/bfd/bfd_metaclust_clu_complete_id30_c90_final_seq.sorted_opt \
155
+--uniclust30_database_path=/programs/local/alphafold/uniclust30/uniclust30_2018_08/uniclust30_2018_08 \
156
+--uniref90_database_path=/programs/local/alphafold/uniref90/uniref90.fasta \
157
+--mgnify_database_path=/programs/local/alphafold/mgnify/mgy_clusters_2018_12.fa \
158
+--template_mmcif_dir=/programs/local/alphafold/pdb_mmcif/mmcif_files --model_preset=multimer \
159
+--uniprot_database_path=/programs/local/alphafold/uniprot/uniprot.fasta \
160
+--pdb_seqres_database_path=/programs/local/alphafold/pdb_seqres/pdb_seqres.txt \
161
+--obsolete_pdbs_path=/programs/local/alphafold/pdb_mmcif/obsolete.dat
162
+```
163
+
164
+where test_multimer.fasta is
165
+
166
+```
167
+>T1083
168
+GAMGSEIEHIEEAIANAKTKADHERLVAHYEEEAKRLEKKSEEYQELAKVYKKITDVYPNIRSYMVLHYQNLTRRYKEAAEENRALAKLHHELAIVED
169
+>T1084
170
+MAAHKGAEHHHKAAEHHEQAAKHHHAAAEHHEKGEHEQAAHHADTAYAHHKHAEEHAAQAAKHDAEHHAPKPH
171
+```
172
+
173
+### Known issues
174
+- Unified memory across GPUs does not appear to work in the current version.
175
+- The `ptxas` executable is required to be in PATH in some cases, but not all. We can not redistribute this binary since it is part of the NVIDIA SDK. It must be installed separetely and added to the environment PATH variable, typically in `/usr/local/cuda/bin`. Version 11.0.3 works well in our hands, but other versions should work. [You can download the SDK here : https://developer.nvidia.com/cuda-toolkit-archive](https://developer.nvidia.com/cuda-toolkit-archive)
176
+- Clashes bewtween monomers have been reported in some cases in multimer mode
177
+
... ...
\ No newline at end of file
installation_overview.md
... ...
@@ -1,69 +1,37 @@
1 1
## Installing the SBGrid software collection
2 2
3
-### Installing the software
4
-
5 3
The SBGrid Software Suite contains 440+ Scientific software applications for [Linux and OS X](operatingsystems).
6 4
7
-The software can be installed using one of 3 methods:
8
-- The `sbgrid-admin` script is used for [Site installation](installation_admin)
5
+The software collection can be installed using either our graphical or command-line installation manager:
9 6
- [SBGrid installation manager graphical interface](sbgrid-gui).
10
-- [SBGrid installation manager command-line interface](sbgrid-cli).
11
-
7
+- [SBGrid installation manager command-line interface](sbgrid-cli)
8
+
9
+We also have a script-based installation for Unix systems that are not compatible with the Linux and macOS installatino managers(BSD, AIX, etc).
10
+
12 11
---
13 12
<!-- TOC -->
14
-
15 13
- [Installing the SBGrid software collection](#installing-the-sbgrid-software-collection)
16
- - [Installing the software](#installing-the-software)
17 14
- [Site installation](#site-installation)
18 15
- [Graphical installation for MacOS](#graphical-installation-for-macos)
19 16
- [Command line installation manager for Linux and MacOS](#command-line-installation-manager-for-linux-and-macos)
20
-- [Supported Operating Systems](#supported-operating-systems)
21
- - [Linux](#linux)
22
- - [OS X Intel](#os-x-intel)
23
-
24 17
<!-- /TOC -->
25 18
26 19
### Site installation
27 20
28
-[A script-based installation that includes the complete software collection for Linux and/or MacOS.](installation_admin)
29
-
30
-This is ideal for large labs, shared and departmental installations that use a shared network file storage for their programs. The installation is updated automatically on a monthly basis. [This installation is large and can take a long time to install and update.](size_graph)
21
+[An SBGrid installation that includes the complete software collection for Linux and/or MacOS.](sbgrid-cli-admin)
31 22
23
+One of the primary benefits of an SBGrid software installation is that it is a curated and actively managed software stack. New titles are added, obsolete versions are removed, and updates happen automatically. New software and bug fixes are only an email request away (bugs@sbgrid.org) without required system administration. While the installation configuration is flexible (CLI/GUI, title/versions, Linux/macOS, etc), this is the recommended mode of installation for most workstations and clusters, large labs, or shared departmental installations using network file storage for their program stack.
32 24
### Graphical installation for MacOS
33 25
34 26
[A Graphical stand-alone installation manager for MacOS](client_install)
35 27
36
-The MacOS GUI installation manager allows users to select the applications they need when they need them through a MacOS-native graphical application. Applications are updated on a rolling basis and are available to the user at their convenience. Updates are reported when available, but are managed by the user.
28
+The MacOS GUI installation manager allows users to select the applications they need when they need them through a graphical application. Applications are updated on a rolling basis and are available to the user at their convenience. Updates are reported when available, but are managed by the user.
37 29
38 30
### Command line installation manager for Linux and MacOS
39 31
40 32
[Command line installation using the SBGrid package managager program for Linux and MacOS ](client_CLI_install)
41 33
42
-The SBGrid CLI tool allows users to choose the titles they wish to install using a command-line driven package manager. Applications can be installed and updated as convenient. Updates are released on a rolling basis and can be installed by the user as necessary. This program can be made automatic or used in manual mode.
34
+The SBGrid CLI tool 'sbgrid-cli' allows users to choose the titles they wish to install using a command-line driven package manager. Applications can be installed and updated as convenient. Updates are released on a rolling basis and can be installed by the user as necessary. This program can be made [automatic](sbgrid-cli-admin) or used in manual mode.
43 35
44 36
Member labs may use any/all of the installation types above for as many Computers as they require.
45 37
46
-## Supported Operating Systems
47
-
48
-The SBGrid Software Suite can run on Linux and macOS/OS X machines.
49
-
50
-### Linux
51
-
52
-We build and test software under 64-bit CentOS 7. The majority of our Linux users are using the Red Hat / CentOS / Scientific Linux / Fedora distributions. We also have labs using the software with Ubuntu, Debian and OpenSuSE. We don't explicitly test the software on these distributions, but it is known to work. We will work to resolve problems reported by users of these Linux distributions.
53
-
54
-We officially support the two most recent releases of Red Hat/CentOS/Scientific Linux (currently 7 and 8). Only 64-bit versions of linux are supported (though 32-bit software is included in the collection). As of January 2015, we are no longer updating the 32-bit software branch, though we will work to resolve reported problems. We also have a library of IRIX and PowerPC software. If those titles are needed, make a request at bugs@sbgrid.org.
55
-
56
-Currently Supported:
57
-
58
-- Red Hat Enterprise Linux 7.x and 8.x and the community supported versions: CentOS and Scientific Linux.
59
-- We are no longer building software for RHEL 5.x or 6.x, but compatible applications will remain in the software tree. We will respond to support requests for these and we will resolve problems where possible.
60
-
61
-### OS X Intel
62
-
63
-We build and test the programs under the most five most recent OS X releases.
64
-
65
-Currently Supported:
66
-
67
-- OS X Intel 10.13 - 10.15
68
-- As above with earlier versions of linux, there are many software applications that are fully functional on earlier versions of MacOSX in the SBGrid tree. We work to maintain an environment compatible with these OS versions, though they may not receive the latest applications.
69
-- "Apple Silicon" macs can run most of the software in the collection on macOS 11 "Big Sur. Few native applications are currently available, but most software works in our early testing.
operatingsystems.md
... ...
@@ -1,13 +1,12 @@
1 1
## Supported Operating Systems
2 2
3
-The SBGrid Software Suite can run on Linux and macOS/OS X.
3
+The SBGrid Software Suite can run on computers running Linux and macOS/OS X operating systems.
4 4
5 5
<!-- TOC -->
6 6
7 7
- [Supported Operating Systems](#supported-operating-systems)
8 8
- [Linux](#linux)
9
- - [OS X Intel](#os-x-intel)
10
- - [OS X Arm, Apple Silicon](#os-x-arm-apple-silicon)
9
+ - [OS X / macOS](#os-x--macos)
11 10
- [Windows Intel](#windows-intel)
12 11
- [OS X PowerPC](#os-x-powerpc)
13 12
- [IRIX](#irix)
... ...
@@ -22,23 +21,22 @@ We officially support the two most recent releases of Red Hat/CentOS/Scientific
22 21
- Red Hat Enterprise Linux 7.x and 8.x and the community supported versions: CentOS and Scientific Linux.
23 22
- We are no longer building software for RHEL/CentOS 5.x or 6.x.
24 23
25
-### OS X Intel
24
+**GPUs**
25
+We support a number of titles that run on nVidia GPU hardware. We include the required libraries for these applications and typically only the latest driver for the hardware is required.
26 26
27
-We build and test the programs under the most four most recent OS X releases.
28
-MacOS 10.14 was the last release to support 32-bit binaries. If your work requires 32-bit software, this is the last OS release that will allow that software to run.
27
+### OS X / macOS
29 28
30
-Currently Supported:
31
-
32
-- OS X Intel 10.13 - 11
33
-- As above with earlier versions of linux, there are many software applications that are fully functional on earlier versions of MacOSX in the SBGrid tree. We work to maintain an environment compatible with these OS versions, though they may not receive the latest applications available. Also note that there are [known issues with macOS 11](big-sur).
29
+We build and test programs for macOS under the most five most recent OS X/macOS releases.
34 30
35
-### OS X Arm, Apple Silicon
31
+Currently Supported:
36 32
37
-There are few native applications for Apple CPUs in the software collection, but most applications work through Apple's Rosetta2 compatility environment. Notable exceptions are applications compiled with Intel compilers (Rosetta, RELION).
33
+- OS X 10.13 - macOS 12
34
+- As above with earlier versions of linux, there are many software applications that are fully functional on earlier versions of MacOSX in the SBGrid tree. We work to maintain an environment compatible with these OS versions, though they may not receive the latest applications.
35
+- "Apple Silicon" macs can run most of the software in the collection. Few native applications are currently available, but most 64-bit software works through Apple's Rosetta2 compatility environment. Notable exceptions are applications compiled with Intel compilers (older Rosetta and RELION verions).
38 36
39 37
### Windows Intel
40 38
41
-Windows provides Linux compatibility environment called "Windows Subsystem for Linux" (WSL), based on Ubuntu. WSL is still under active development. We suspect it is possible to get most SBGrid applications working with WSL, but we have no experience with Windows can can't provide support. But if you have success here, let us know.
39
+Windows provides Linux compatibility environment called "Windows Subsystem for Linux" (WSL), based on Ubuntu. WSL is still under active development. We suspect it is possible to get the SBGrid applications working with WSL, but we have no experience with Windows can can't provide support. If you have success with SBGrid and WSL, let us know.
42 40
43 41
### OS X PowerPC
44 42
... ...
@@ -48,4 +46,4 @@ The applications are archived and available on request.
48 46
### IRIX
49 47
50 48
The IRIX programs branch is currently frozen and is obsolete.
51
-The applications are archived and available on request.
49
+The applications are archived and available on request. SGI was fun.
sbgrid-cli-admin.md
... ...
@@ -1,38 +1,22 @@
1 1
## SBGrid recommended installation
2 2
3
-One of the primary benefits of an SBGrid software installation is that it is a managed software stack. New titles are added, obsolete versions are removed, and updates happen automatically.
4
-New software and bug fixes are an email away (bugs@sbgrid.org) without requiring local administrators or system admistration expertise. While there are other modes available (GUI, granular versions, titles, etc), this is the recommended mode of installation for most sites.
3
+One of the primary benefits of an SBGrid software installation is that it is a managed software stack. New titles are added, obsolete versions are removed, and updates happen automatically. New software and bug fixes are an email request away (bugs@sbgrid.org) without requiring local administrators or system admistration expertise. While there are other installation modes available (GUI, default versions, select titles, etc), this is the recommended mode of installation for most sites.
5 4
### Pre-Installation
6 5
7
-| Installation Requirements | |
8
-| ------------------------- | --------------------------------------------------- |
9
-| Hard Drive Space | ~1 Tb recommended for full installation |
10
-| Operating System | Linux, macOS |
11
-| Privileges | sudo root or administrator account (macOS) |
12
-| network | Outbound https, rsync
6
+| Installation Requirements | |
7
+| ------------------------- | ------------------------------------------ |
8
+| Hard Drive Space | ~1+ Tb recommended for full installation |
9
+| Operating System | Linux, macOS |
10
+| Privileges | sudo / root for initial install only |
11
+| network | Outbound https, rsync |
13 12
14 13
**Approximate size per Branch**
15 14
16
-| Branch | size |
17
-| ------------ | ------ |
15
+| Branch | size |
16
+| ------------ | ------ |
18 17
| i386-mac | ~400 Gb |
19
-| x86_64-linux | ~700 Gb |
18
+| x86_64-linux | ~750 Gb |
20 19
| shared files | ~50 Gb |
21
-### SBGrid installation manager admin mode
22
-
23
-sbgrid-cli admin mode replaces the sbgrid-admin script installation method used previously to install and automatically update SBGrid installations. `sbgrid-cli admin` offers a some advantages:
24
- - parallel updates for fast, more efficient transfers
25
- - default version only for limited disk space
26
- - rolling updates for immediate releases
27
-
28
-The `sbgrid-cli admin` command will:
29
-
30
-- Install all new titles added to SBGrid
31
-- Update existing versions when newer versions are added to SBGrid
32
-- Remove obsolete verisons that are no longer supported
33
-
34
-An SBGrid installation manager account is required. [Please register here for an account https://sbgrid.org/registration/register/](https://sbgrid.org/registration/register/).
35
-Accounts are available for lab members and IT support staff.
36 20
## Installation Steps:
37 21
38 22
**1. Create an 'sbgrid' user** on the machine that will host your software installation.
... ...
@@ -42,72 +26,63 @@ Accounts are available for lab members and IT support staff.
42 26
adduser sbgrid
43 27
```
44 28
45
-By default `sbgrid-cli` will attempt to use sudo to create the install path at `/opt/sbgrid` and symlink at `/programs`.
46
-The `/programs` path is required to run the software.
47
-
48
-The sudo requirement can be skipped by using the `--target` flag to specify an alternate installation location.
49
-The *sbgrid* user must have write access to this directory ([detailed here](https://sbgrid.org//wiki/sbgrid-cli#activation)).
50
-If you would prefer the *sbgrid-cli* create the `/programs` and the installation path, add the sbgrid user to sudo.
51
-One method to do this is with this command:
52
-
53
-```
54
-echo 'sbgrid ALL=(ALL) ALL' > /etc/sudoers.d/sbgrid
55
-```
56
-
57
-This is only required for the activation step. The '/etc/sudoers.d/sbgrid' entry can be removed anytime after the installation is activated.
29
+By default the SBGrid installation manager, `sbgrid-cli`, will install at `/opt/sbgrid`. This path typically requires sudo/root to create Linux and macOS. The sudo requirement can be skipped by using the `--target` flag to specify an alternate installation location. This is usually preferred as /opt may be on a filesystem with insufficient capacity. The *sbgrid* user must have write access to this target directory.
58 30
59
-**2. Log in as this 'sbgrid' user**
31
+**2. Log in as the 'sbgrid' user**
60 32
61 33
```
62 34
su sbgrid
63 35
```
64 36
65 37
**3. Download the sbgrid-cli application**
66
- [https://sbgrid.org/wiki/client_downloads](client_downloads)
67 38
39
+[sbgrid-cli for linux](https://sbgrid.org/downloads/latest/sbgrid-cli_linux.tar.gz)
40
+[sbgrid-cli for macOS](https://sbgrid.org/downloads/latest/sbgrid-cli_macos.tar.gz)
41
+
42
+
43
+To download directly to a server or workstation from the command line :
68 44
For Linux:
69 45
```
70
-curl -LO https://sbgrid-installation-manager.s3.amazonaws.com/2.5.7/sbgrid-cli_2.5.7-linux.tar.gz
46
+curl -LO https://sbgrid.org/downloads/latest/sbgrid-cli_linux.tar.gz
71 47
```
48
+
72 49
For Mac:
73 50
```
74
-curl -LO https://sbgrid-installation-manager.s3.amazonaws.com/2.5.7/sbgrid-cli_2.5.7-macos.tar.gz
51
+curl -LO https://sbgrid.org/downloads/latest/sbgrid-cli_macos.tar.gz
75 52
```
76 53
77 54
**4. Untar the archive**
78 55
79 56
```
80
-tar -zxvf sbgrid-cli_2.5.7-linux.tar.gz
57
+tar -zxvf sbgrid-cli_linux.tar.gz
81 58
```
82 59
83 60
**5. Activate the installation**
84 61
85
-Activating the installation will create the required installation paths and directories for installing the software. This is the point where alternate installation paths can be used with the --target flag. Please see [https://sbgrid.org//wiki/sbgrid-cli#activation](https://sbgrid.org//wiki/sbgrid-cli#activation) for more info.
86
-
62
+Activating the installation will create the required installation directories and core libraries for installing the software. Alternate installation paths can be used with the '--target flag'. The entire software collection will not be installed here - just an initial the core without the titles.
87 63
88 64
```
89
-./sbgrid-cli activate <site> <user> <key>
65
+./sbgrid-cli activate-site --target <path to software installation location>
90 66
```
91 67
92
-If the sbgrid user does not have sudo access, use
68
+where the target path is writable. With --target, activation does not require sudo.
69
+The application will prompt for a site name and key which was provided by email. After this is entered and confirmed the software will be installed. A cron task is created for update checks.
93 70
94
-```
95
-./sbgrid-cli activate <site> <user> <key> --no-link --target=<path to where the software should be installed>
96
-```
97
-where the target path is writable. This option does not require sudo but will require manual creation of the /programs symlink to the target installation directory. This is not required for installation and updates, only for using the software. It may not be needed on servers that host the programs as a network share.
98
-
99
-**6. Run the installation** using `./sbgrid-cli admin`
100 71
101
-**7. Add to crontab** for periodic updates using `./sbgrid-cli crontab`
72
+The manual creation of the "/programs" symlink to the target installation directory will be required, but only for machines running the software. /programs is not needed for updates or servers that host the programs as a network share.
102 73
103 74
104 75
### Post-Install Steps:
105 76
106
-1. Once the download has completed, you'll need to add a symlink in
77
+1. Once the download has completed, you'll need to add a "/programs" symlink in
107 78
the root directory of each machine that wants to use the software.
108 79
Typically, this directory is shared via NFS to each of your computers.
80
+
81
+ On Linux:
109 82
110
- `ln -s /path/to/sbgrid/install /programs`
83
+ `ln -s /path/to/sbgrid/install/target /programs`
84
+
85
+ On macOS, root level symlinks must be defined in the /etc/synthetic.conf file. This is a simple configuration file, [More info on synthetic.conf can be found here.](catalina#manual-creation-of-the-programs-path-after-macos-upgrade)
111 86
112 87
2. Any user that wishes to use SBGrid needs to configure their shell
113 88
to initialize the SBGrid shell environment:
... ...
@@ -115,12 +90,25 @@ where the target path is writable. This option does not require sudo but will re
115 90
For bash: add `source /programs/sbgrid.shrc` to ~/.bashrc
116 91
For tcsh: add `source /programs/sbgrid.cshrc` to ~/.cshrc
117 92
118
-3. Configure your workstations for maximum compatibility:
119
-
93
+3. Configure your workstations for compatibility:
120 94
https://sbgrid.org/wiki/software/workstation_setup
121 95
96
+### SBGrid installation manager admin mode
97
+
98
+`sbgrid-cli admin mode replaces the sbgrid-admin script installation method used previously to install and automatically update SBGrid site installations. `sbgrid-cli admin` offers a some advantages:
99
+ - parallel updates for fast, more efficient transfers
100
+ - default version only for limited disk space
101
+ - rolling updates for immediate releases
102
+
103
+The `sbgrid-cli admin` command will:
104
+
105
+- Install all new titles added to SBGrid
106
+- Update existing versions when newer versions are added to SBGrid
107
+- Remove obsolete verisons that are no longer supported
108
+
109
+### sbgrid-cli admin Examples :
122 110
123
-### Examples :
111
+sbgrid-cli admin commands are typically run periodically from cron.
124 112
125 113
1. To install all default versions of all titles, add new titles when available, update all installed when available and remove obsolete versions, run :
126 114
```
... ...
@@ -137,15 +125,23 @@ where the target path is writable. This option does not require sudo but will re
137 125
sbgrid-cli crontab
138 126
```
139 127
140
-4. Full auto mode - all versions, all titles mac and linux, 4 processes. This is the recommened installation configuration.
128
+4. Full auto mode - all versions, all titles mac and linux, 4 processes. **This is the recommened installation configuration**.
141 129
```
142 130
$ sbgrid-cli crontab --all-versions --darwin --linux -j 4
143 131
```
144 132
145
-For more info on cron, see [https://www.man7.org/linux/man-pages/man5/crontab.5.html](https://www.man7.org/linux/man-pages/man5/crontab.5.html)
133
+### More crontab examples
134
+1. Only update the titles that have been explicitly installed, no new additions
135
+FIX ME
136
+
137
+2. Run a daily cleanup to preserve space
138
+FIX ME
139
+
140
+For more info on cron configuration, see [https://www.man7.org/linux/man-pages/man5/crontab.5.html](https://www.man7.org/linux/man-pages/man5/crontab.5.html)
141
+
146 142
147
-## Migrating existing site installations
148
-To migrate an existing site-install, use the `sbgrid-cli migrate-admin` command as the *sbgrid* user. This will convert the legacy sbgrid-admin installation.
143
+## Migrating existing script-based "sbgrid-admin" site installations
144
+To migrate an existing site-install that uses our sbgrid-admin script, use the `sbgrid-cli migrate-admin` command as your *sbgrid* user. This will convert the legacy sbgrid-admin installation.
149 145
150 146
```
151 147
sbgrid@computer $ sbgrid-cli migrate-admin