Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upstream 2024e #100

Merged
merged 55 commits into from
Mar 11, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
4e2a2fb
Merge pull request #34 from carpentries-incubator/gh-pages
WesHarrell Feb 21, 2022
00d3809
Merge pull request #56 from carpentries-incubator/gh-pages
WesHarrell Sep 12, 2022
f63f2ca
Update 13-scheduler.md
eckhrd Mar 20, 2023
742c396
Merge pull request #431 from eckhrd/patch-1
tkphd Mar 20, 2023
d479704
Update 17-resources.md
eckhrd Apr 20, 2023
05f26f8
Merge pull request #434 from eckhrd/patch-2
tkphd Apr 20, 2023
76b050d
Merge branch 'gh-pages' into gh-pages-upstream-compat
CallumWalley Jun 23, 2023
0646b2a
Generate HPCC Cluster library, fix some random lesson deficiencies
tkphd Jul 6, 2023
fe69a7b
Update using-nodes-interactively.snip
ocaisa Sep 21, 2023
b369a9a
Merge pull request #436 from carpentries-incubator/cluster.hpc-carpen…
ocaisa Sep 21, 2023
790b9cb
Switch default config to HPCC cluster
ocaisa Sep 21, 2023
a8bb0c1
Retain other lesson info
ocaisa Sep 21, 2023
a67d53d
Retain other useful info
ocaisa Sep 21, 2023
5f56875
Update _config.yml
ocaisa Sep 21, 2023
3b80a22
Update _config.yml
ocaisa Sep 21, 2023
a38df44
Update _config.yml
ocaisa Sep 21, 2023
d2f3d2e
Update _config.yml
ocaisa Sep 21, 2023
c356c28
Update _config.yml
ocaisa Sep 21, 2023
f2c5e57
Update _config.yml
ocaisa Sep 21, 2023
072536a
Merge pull request #440 from carpentries-incubator/ocaisa-patch-1
tkphd Sep 21, 2023
dda9cbe
Update Gemfile and fix some typos
tkphd Jan 10, 2024
2783320
codespell args are hard
tkphd Jan 10, 2024
39b9ad4
cleanup crufty text from another lib
tkphd Jan 10, 2024
24d8195
Use packaged codespell instead of pip
tkphd Jan 10, 2024
f4671be
Create missing file
tkphd Jan 10, 2024
292704b
cache bundle
tkphd Jan 10, 2024
f02f317
missing file
tkphd Jan 10, 2024
30a2417
Overhaul markdownlint using config file
tkphd Jan 10, 2024
5683b94
Missed a file
tkphd Jan 10, 2024
2edc1a9
Figuring out how GH Actions work.
tkphd Jan 10, 2024
b725003
Long URLs should maybe be ref-links?
tkphd Jan 10, 2024
23e931f
Complete listing of mdl rules
tkphd Jan 10, 2024
5f19e45
Merge pull request #444 from tkphd/update-workflows
ocaisa Jan 10, 2024
8525205
Added all changes associated with EPCC_Cirrus_slurm.
mbareford Feb 15, 2022
386f6b9
Removed references to Cirrus PBS.
mbareford Feb 15, 2022
bb98847
Update episode list
tkphd Jan 10, 2024
3f08d99
Repair some Markdown, prune some files
tkphd Jan 10, 2024
0172a81
Restore a couple missing files
tkphd Jan 10, 2024
cc4f5f2
Fold templated stuff into core lesson
tkphd Jan 10, 2024
642c4b5
Restore rule: blanks around headings
tkphd Jan 10, 2024
5296cd7
Populate missing config flag, fix broken link
tkphd Jan 10, 2024
b28d74e
Merge pull request #445 from tkphd/epcc-cirrus-slurm
ocaisa Jan 10, 2024
7588e52
Add episode on environment variables
ocaisa Jan 26, 2024
2c78920
Pass linter
ocaisa Jan 26, 2024
d39a26e
Fix code block naming
ocaisa Jan 27, 2024
29e5aa1
Fix linting again
ocaisa Jan 27, 2024
0416de9
Some tweaks
ocaisa Jan 27, 2024
7ab14d5
Further tweaks
ocaisa Jan 27, 2024
e91145b
Make sure environment variables are not referenced before we cover them
ocaisa Jan 28, 2024
198e575
Update snippet lib episode lists
tkphd Feb 1, 2024
5f272f8
Teeny little typo
tkphd Feb 1, 2024
fd61fb6
Merge pull request #446 from ocaisa/runtime_env
tkphd Feb 1, 2024
b383b23
Merge branch 'gh-pages' of https://github.com/carpentries-incubator/h…
CallumWalley Mar 7, 2024
142b5bc
Merge branch 'gh-pages-upstream-compat' into gh-pages-nesi
CallumWalley Mar 11, 2024
701162a
Some changes from upstream
CallumWalley Mar 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .codespell-ignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Fram
dropse
figurestyle
hist
namd
rouge
35 changes: 21 additions & 14 deletions .github/workflows/test_and_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,17 +6,13 @@ on:
push:

