Skip to content

Commit 7ce85a2

Browse files
committed
update other markdowns
1 parent 94c85d1 commit 7ce85a2

6 files changed

Lines changed: 50 additions & 51 deletions

File tree

pages/nextflow.md

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,8 @@ Nextflow runs each workflow process in its own environment. When using container
1111
pulls the required image automatically. On BioShell, you can override this behaviour by
1212
creating a config file that points processes to the existing CVMFS images.
1313

14-
> **Note:** Nextflow always prioritises a `-config` file passed on the command line over the
15-
> workflow's built-in `nextflow.config`.
14+
{% include callout.html type="note" content="Nextflow always prioritises a `-config` file passed on the command line over the workflow's built-in `nextflow.config`." %}
1615

17-
---
1816

1917
## Using containers directly from CVMFS {#cvmfs-containers}
2018

@@ -29,7 +27,6 @@ process {
2927
}
3028
```
3129

32-
---
3330

3431
## Using an installed SHPC module {#shpc-module}
3532

@@ -44,9 +41,8 @@ process {
4441
}
4542
```
4643

47-
> **Note:** The `module` value must match exactly what appears in `module avail`.
44+
{% include callout.html type="note" content="The `module` value must match exactly what appears in `module avail`." %}
4845

49-
---
5046

5147
## Running with your config override {#run}
5248

pages/ssh-keys.md

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@ description: How to generate an SSH key pair on macOS, Linux, and Windows to aut
66
BioShell uses SSH key authentication. This guide walks you through generating a key pair,
77
copying your public key, and submitting it to the BioShell Onboarding Portal.
88

9-
---
109

1110
## Quick start {#quick-start}
1211

