EasyBuild: the file, the tree, and the run
  • Journeys
  • RecipeReader
  • StackWalker
  • ReframeReader
Skip to content
  • Journeys
    • Journey: first recipe
      • Tutorial: read an easyconfig the way EasyBuild does
      • An easyconfig is Python
      • A toolchain is a hierarchy
      • A pin is for one generation
      • The robot
    • Journey: a build failed
      • Reading a failed build
      • A versionsuffix is part of the name
      • What “installed” means
      • A checksum is a claim about bytes
      • A hook changes a file you are not reading
    • Journey: port a package
      • eb-stack ports a recipe and bumps one
      • Inspect writes a work queue, not a recipe
      • SeisSol, from a Spack recipe to a PR
    • Journey: write a test
      • Testing, and the four things it can mean
      • A ReFrame test is a class
      • The pipeline has six stages
      • The configuration file is the machine
      • A portable test leaves the machine in the config
      • Software maps to tests
  • RecipeReader
    • Read a file
      • An easyconfig is Python
      • A toolchain is a hierarchy
      • A pin is for one generation
      • The robot
      • Tutorial: read an easyconfig the way EasyBuild does
    • When it fails
      • 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
      • Reading a failed build
      • Four things that actually happened
      • Your first week on somebody’s stack
    • How it runs
      • How a build executes
      • The isolation policy
      • 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
      • Standing where the build stood
    • Write one
      • Build your own, without asking anyone
      • eb-stack ports a recipe and bumps one
      • Writing one from nothing
      • Writing an easyblock
      • Extensions, and what an entry in exts_list inherits
      • 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 pages skipped
      • SeisSol, from a Spack recipe to a PR
  • StackWalker
    • EESSI, somebody else’s stack
    • Reading a stack off the wire: CernVM-FS
    • The same stack somewhere else
    • 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
  • ReframeReader
    • Testing, and the four things it can mean
    • 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
  • A path through this book
  • Glossary
  • What to remember
  • Every exercise in this book
  • References
  • At the back
  • Afterword: when EasyBuild is the wrong tool
  1. EasyBuild: the file, the tree, and the run /
  2. Journeys /
  3. Journey: first recipe

Journey: first recipe¶

first-recipe journey through tutorial, Python, toolchain, pin, robot

The first-recipe journey reads a file the way EasyBuild does, then the four mechanisms.¶

  • Tutorial: read an easyconfig the way EasyBuild does
  • An easyconfig is Python
  • A toolchain is a hierarchy
  • A pin is for one generation
  • The robot

Read a file as EasyBuild does. Then the four mechanisms that everything else rests on.

  • Read an easyconfig the way EasyBuild does

  • An easyconfig is Python

  • A toolchain is a hierarchy

  • A pin is for one generation

  • The robot

Previous
Journeys
Next
Tutorial: read an easyconfig the way EasyBuild does

2026, Rohit Goswami

Made with Shibuya theme.