Every exercise in this book

Each chapter includes one or two items, positioned where the chapter has just taught the concept they test. This page enumerates all items in reading order. A taught session may select a subset, and an individual reader can locate the desired item. Each item possesses an id that remains stable across edits. The stable id can be referenced aloud, in messages, or in shared documents during a workshop.

An easyconfig is Python

A toolchain is a hierarchy

A pin is for one generation

The robot

A versionsuffix is part of the name

What “installed” means

A checksum is a claim about bytes

One easyconfig, many installs

A hook changes a file you are not reading

Build your own, without asking anyone

EESSI, somebody else’s stack

eb-stack ports a recipe and bumps one

How a build executes

What a build is allowed to see

Build dependencies are not dependencies

What a toolchain injects

Patches, and what a patch is relative to

Languages that bring their own package manager

What a module exports

Reading a failed build

Writing one from nothing

Writing an easyblock

Testing, and the four things it can mean

Standing where the build stood

Reading a stack off the wire: CernVM-FS

The same stack somewhere else

Four things that actually happened

Your first week on somebody’s stack

Extensions, and what an entry in exts_list inherits

An easystack is the list the bot will build

The bot is three processes and a comment

A site stack next to EESSI, not inside it

Inspect writes a work queue, not a recipe

Format, lint, and check are three different questions

A stack lock is not a package lock

A campaign finding is a typed failure, not a log

A wrapper is the range EasyBuild will not write

Four EasyBuild 5 surfaces the earlier chapters skipped

A ReFrame test is a class

The pipeline has six stages

The configuration file is the machine

A performance function is a number with a unit

Compile or run-only

Parameters multiply the suite

A portable test leaves the machine in the config

Software maps to tests

Reading a failed ReFrame run