A pipeline is an event-driven automated workflow for executing a set of DevOps activities (CI, deployments, infrastructure provisioning, etc). It is composed of a sequence of interdependent steps which execute discrete functions. Steps act on resources, which hold the information needed to execute (files, key-value pairs, etc).
Developers can create pipelines easily with a simple declarative YAML-based language. While each step in a pipeline executes in a stateless runtime environment, Pipelines provides facilities to manage state and step outputs across the workflow so that all dependent steps can access the information they need from upstream steps in order to execute. This helps coordinate activities centrally across diverse DevOps tools and teams without custom DIY scripts.
Workflows can be configured for a variety of scenarios, including:
Continuous Integration for your applications
Continuous Delivery workflows that connect all your CI/CD and DevOps activities across tools and functional silos
Automate IT Ops workflows like infrastructure provisioning, security patching, and image building