What is the pipeline in DevOps

The concept of the pipeline has been strongly influenced by the topic of DevOps in connection with software development in recent years. In general, a pipeline in software development stands for the sum of all activities that lead from an idea to the operation of this idea. With regard to DevOps, the pipeline often corresponds to a continuous delivery pipeline, which has been expanded to include additional automatisms for monitoring and communication between operation and development of the software.

Building a pipeline

To set up a pipeline, the existing processes must be considered and documented (who does what and with what?). After all steps have been recorded, your own pipeline can be optimized. For this, in the spirit of DevOps, these questions must be asked:

  • What exactly do we do in that step?
  • How well does it work?
  • What can we do better?

Based on the answers, the implementation of improvement measures can then be started, e.g. by automating steps or selecting more suitable tools.

Components of a pipeline

Essentially, every software development pipeline includes these steps:

  • Planning of changes to the software
    • Roadmap
    • Issue tracking
    • Backlog
  • Writing the code
  • Build
  • test
    • Unit tests
    • Integration tests
    • Functional tests
  • Release
    • On a test server (staging)
    • Productive
  • business

Tools of a pipeline

These steps are implemented with the help of tools.

  • Ideas for changes can come in a Issue tracker or Wiki be collected and elaborated.
  • Code comes with a IDE written and in one Version management tool saved.
  • Builds come with a Build server carried out. He also carries out automated tests himself or breaks it in Code analysis tool at. Finally, the build server deploys the software to a server or places the build in one Artifact repository from.

Sample pipeline

The tools of a pipeline can be operated very easily with the Cloudogu EcoSystem. It is a platform for tools that are usually needed for a pipeline. The advantage of the platform is that it can be operated and expanded with little effort.

An example of a very simple pipeline is this:

  • The code is in the tool SCM manager saved.
  • The Build Server Jenkins runs builds and unit tests. It also runs a static code analysis SonarQube and finally creates the application versioned in Nexus repository from.

This pipeline can be used anywhere to include issue trackers such as Redmine, Easy Redmine or JIRA, Wikis like Smeagol or Confluence, the database management system Cassandra, Requirements management with Fidelia or container management with Portainer be expanded.

Download the EcoSystem now

Would you like to set up the CES yourself? No problem, we will provide you with the Community Edition as a free download.

Download CES