The fastest job is the one you never run
Half my CI jobs ran for no reason on every merge request. Skipping them with rules:changes, and why that is trickier than the manual suggests.

Half my CI jobs ran for no reason on every merge request. Skipping them with rules:changes, and why that is trickier than the manual suggests.

Nearly every CI job began by fetching and compiling the same tools. Baking them into one image instead, and what that saved per pipeline.
