A pipeline is a sequence of automated operations that usually represents a part of software delivery and the quality assurance process. It can be simply seen as a chain of scripts providing the following additional benefits:
- Operation grouping: Operations are grouped together into stages (also known as gates or quality gates) that introduce a structure into the process and clearly defines the rule: if one stage fails, no further stages are executed
- Visibility: All aspects of the process are visualized, which help in quick failure analysis and promotes team collaboration
- Feedback: Team members learn about any problems as soon as they occur, so they can react quickly
The concept of pipelining is similar for most Continuous Integration tools, however, the naming can differ. In this book, we stick to the Jenkins terminology.