# CodePipeline A fully managed CI/CD pipeline. - **Pipeline** is what encompasses all components. - **Stage** represents a step in the pipeline. The most common steps would be [[_CodeCommit|Source]] -> Build -> Deploy. You may add many stages, so use your creativity. - **Action Groups** group several **Actions** together. - **Actions** do things. The can pull source code, build and run tests, deploy to production, invoke a [[_Lambda|_Lambda]], invoke a [[_CloudFormation|CloudFormation]] template. - **Artifacts** are zips containing files outputted by an **Action**. An **Artifact** can be passed to any future **Actions** and some **Actions** require to input an **Artifact** and can optionally output an **Artifact**. - **Stage Transitions** link the pipeline stages together. ## CodePipeline Actions Actions are not restricted to specific stages. You can use Deploy Actions is a Build Stage. Pipeline are only limited by your creativity. You can create custom actions if you need functionality beyond default.