Skip to content

Commit 7b63918

Browse files
committed
Merge remote-tracking branch 'origin/main' into add-jupyter-esmvalcoreapi-tutorial
2 parents bf3f76a + 9d288a6 commit 7b63918

21 files changed

Lines changed: 1041 additions & 880 deletions

.github/workflows/build-check-tutorial-site.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ on:
66

77
jobs:
88
build:
9-
runs-on: ubuntu-20.04
9+
runs-on: "ubuntu-latest"
1010
steps:
1111
- uses: actions/checkout@v2
1212
- name: Setup Ruby

Gemfile

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,10 @@ git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
77
# Synchronize with https://pages.github.com/versions
88
ruby '>=2.5.3'
99

10-
gem 'github-pages', group: :jekyll_plugins
10+
# github-pages conflics with jekyll+liquid, but the site
11+
# builds well locally; github-pages gem is semi-deprecated
12+
# and should not be used as gem anymore, instead use via Actions
13+
# gem 'github-pages', group: :jekyll_plugins
14+
gem 'jekyll', '~> 4.3'
15+
gem 'csv'
16+
gem 'bigdecimal'

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export SHELL = /bin/bash
77
# Settings
88
MAKEFILES=Makefile $(wildcard *.mk)
99
JEKYLL_VERSION=3.8.5
10-
JEKYLL=bundle install --path .vendor/bundle && bundle update && bundle exec jekyll
10+
JEKYLL=bundle install && bundle update --all && bundle exec jekyll
1111
PARSER=bin/markdown_ast.rb
1212
DST=_site
1313

_episodes/00-introduction.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@
22
title: "Introduction"
33
teaching: 5
44
exercises: 10
5-
compatibility: ESMValTool v2.10.0
5+
compatibility: ESMValTool v2.14.0
66

77
questions:
88
- What is ESMValTool?
99
- Who are the people behind ESMValTool?
1010

1111
objectives:
12-
- Familiarize with ESMValTool
12+
- Familiarization with ESMValTool
1313
- Synchronize expectations
1414

1515
keypoints:
@@ -66,8 +66,8 @@ documentation:
6666
- lastname_firstname
6767

6868
datasets:
69-
- {dataset: HadGEM2-ES, project: CMIP5, exp: historical, mip: Amon,
70-
ensemble: r1i1p1, start_year: 1960, end_year: 2005}
69+
- {dataset: UKESM1-0-LL, project: CMIP6, exp: historical, mip: Amon,
70+
ensemble: r1i1p1f2, start_year: 1960, end_year: 2005}
7171

