The software development life cycle includes work phases before it moves to production. As the software changes move closer to production, the quality checks and approval policies become stringent. This process is enforced to ensure that no disruptions occur in the production environment.
vRealize Code Stream enables central IT to host and manage new application workloads that lines of business and development operation teams drive. Application teams can independently use vRealize Code Stream to automate and streamline their software release process while they continue to use their preferred provisioning and deployment tools.
vRealize Code Stream also enables applications or operations teams to model their software release process in a release pipeline. A release pipeline is a sequence of stages. Each stage is composed of multiple tasks and environments that the software must pass through before it is released to production. The stages can include development, functional testing, user acceptance test, load testing, systems integration testing, staging, and production.
In each stage, teams might use different kinds of development and management tools. Using different tools results in the need to build a product that is extensible and that can integrate easily with various existing tools. To satisfy this need for flexibility, vRealize Code Stream offers a model-driven, open, and extensible architecture. With its catalog of plug-ins, you can integrate vRealize Code Stream with existing tools, including build and integration systems, testing frameworks, provisioning, deployment engines, change management systems, and so on.
Each stage in a pipeline includes a set of activities. The activities can provision a machine, retrieve an artifact, deploy software, run a test, create a manual task, or run a custom workflow or script, and so on. When the software changes satisfy a set of rules called gating rules, they are promoted to the next stage in the pipeline. The gating rules include testing rules and compliance rules. Gating rules that are associated with a pipeline are specific to an organization or an application. You can define gating rules when you create a pipeline template.