Running CI jobs in sequential, parallel, and custom orders
Dec 10, 2020Itzik Gan Baruch

Summary
This post introduces the concepts of sequential job execution using `stages`, artifact management with `paths` and `expire_in`, and parallel job execution within stages. It also demonstrates how to specify Docker images using the `image` keyword and how to define job dependencies using `needs` to create Directed Acyclic Graphs (DAGs) for more flexible pipeline execution. The post also covers installing missing packages within a job's `before_script`.