7272
preprocessors:
7373
global_mean:
@@ -84,7 +84,7 @@ diagnostics:
8484
scripts: hockeystick.py
8585
```
8686
87-
> ## Understanding the different section of the recipe
87+
> ## Understanding the different sections of the recipe
8888
>
8989
> Try to figure out the meaning of the different dataset keys. Hint: they can
9090
> be found in the documentation of ESMValTool.
@@ -106,7 +106,7 @@ results.
106106
> ## Explore the available recipes
107107
>
108108
> Go to the [ESMValTool Documentation webpage](https://docs.esmvaltool.org/) and
109-
> explore the `Available recipes` section. Which recipe(s) would you like to
109+
> explore the `Recipes` section in the sidebar. Which recipe(s) would you like to
110110
> try?
111111
{: .challenge}
112112

@@ -123,8 +123,8 @@ some of the most important pages.
123123
> the GitHub page of our 'organization'. Have a look around. How many collaborators are
124124
> there? Do you know any of them?
125125
>
126-
> Near the top of the page there are 2 pinned repositories: ESMValTool and
127-
> ESMValCore. Visit each of the repositories. How many people have contributed
126+
> Near the top of the page there are 3 pinned repositories: ESMValTool,
127+
> ESMValCore and Community. Visit each of the repositories. How many people have contributed
128128
> to each of them? Can you also find out how many people have contributed to
129129
> this tutorial?
130130
{: .challenge}

_episodes/01-quickstart.md

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Quickstart guide"
33
teaching: 2
44
exercises: 8
5-
compatibility: ESMValTool v2.10.0
5+
compatibility: ESMValTool v2.14.0
66

77
questions:
88

@@ -27,7 +27,7 @@ keypoints:
2727
see the [Installation][lesson-installation]
2828
episode for more details and use `esmvaltool --help` to check the ESMValTool
2929
environment"
30-
- "Use `esmvaltool config get_config_user` to create the ESMValTool user
30+
- "Use `esmvaltool config copy defaults/config-user.yml` to create the ESMValTool user
3131
configuration file"
3232
- "Use `esmvaltool run <recipe>.yml` to run a recipe"
3333
---
@@ -49,7 +49,13 @@ keypoints:
4949
>
5050
> - Load the ESMValTool environment by following the instructions at
5151
> [ESMValTool: Pre-installed versions on HPC clusters / other
52-
> servers][activate-environment].
52+
> servers][activate-environment]. This will typically involving loading a module
53+
> like so:
54+
>
55+
> ~~~
56+
> module load esmvaltool
57+
> ~~~
58+
> {: .language-bash}
5359
>
5460
> - Check the ESMValTool environment by accessing the help for ESMValTool:
5561
>
@@ -62,10 +68,10 @@ keypoints:
6268
> ## How do I configure ESMValTool?
6369
>
6470
> - Create the ESMValTool user configuration file (the file is written by
65-
> default to `~/.esmvaltool/config-user.yml`):
71+
> default to `~/.config/esmvaltool/config-user.yml`):
6672
>
6773
> ~~~
68-
> esmvaltool config get_config_user
74+
> esmvaltool config copy defaults/config-user.yml
6975
> ~~~
7076
> {: .language-bash}
7177
>
@@ -107,4 +113,4 @@ keypoints:
107113
> [Running your first recipe][lesson-recipe] episode in this tutorial.
108114
{: .challenge}
109115
110-
{% include links.md %}
116+
{% include links.md %}

_episodes/02-installation.md

Lines changed: 18 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Installation"
33
teaching: 10
44
exercises: 10
5-
compatibility: ESMValTool v2.10.0
5+
compatibility: ESMValTool v2.14.0
66
questions:
77
- "What are the prerequisites for installing ESMValTool?"
88
- "How do I confirm that the installation was successful?"
@@ -67,31 +67,36 @@ ESMValTool is distributed using [Mamba](https://mamba.readthedocs.io/en/latest/i
6767
To install mamba on ``Linux`` or ``MacOSX``, follow the instructions below:
6868

6969
1. Please download the installation file for the latest Mamba version
70-
[here](https://github.com/conda-forge/miniforge#mambaforge).
70+
for Linux
71+
[here](https://github.com/conda-forge/miniforge/releases/latest/download/
72+
Miniforge3-Linux-x86_64.sh)
73+
or for MacOSX
74+
[here](https://github.com/conda-forge/miniforge/releases/latest/download/
75+
Miniforge3-MacOSX-x86_64.sh).
7176

7277
2. Next, run the installer from the place where you downloaded it:
7378

7479
On ``Linux``:
7580

7681
```bash
77-
bash Mambaforge-Linux-x86_64.sh
82+
bash Miniforge3-Linux-x86_64.sh
7883
```
7984

8085
On ``MacOSX``:
8186

8287
```bash
83-
bash Mambaforge-MacOSX-x86_64.sh
88+
bash Miniforge3-MacOSX-x86_64.sh
8489
```
8590

8691
3. Follow the instructions in the installer. The defaults should normally
8792
suffice.
8893

8994
4. You will need to restart your terminal for the changes to have effect.
9095

91-
5. We recommend updating mamba before the esmvaltool installation. To do so, run:
96+
5. We recommend updating mamba and conda before the esmvaltool installation. To do so, run:
9297

9398
```bash
94-
mamba update --name base mamba
99+
mamba update --name base mamba conda
95100
```
96101

97102
6. Verify you have a working mamba installation by:
@@ -100,7 +105,7 @@ To install mamba on ``Linux`` or ``MacOSX``, follow the instructions below:
100105
which mamba
101106
```
102107