jobs:
spellcheck:
lint_common_files:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: '3.9'
- name: Install codespell
run: |
python3 -m pip install codespell
sudo apt-get install codespell
- name: Check spelling
run: |
make spellcheck
Expand All @@ -35,13 +31,25 @@ jobs:
- name: Check prose
run: |
proselint **/*.md
- name: Check top-level Markdown syntax
uses: DavidAnson/markdownlint-cli2-action@v9
- name: Check episode Markdown syntax
uses: DavidAnson/markdownlint-cli2-action@v9
with:
globs: _episodes/*.md
- name: Check extra Markdown syntax
uses: DavidAnson/markdownlint-cli2-action@v9
with:
globs: _extras/*.md

check_lesson_and_build_default:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: '2.7'
ruby-version: '3.0.4'
bundler-cache: true
- name: Install basic requirements
run: |
# Need this library for nokogiri
Expand All @@ -50,9 +58,6 @@ jobs:
bundle config set path '.vendor/bundle'
bundle config build.nokogiri --use-system-libraries
bundle install
- name: "Lint episode markdown"
run: |
find _episodes -name \*.md -exec bundle exec mdl -r MD001,MD003,MD005,MD006,MD007,MD008,MD009,MD010,MD011,MD012,MD015,MD016,MD017,MD018,MD019,MD020,MD021,MD022,MD023,MD025,MD035,MD036,MD037,MD038,MD039,MD046 {} \;
- name: "Check lesson for warnings"
run: |
make lesson-check-all
Expand All @@ -73,7 +78,8 @@ jobs:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: '2.7'
ruby-version: '3.0.4'
bundler-cache: true
- name: Install basic requirements
run: |
# Need this library for nokogiri
Expand All @@ -85,6 +91,7 @@ jobs:
- name: Check build ${{matrix.HPC_JEKYLL_CONFIG}}
run: |
make --always-make site HPC_JEKYLL_CONFIG=_includes/snippets_library/${{matrix.HPC_JEKYLL_CONFIG}}/_config_options.yml
- name: "Lint snippet markdown"
run: |
find _includes/snippets_library/${{matrix.HPC_JEKYLL_CONFIG}} -name \*.snip -exec bundle exec mdl -r MD001,MD003,MD005,MD006,MD007,MD008,MD009,MD010,MD011,MD012,MD015,MD016,MD017,MD018,MD019,MD020,MD021,MD022,MD023,MD025,MD035,MD036,MD037,MD038,MD039,MD046 {} \;
- name: Lint snippet markdown
uses: DavidAnson/markdownlint-cli2-action@v9
with:
globs: _includes/snippets_library/${{matrix.HPC_JEKYLL_CONFIG}}/**/*.snip
73 changes: 73 additions & 0 deletions .markdownlint-cli2.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# markdownlint-cli2:
# - Example: <https://github.com/DavidAnson/markdownlint-cli2/blob/main/test/markdownlint-cli2-yaml-example/.markdownlint-cli2.yaml>
# - Rules: <https://github.com/DavidAnson/markdownlint/blob/main/README.md#rules--aliases>
---
config:
MD001: false # heading-increment
MD002: false # mdl rule undefined
MD003: true # heading-style
MD004: true # ul-style
MD005: true # list-indent
MD006: false # mdl rule undefined
MD007: true # ul-indent
MD008: false # mdl rule undefined
MD009: true # no-trailing-spaces
MD010: true # no-hard-tabs
MD011: true # no-reversed-links
MD012: true # no-multiple-blanks
MD013: false # line-length
MD014: false # commands-show-output
MD015: false # mdl rule undefined
MD016: false # mdl rule undefined
MD017: false # mdl rule undefined
MD018: true # no-missing-space-atx
MD019: true # no-multiple-space-atx
MD020: true # no-missing-space-closed-atx
MD021: true # no-multiple-space-closed-atx
MD022: true # blanks-around-headings
MD023: true # heading-start-left
MD024: false # no-duplicate-heading
MD025: true # single-h1
MD026: false # no-trailing-punctuation
MD027: false # no-multiple-space-blockquote
MD028: false # no-blanks-blockquote
MD029: true # ol-prefix
MD030: true # list-marker-space
MD031: false # blanks-around-fences
MD032: true # blanks-around-lists
MD033: false # no-inline-html
MD034: true # no-bare-urls
MD035: true # hr-style
MD036: true # no-emphasis-as-heading
MD037: true # no-space-in-emphasis
MD038: true # no-space-in-code
MD039: true # no-space-in-links
MD040: false # fenced-code-language
MD041: false # first-line-h1
MD042: true # no-empty-links
MD043: false # required-headings
MD044: true # proper-names
MD045: true # no-alt-text
MD046: true # code-block-style
MD047: true # single-trailing-newline
MD048: true # code-fence-style
MD049: false # emphasis-style
MD050: false # strong-style
MD051: true # link-fragments
MD052: true # reference-links-images
MD053: false # link-image-reference-definitions
MD054: false # link-image-style
MD055: true # table-pipe-style
MD056: true # table-column-count