1312
If you are familiar with SSH keys and just need the commands, use the steps below. For a
1413
full walkthrough including optional settings and troubleshooting, see the
1514
[step-by-step guide](#prerequisites) below.
1615

16+
1717
### macOS and Linux
1818

1919
```bash
@@ -28,6 +28,7 @@ cat ~/.ssh/id_ed25519.pub
2828

2929
Paste the output into the [BioShell Onboarding Portal](AUTHOR TO SUPPLY — add URL).
3030

31+
3132
### Windows
3233

3334
```powershell
@@ -42,7 +43,6 @@ cat $env:USERPROFILE\.ssh\id_ed25519.pub
4243

4344
Paste the output into the [BioShell Onboarding Portal](AUTHOR TO SUPPLY — add URL).
4445

45-
---
4646

4747
## Prerequisites {#prerequisites}
4848

@@ -52,13 +52,13 @@ Paste the output into the [BioShell Onboarding Portal](AUTHOR TO SUPPLY — add
5252
| Linux | `openssh-client` — install with `sudo apt install openssh-client` or `sudo dnf install openssh` |
5353
| Windows | OpenSSH Client — built-in on Windows 10 (1809+) and Windows 11; enable via **Settings > Optional Features** if missing |
5454

55-
---
5655

5756
## Step 1: Generate the key pair {#generate}
5857

5958
The recommended algorithm is **Ed25519** — it is fast, secure, and compact. Use RSA 4096
6059
only if a service requires it.
6160

61+
6262
### macOS and Linux
6363

6464
```bash
@@ -110,7 +110,6 @@ Enter passphrase (empty for no passphrase):
110110
A passphrase encrypts your private key at rest. It is recommended for any key that will
111111
access production systems. Press **Enter** to skip.
112112

113-
---
114113

115114
## Step 2: Verify the key files {#verify}
116115

@@ -121,6 +120,7 @@ After generation, two files are created:
121120
| `id_ed25519` | Private key — never share this |
122121
| `id_ed25519.pub` | Public key — share this with servers and services |
123122

123+
124124
### macOS and Linux
125125

126126
```bash
@@ -133,7 +133,6 @@ ls -la ~/.ssh/
133133
dir $env:USERPROFILE\.ssh\
134134
```
135135

136-
---
137136

138137
## Step 3: Add the key to ssh-agent (optional) {#ssh-agent}
139138

@@ -146,14 +145,12 @@ Run the relevant command once after login:
146145
| Linux | `ssh-add ~/.ssh/id_ed25519` |
147146
| Windows (PowerShell) | `ssh-add $env:USERPROFILE\.ssh\id_ed25519` |
148147

149-
> **Note:** On macOS the key is stored in Keychain and persists across reboots. On Linux
150-
> you may need to re-add the key after each session unless you configure your shell to start
151-
> the agent automatically.
148+
{% include callout.html type="note" content="On macOS the key is stored in Keychain and persists across reboots. On Linux you may need to re-add the key after each session unless you configure your shell to start the agent automatically." %}
152149

153-
---
154150

155151
## Step 4: Copy your public key {#copy-key}
156152

153+
157154
### macOS
158155

159156
```bash
@@ -166,6 +163,7 @@ Or print it to copy manually:
166163
cat ~/.ssh/id_ed25519.pub
167164
```
168165

166+
169167
### Linux
170168

171169
```bash
@@ -176,6 +174,7 @@ xclip -selection clipboard < ~/.ssh/id_ed25519.pub
176174
cat ~/.ssh/id_ed25519.pub
177175
```
178176

177+
179178
### Windows
180179

181180
```powershell
@@ -186,7 +185,6 @@ Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub | Set-Clipboard
186185
cat $env:USERPROFILE\.ssh\id_ed25519.pub
187186
```
188187

189-
---
190188

191189
## Step 5: Submit your public key to BioShell {#submit}
192190

@@ -198,10 +196,8 @@ cat $env:USERPROFILE\.ssh\id_ed25519.pub
198196
Your BioShell username will follow the convention `firstname.lastname`. Once your account is
199197
ready, return to the [Connecting to BioShell](access#connect) section of the access guide.
200198

201-
> **Important:** If you run into any issues, contact
202-
> [AUTHOR TO SUPPLY — helpdesk email or link].
199+
{% include callout.html type="important" content="If you run into any issues, contact [AUTHOR TO SUPPLY — helpdesk email or link]." %}
203200

204-
---
205201

206202
## Managing multiple keys {#multiple-keys}
207203

@@ -221,9 +217,8 @@ Host github.com
221217

222218
With this config, connect to BioShell with `ssh bioshell`.
223219

224-
> **Note:** On Windows this file lives at `C:\Users\you\.ssh\config`.
220+
{% include callout.html type="note" content="On Windows this file lives at `C:\Users\you\.ssh\config`." %}
225221

226-
---
227222

228223
## Key permissions (macOS and Linux) {#permissions}
229224

@@ -237,7 +232,6 @@ chmod 600 ~/.ssh/config # if it exists
237232
chmod 600 ~/.ssh/authorized_keys # on servers
238233
```
239234

240-
---
241235

242236
## Adding a key later {#add-key}
243237

@@ -262,7 +256,6 @@ Then verify correct permissions on the server:
262256
ssh firstname.lastname@BIOSHELL_HOSTNAME "chmod 600 ~/.ssh/authorized_keys"
263257
```
264258

265-
---
266259

267260
## Testing your connection {#testing}
268261

@@ -276,7 +269,6 @@ Use `-v` for verbose output when troubleshooting:
276269
ssh -v firstname.lastname@BIOSHELL_HOSTNAME
277270
```
278271

279-
---
280272

281273
## Algorithm reference {#algorithms}
282274

pages/tools.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ BioShell gives you access to thousands of bioinformatics tools and reference dat
88
two underlying systems, **CVMFS** and **sHPC**, and a built-in assistant called **Shelley-Bio**
99
that automates working with both.
1010

11-
---
1211

1312
## How the tooling stack works {#tooling-stack}
1413

pages/training-development.md

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,18 @@ title: Training development instructions
33
description: How to set up and prepare a BioShell training environment for the BioCommons Training Cooperative, including VM configuration, CVMFS use, trainee directory layout, and pre-snapshot requirements.
44
---
55

6-
> **Draft:** These instructions are a work in progress. If anything is unclear, reach out to Mitchell directly. Feedback is very welcome.
6+
{% include callout.html type="warning" content="**Draft:** These instructions are a work in progress. If anything is unclear, reach out to Mitchell directly. Feedback is very welcome." %}
77

88
This guide is for **training developers** (`tdevNN` users) who are setting up BioShell training environments for the BioCommons Training Cooperative. You will configure tools, build training materials, and prepare a template that gets automatically applied to trainee accounts when VMs are provisioned. When a VM is built from your snapshot by Giorgia or Mitchell, the provisioning script runs automatically: the trainee's username will be `userNN` (for example `user1`), their password is generated deterministically from their username and is unique per VM, the contents of `/etc/skel/` at snapshot time become the trainee's home directory, and `/etc/skel/` is cleared afterwards to reduce VM image size.
99

10-
---
1110

1211
## VM setup and access {#vm-setup}
1312

1413
### Launch a VM instance
1514

1615
VM instances are provisioned by Giorgia or Mitchell. Each dev machine is named with the prefix `D` followed by a number (for example `D1`).
1716

17+
1818
### Log in via SSH
1919

2020
The training team will provide you with a username and IP address. Your username follows the format `tdevNN`, where `NN` matches your VM's prefix number.
@@ -34,16 +34,16 @@ Once you have an active SSH connection, open your browser and go to:
3434

3535
Replace `<IP_Address>` with the IP address provided by the training team.
3636

37-
---
3837

3938
## Developing training materials {#developing-materials}
4039

4140
Set up your home directory (`/home/tdevNN`) exactly as you want trainees to experience it. Build and test your workflows there, using CVMFS containers and references throughout. The goal is a working, self-contained environment that a trainee could follow from start to finish.
4241

43-
> **Keep data small:** When the Australian BioCommons dataset repository is ready, it will be the main access point for training data. Like CVMFS, data stored there will not count against VM size. Until then, use the minimum input data needed to demonstrate the workflow. If your ideal dataset is too large to copy to every trainee home directory, see [If resources are not available on CVMFS](#non-cvmfs) for how to pull it at boot time instead.
42+
{% include callout.html type="tip" content="**Keep data small:** When the Australian BioCommons dataset repository is ready, it will be the main access point for training data. Like CVMFS, data stored there will not count against VM size. Until then, use the minimum input data needed to demonstrate the workflow. If your ideal dataset is too large to copy to every trainee home directory, see [If resources are not available on CVMFS](#non-cvmfs) for how to pull it at boot time instead." %}
4443

4544
Once everything works end-to-end, your home directory becomes the template.
4645

46+
4747
### Disk budget {#disk-budget}
4848

4949
The base VM template takes up approximately **12 GB** on a **30 GB** disk, leaving roughly **16 GB** of usable space. That space has to cover:
@@ -52,7 +52,7 @@ The base VM template takes up approximately **12 GB** on a **30 GB** disk, leavi
5252
- CVMFS-cached container layers and reference data (written to the CVMFS cache on first use)
5353
- Trainee working files generated during the session
5454

55-
> **Watch the disk:** If the disk fills up during user creation, the `useradd` step will fail and the trainee account will not be created. Keep `/etc/skel/` as lean as possible.
55+
{% include callout.html type="tip" content="**Watch the disk:** If the disk fills up during user creation, the `useradd` step will fail and the trainee account will not be created. Keep `/etc/skel/` as lean as possible." %}
5656

5757
Check how much space you have with:
5858

@@ -115,7 +115,8 @@ This creates a symlink in your current directory pointing to the CVMFS source. Y
115115
ln -s /cvmfs/data.galaxyproject.org/byhand/CHM13_T2T_v2.0/seq/CHM13_T2T_v2.0.fa /path/to/destination/my_reference.fa
116116
```
117117

118-
> **Symlinks must use relative paths or CVMFS paths.** If you create a symlink pointing to an absolute path inside your home directory (for example `/home/tdev01/data/reference.fa`), that path will not exist on trainee VMs and the link will be broken. Always point symlinks either at a CVMFS path (absolute paths under `/cvmfs/` are safe because CVMFS is available on all VMs) or at a relative path within the directory structure that will be copied to `/etc/skel/`.
118+
{% include callout.html type="note" content="**Symlinks must use relative paths or CVMFS paths.** If you create a symlink pointing to an absolute path inside your home directory (for example `/home/tdev01/data/reference.fa`), that path will not exist on trainee VMs and the link will be broken. Always point symlinks either at a CVMFS path (absolute paths under `/cvmfs/` are safe because CVMFS is available on all VMs) or at a relative path within the directory structure that will be copied to `/etc/skel/`." %}
119+
119120

120121
### RStudio and JupyterLab environments {#interactive-envs}
121122

@@ -132,7 +133,9 @@ BiocManager::install("DESeq2")
132133

133134
R writes packages to `~/R/x86_64-pc-linux-gnu-library/<version>/` by default. This directory will be picked up automatically when you copy your home directory to `/etc/skel/`.
134135

135-
> **Watch the size:** R packages for workflows like scRNA-seq (Seurat, Bioconductor suites) can be several gigabytes. Check the size before copying:
136+
{% include callout.html type="tip" content="**Watch the size:** R packages for workflows like scRNA-seq (Seurat, Bioconductor suites) can be several gigabytes." %}
137+
138+
Check the size before copying:
136139

137140
```bash
138141
du -sh ~/R/
@@ -156,6 +159,7 @@ du -sh ~/.local/
156159

157160
If a required container or reference dataset is not on CVMFS and is too large to include directly in the trainee directory, it needs to be fetched at boot time via the VM provisioning script. Prepare the required scripts and share them with Giorgia or Mitchell.
158161

162+
159163
#### Adding a pull step to the provisioning script
160164

161165
Downloads should be added before the `useradd` block, targeting the relevant folder inside `/etc/skel/`:
@@ -172,7 +176,8 @@ wget -q -O /home/$USERNAME/references/<file> <url>
172176

173177
Resources pulled this way will appear in the correct location in the trainee's home directory, matching the layout described in [Trainee directory layout](#directory-layout).
174178

175-
> **Note:** Boot-time pulls count toward your disk budget. Factor their size into your 30 GB total.
179+
{% include callout.html type="note" content="Boot-time pulls count toward your disk budget. Factor their size into your 30 GB total." %}
180+
176181

177182
### Trainee directory layout {#directory-layout}
178183

@@ -221,16 +226,17 @@ Once you are confident the template is correct, you can clean up your own home d
221226
rm -rf ~/*
222227
```
223228

224-
> **Tip:** Ask Giorgia or Mitchell to take a snapshot at key checkpoints if you want a backup before making significant changes.
229+
{% include callout.html type="tip" content="Ask Giorgia or Mitchell to take a snapshot at key checkpoints if you want a backup before making significant changes." %}
225230

226-
---
227231

228232
## Pre-snapshot requirements {#pre-snapshot}
229233

234+
230235
### Cloud-init datasource check {#cloud-init}
231236

232237
Running `apt upgrade` during VM setup can silently change cloud-init configuration, which causes all VMs built from your snapshot to inherit the wrong hostname. Please check and fix this before asking the VM to be snapshot.
233238

239+
234240
#### Step 1: Check for the offending apt file
235241

236242
```bash
@@ -257,13 +263,16 @@ datasource_list:
257263
- OpenStack
258264
```
259265
266+
260267
#### Step 3: Clean cloud-init state
261268
262269
```bash
263270
sudo cloud-init clean --logs
264271
```
265272

266-
> **Important:** `cloud-init clean` deletes `/etc/cloud/ds-identify.cfg`. You will need to recreate it:
273+
{% include callout.html type="important" content="`cloud-init clean` deletes `/etc/cloud/ds-identify.cfg`." %}
274+
275+
You will need to recreate it:
267276

268277
```bash
269278
sudo tee /etc/cloud/ds-identify.cfg << 'EOF'
@@ -279,6 +288,7 @@ cat /etc/cloud/ds-identify.cfg
279288

280289
Expected output: `policy: enabled`
281290

291+
282292
#### Step 4: Confirm the datasource
283293

284294
```bash

pages/using-bioshell.md

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,25 @@
11
---
22
title: Using BioShell
33
description: Overview of BioShell's core features — tools, interactive environments, reference data, and workflow integration.
4+
tiles:
5+
- title: "Accessing BioShell"
6+
url: /access
7+
- title: "Choose the right VM size (i.e. flavour) for my analysis"
8+
url: /flavours
9+
- title: "Connecting to BioShell"
10+
url: /connecting
11+
- title: "Find, install, and load a bioinformatics tool"
12+
url: /tools
13+
- title: "Work in a Jupyter or RStudio notebook"
14+
url: /interactive
15+
- title: "Run a Nextflow workflow using CVMFS containers"
16+
url: /nextflow
417
---
518

619
Once you are connected to your BioShell environment, you have access to a curated library
720
of bioinformatics tools, interactive coding environments, and an AI-assisted support agent.
821

9-
Use the sections below to find what you need.
22+
#### Use the tiles below to find what you need
23+
24+
{% include tiles-simple.html target = "tiles" col = "2" %}
1025

11-
| I want to… | Go to |
12-
|-----------|-------|
13-
| Choose the right VM size for my analysis | [Choosing a flavour](flavours) |
14-
| Find, install, and load a bioinformatics tool | [Tools and reference data](tools) |
15-
| Work in a Jupyter or RStudio notebook | [Interactive environments](interactive) |
16-
| Run a Nextflow workflow using CVMFS containers | [Using Nextflow with CVMFS](nextflow) |

0 commit comments

Comments
 (0)