103-
This should show the path to your mamba executable, e.g. `~/mambaforge/bin/mamba`.
108+
This should show the path to your mamba executable, e.g. `~/miniforge3/bin/mamba`.
104109

105110
For more information about installing mamba,
106111
see [the mamba installation documentation](https://docs.esmvaltool.org/en
@@ -109,7 +114,7 @@ see [the mamba installation documentation](https://docs.esmvaltool.org/en
109114
### Install the ESMValTool package
110115

111116
The ESMValTool package contains diagnostics scripts in four languages: R,
112-
Python, Julia and NCL. This introduces a lot of dependencies, and therefore the
117+
Python and NCL. This introduces a lot of dependencies, and therefore the
113118
installation can take quite long. It is, however, possible to install
114119
'subpackages' for each of the languages. The following (sub)packages are
115120
available:
@@ -126,7 +131,7 @@ ESMValTool package, run
126131
mamba create --name esmvaltool esmvaltool
127132
```
128133

129-
On MacOSX ESMValTool functionalities in Julia, NCL, and R are not supported. To install
134+
On MacOSX ESMValTool functionalities in NCL, and R are not supported. To install
130135
a Mamba environment on MacOSX, please refer to specific [information](https://
131136
docs.esmvaltool.org/en/latest/quickstart/installation.html#installation-on-
132137
macosx).
@@ -146,59 +151,13 @@ installed in it.
146151
>
147152
{: .callout}
148153

149-
### Install Julia
150-
151-
Some ESMValTool diagnostics are written in the Julia programming language.
152-
If you want a full installation of ESMValTool including Julia diagnostics, you need
153-
to make sure Julia is installed before installing ESMValTool.
154-
155-
In this tutorial, we will not use Julia, but for reference, we have listed the steps
156-
to install Julia below.
157-
Complete instructions for installing Julia can be found on the [Julia
158-
installation page](https://julialang.org/downloads/platform/#linux_and_freebsd).
159-
160-
> ## Julia installation instructions
161-
>
162-
> First, open a bash terminal and activate the newly created `esmvaltool` environment.
163-
>
164-
> ```bash
165-
> conda activate esmvaltool
166-
> ```
167-
>
168-
> Next, to install Julia via `mamba`, you can use the following command:
169-
>
170-
> ```bash
171-
> mamba install julia
172-
> ```
173-
>
174-
> To check that the Julia executable can be found, run
175-
>
176-
> ```bash
177-
> which julia
178-
> ```
179-
>
180-
> to display the path to the Julia executable, it should be
181-
>
182-
> ```
183-
> ~/mambaforge/envs/esmvaltool/bin/julia
184-
> ```
185-
> {: .output}
186-
>
187-
> To test that Julia is installed correctly, run
188-
>
189-
> ```bash
190-
> julia
191-
> ```
192-
>
193-
> to start the interactive Julia interpreter. Press `Ctrl+D` to exit.
194-
{: .solution}
195154

196155
### Test that the installation was successful
197156

198157
To test that the installation was successful, run
199158

200159
```bash
201-
conda activate esmvaltool
160+
mamba activate esmvaltool
202161
```
203162

204163
to activate the conda environment called `esmvaltool`. In the shell prompt the
@@ -229,13 +188,13 @@ to display the command line help.
229188
> > {: .bash}
230189
> > The version of ESMValTool installed should be displayed on the screen as:
231190
> > ~~~
232-
> > ESMValCore: 2.10.0
233-
> > ESMValTool: 2.10.0
191+
> > ESMValCore: 2.14.0
192+
> > ESMValTool: 2.14.0
234193
> > ~~~
235194
> > {: .output}
236195
> Note that on HPC servers such as JASMIN, sometimes a more recent development
237196
> version may be displayed for ESMValTool, for e.g.
238-
> `ESMValTool: 2.9.0.dev4+g6948d5512`
197+
> `ESMValTool: 2.15.0.dev4+g74d7837f0`
239198
> {: .solution}
240199
{: .challenge}
241200

0 commit comments

Comments
 (0)