ignores:
- .vendor
- .bundle
- _extras/figures.md # really HTML
- _includes/links.md # just a list of links
- "**/*.html"
- "**/*.sh"
- "**/*.yaml"
- "**/*.yml"

# noProgress: true
1 change: 0 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,4 +130,3 @@ which everyone is welcome to join. You can also [reach us by email][email].
[swc-issues]: https://github.com/issues?q=user%3Aswcarpentry
[swc-lessons]: https://software-carpentry.org/lessons/
[swc-site]: https://software-carpentry.org/

18 changes: 16 additions & 2 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,19 @@
source "https://rubygems.org"
gem "github-pages", group: :jekyll_plugins
# frozen_string_literal: true

source 'https://rubygems.org'

git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }

# Synchronize with https://pages.github.com/versions
ruby '3.0.4'

gem 'github-pages', group: :jekyll_plugins

if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('3.0.0')
gem 'webrick', '>= 1.6.1'
end

gem "kramdown-parser-gfm"

gem "mdl"
gem "webrick"
4 changes: 1 addition & 3 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
---
title: "Licenses"
title: "License: CC BY 4.0"
---

# CC BY 4.0

## Instructional Material

All High Performance Computing Carpentry instructional material is
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ lesson-fixme :

## spellcheck
spellcheck:
codespell --skip="assets,*.svg,.vendor" --quiet-level=2 -L "dropse,figurestyle,hist,namd,rouge,ane"
codespell --skip=".bundle,.vendor,assets,*.svg" --quiet-level=2 --ignore-words=".codespell-ignore"

##
## IV. Auxililary (plumbing) commands
Expand Down
19 changes: 17 additions & 2 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,17 @@
#------------------------------------------------------------
# NeSI: Mahuika + SLURM
#------------------------------------------------------------

# Cluster host and scheduler options: the defaults come from
# the HPC Carpentry tutorial cluster, running Slurm. Other
# options can be found in the library of snippets,
# `_includes/snippets_library`. To use one, replace options
# below with those in `_config_options.yml` from the
# library. E.g, to customise for Cirrus at EPCC, running
# Slurm, we could replace the options below with those from
#
# _includes/snippets_library/EPCC_Cirrus_slurm/_config_options.yml
#
# If your cluster is not represented in the library, please
# copy an existing folder, rename it, and customize for your
# installation. Remember to keep the leading slash on the
Expand All @@ -9,19 +20,22 @@
snippets: "/snippets_library/NeSI_Mahuika_slurm"

