Today’s blog post is about the awesome IBM Garage Cloud Native Toolkit
to support continuous integration and continuous delivery (CICD).
I want to provide a basic overview from my perspective, which I structured in the following sections:
I love to see how tools can support different kinds of software development processes fully or partly, especially in today’s agile world. With my background of using Rational Tools for a long time, I always like to see, how is it possible to make life easier for the different roles in the Software Development Lifecycle.
Continuous integration and continuous delivery are two big important parts of the effective implementation of a Software Development Lifecycle in a company to speed up development and innovation. So, the IBM Garage Cloud Native Toolkit
exactly does address these two critically important topics. The toolkit does address it with a concrete initial configuration.
The Cloud Native Toolkit utilizes the Tekton Operator to create an awesome starting point with a pre-configuration for continuous integration and continuous delivery in your Red Hat OpenShift cluster using Open-Source tools.
I wanted to try out the Cloud Native Toolkit with my own simple project and I used one of my very basic Node.js server implementations in my private GitHub repository. My objective was only to try out the basic Out-Of-The-Box
configuration. I followed the given guides in the getting started documentation of the Cloud Native Toolkit for the setup of the toolkit and then I used it.
The documentation worked fine for me for the entire setup and the usage for my example application.
The Cloud Native Toolkit highlights in an impressive way how Open-Source technologies/tools can be used together to support continuous integration and continuous delivery for containerized applications in Red Hat OpenShift. So, I want to give you a basic overview of the used Open-Source tools/technologies in the Out-Of-The-Box
default configuration for a Tekton pipeline, provided by the Cloud Native Toolkit.
These are the used Open-Source tools/technologies in the pipeline with a very short explanation of what they do address in the context of the Cloud Native Toolkit:
OPEN-SOURCE TECHNOLOGY/TOOL | ADDRESSES FOLLOWING TOPIC |
---|---|
Tekton | Continuous integration is realized with Tekton. The following image shows some of the predefined tasks in the Tekton pipeline and how the pipeline appears in Red Hat OpenShift. |
Tekton Operator | The IBM Garage team is using the Tekton Operator provided by Red Hat to set up the Cloud Native Toolkit inside Red Hat OpenShift. |
ArgoCD | Continuous delivery is implemented with ArgoCD, related to GitOps. |
SonarQube | White box testing/scanning is realized with SonarQube. That's related to the implementation of the scanning for the well-known top 10 security risks identified by the OWASP project, which is well known in the application security area. |
Artifactory | Saving binary assets like tgz files containing the Helm chart configurations within Artifactory. |
Helm charts | Defining the deployment of the containerized applications with Helm charts. “Helm is the best way to find, share, and use software built for Kubernetes.” |
Mocha and supertest | In the Tekton Task Test, I used for the unit tests of my Node.js server Mocha in combination with Supertest. |
The IBM Garage team did a lot of bash programming and YAML pre-configration for the Tekton tasks and steps to reflect, for example, different quality gates you can customize to stop the execution of your pipeline. It also includes a lot of experience from a huge number of different customers' projects.
The image contains a brief look inside an example of task implementation.
Image 1: Screenshot of the default configuration for a pipeline.
Image 2: Overview of the preconfigured Tekton pipeline tasks
Here is a short and very simplified overview of the preconfigured Tekton pipeline tasks, which are defined for the Out-Of-The-Box
configuration I used.
TASK | MAJOR STEPS | CONTENT |
---|---|---|
Setup | git-clone |
|
Test | git-clone , build , test , sonar-scan |
Executing unit tests and security scanning for the application. |
Build | git-clone , build |
Building a container image based on the Dockerfile |
Deploy | git-clone , deploy |
Deploying the application using a helm chart . |
Health | health-check |
Verifying health endpoint for your application. |
Tag-release | git-clone , git-tag |
Doing an automated tagging of your deployed releases in your GitHub project. |
Img-release | image-tag |
Tag the container image in your container registry. |
Img-scan | yourregisty-pull , yourregistry-scan |
Security scan of the container using container registry capabilities. |
Helm-release | git-clone , package-helm |
Helm chart for this deployment will be saved in a repository. |
Gitops | gitops |
Using the Helm chart to deploy container into other projects with ArgoCD. These projects can reflect for example deferent environments like test , stage or production and save this GitOps configuration in a GitHub Project. |
The IBM Cloud Garage team invested time and shared their experience with us to provide us a great professional starting point with pre-configurations and guided setups containing different Open-Source tools/projects to get started with a setup and using continuous integration and continuous delivery in a professional way. The Cloud Native Toolkit also provides various templates for different technologies.
Источник: DZone DevOps
continuous delivery continuous integration openshift cloud native continuous deployment cloud native applications cloud native apps tekton operator
CI/CD Meets Oracle Transactional Business Intelligence
DevOps • DZone DevOps • 11 апреля 2021 г. 7:33
What Is GitOps and Why Is It Such a Big Deal? According to Weaveworks, the company who coined the term "GitOps," defining the term is two-fold. First, it is "an operating model for Kubernetes and other cloud-native technologies, providing a set of be...... читать далее
cloud devops kubernetes interview podcast gitops coding over cocktailsРазработка • Dice Insights • 9 апреля 2021 г. 11:10
You made it to the weekend! Before you sign out of your accounts and go outside, let’s take a moment to revisit some of the big […] The post Weekend Roundup: Uber’s Big Payouts; Intel Wants to End Online Cursing appeared first on Dice Insights.... читать далее
Headline Working in Tech Google Intel UberQA • EuroSTAR Huddle • 9 апреля 2021 г. 7:06
Today, speed and quality are two indispensable traits a business requires to thrive online. Your business needs to focus on... Read more + The post DevOps and Cloud: How DevOps is Dictating a New Approach to Cloud Development appeared first on EuroS...... читать далее
DevOpsDevOps • DZone DevOps • 8 апреля 2021 г. 18:32
Introduction With the highest performing DevOps teams deploying on average four times a day, the pressure is on. Your team should always be looking to improve the speed and quality of your process. A solution may be closer than you think. What Is a F...... читать далее
devops update pair programming feedback loop feedback loops ci and cd ci cd implementation devops deployment streamline content tasksДизайн • Юрий Ветров об интерфейсах • 12 апреля 2021 г. 5:30
Дайджест собирает свежие статьи по дизайну интерфейсов, а также инструменты, паттерны, кейсы, тренды и исторические рассказы с 2009 года. Я тщательно фильтрую большой поток подписок, чтобы вы могли прокачать свои… The post Дайджест продуктового...... читать далее
Дайджест Продуктовый дизайн