Development handbook

April 29, 2022 · View on GitHub

Concepts

Core concepts

  • The "minimal dependencies" principle & the use of Docker — on the fact that we don't require many dependencies to be installed on the local machine, and that instead we use dependencies through Docker.
  • Package organization — which package types exist, what they are for, and how they relate to each other.
  • Build steps — what steps are involved in order to build packages, and how they relate to each other.
  • Build workflow management — how we manage the fact that we have to build packages for multiple distributions, variants and Ruby versions.
  • Build environments — how we utilize Docker images to build packages for different distributions and for running tasks.
  • Source organization — how the Git repository is organized, and which files serve what purpose.

Advanced concepts

Tutorials & tasks

General

Testing

CI/CD

Routine maintenance

Organizational (for team members)