local:
prompt: "[user@laptop ~]$"
prompt: "[you@laptop:~]$"
bash_shebang: "#!/usr/bin/env bash"

remote:
name: "mahuika"
login: "nesi.org.nz"
portal: ""
host: "mahuika02"
node: "mahuika02"
location: "Greta Point Datacenter"
homedir: "/home"
user: "yourUsername"
prompt: "[yourUsername@mahuika ~]$"
bash_shebang: "#!/bin/bash -e"
module_python3: "Python"


sched:
name: "Slurm"
Expand All @@ -30,6 +44,7 @@ sched:
options: ""
queue:
debug: "debug"
testing: ""
status: "squeue"
flag:
user: "-u yourUsername"
Expand Down Expand Up @@ -83,7 +98,7 @@ episode_order:
# "swc": Software Carpentry
# "dc": Data Carpentry
# "lc": Library Carpentry
# "cp": Carpentries (e.g., instructor traning)
# "cp": Carpentries (e.g., instructor training)
carpentry: "incubator"

# Overall title for pages.
Expand Down
7 changes: 6 additions & 1 deletion _episodes/.11-connecting.md
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,9 @@ See the [PuTTY documentation][putty-agent].
### Transfer Your Public Key

{% if site.remote.portal %}
Visit {{ site.remote.portal }} to upload your SSH public key.
Visit [{{ site.remote.portal }}]({{ site.remote.portal }}) to upload your SSH
public key. (Remember, it's the one ending in `.pub`!)

{% else %}
Use the **s**ecure **c**o**p**y tool to send your public key to the cluster.

Expand Down Expand Up @@ -406,6 +408,8 @@ the other files, or files like them: `.bashrc` is a shell configuration file,
which you can edit with your preferences; and `.ssh` is a directory storing SSH
keys and a record of authorized connections.

{% unless site.remote.portal %}

### Install Your SSH Key

> ## There May Be a Better Way
Expand Down Expand Up @@ -449,6 +453,7 @@ password for your SSH key.
{{ site.local.prompt }} ssh {{ site.remote.user }}@{{ site.remote.login }}
```
{: .language-bash}
{% endunless %}

{% include links.md %}

Expand Down
9 changes: 3 additions & 6 deletions _episodes/04-modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ not found` error, for instance.
Software versioning is another common issue. A team might depend on a certain
package version for their research project - if the software version was to
change (for instance, if a package was updated), it might affect their results.
Having access to multiple software versions allow a set of researchers to
Having access to multiple software versions allows a set of researchers to
prevent software versioning issues from affecting their results.

Dependencies are where a particular software package (or even a particular
Expand Down Expand Up @@ -107,7 +107,7 @@ self-contained description of a software package -- it contains the
settings required to run a software package and, usually, encodes required
dependencies on other software packages.

There are a number environment module implementations commonly
There are a number of different environment module implementations commonly
used on HPC systems: the two most common are _TCL modules_ and _Lmod_. Both of
these use similar syntax and the concepts are the same so learning to use one
will allow you to use whichever is installed on the system you are using. In
Expand Down Expand Up @@ -191,7 +191,6 @@ Now lets try loading the R environment module, and try again.

{% include {{ site.snippets }}/modules/module-load-r.snip %}


> ## Tab Completion
>
> The module command also supports tab completion. You may find this the easiest way to find the right software.
Expand All @@ -200,9 +199,7 @@ Now lets try loading the R environment module, and try again.
So, what just happened?

To understand the output, first we need to understand the nature of the `$PATH`
environment variable.

`$PATH` is a special environment variable that controls
environment variable. `$PATH` is a special environment variable that controls
where a UNIX system looks for software. Specifically `$PATH` is a list of
directories (separated by `:`) that the OS searches through for a command
before giving up and telling us it can't find it. As with all environment
Expand Down
Loading
Loading