Start With CI/CD Using the Cloud Native Toolkit From the IBM Garage | DevsDay.ru

IT-блоги Start With CI/CD Using the Cloud Native Toolkit From the IBM Garage

DZone DevOps 8 апреля 2021 г. Thomas Suedbroecker


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:

  • Motivation
  • Basic Overview
  • Try it out
  • Open-Source Tools/Technologies
  • What are the major tasks inside an OOTB Tekton pipeline?
  • Summary

Motivation

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.

Basic Overview

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.

Try It Out

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.

Open-Source Tools/Technologies

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.

What Are the Major Tasks Inside an OOTB Tekton Pipeline?

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 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.

Summary

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

Читайте также


ReactJS Vs. AngularJS

Разработка DZone Web Dev 11 апреля 2021 г. 22:58
The utilization of JavaScript devices is expanding these days; it is overwhelming to pick the suitable innovation needed at a time. Allow us to talk about the two arising advancement technologies utilized these days, i.e., ReactJS vs. AngularJS. Reac...... читать далее
angularjs reactjs comparison javascript libraries programming-language

CI/CD Meets Oracle Transactional Business Intelligence

DevOps DZone DevOps 11 апреля 2021 г. 7:44
Oracle Transactional Business Intelligence (OTBI) is built on the power of Oracle's industry-leading business intelligence tool Oracle Business Intelligence Enterprise Edition (OBIEE). This allows users to build powerful data visualization with real-...... читать далее
devops continuous delivery continuous integration 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 Uber

QA 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...... читать далее

DevOps

DevOps 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 Дайджест продуктового...... читать далее

Дайджест Продуктовый дизайн

Популярные темы

новости (389) ux (357) design (326) headline (263) python (226) ubuntu (218) ux-design (213) devops (205) новость (204) javascript (200) web dev (193) security (186) seo (149) tutorial (140) дайджесты вакансий от new.hr (136) working in tech (132) статьи (130) ui (126) programming (117) testing roundup (113) software testing (110) user-experience (109) дизайн (97) google (93) product-design (93) java (89) игровые проекты (85) ui-design (84) design-thinking (83) api5 (76) технологии (76) primary (76) прочее (70) windows 10 (68) движки и конструкторы игр (67) бизнес (67) php (66) bash programming (66) laravel (65) technology (64) job hunting (64) hardware (60) debian (58) css (57) linux mint (57) uncategorized (56) обучение (55) мероприятия (53) работа (52) español (51) docker (50) covid-19 (50) case-study (49) web design and applications (49) android (49) chrome (48) cloud (48) турбо-страницы (47) инструкции (46) обзоры (45) data (45) angular (44) publication (44) machine learning (44) ux-research (44) tutorials (43) навыки алисы (43) inspiration (43) home page stories (43) apple (42) web (41) art (41) networking (41) разработчики (41) mysql mariadb (40) c++ (40) powershell (40) job skills (40) kubernetes (40) kali linux (40) ios (40) virtual reality (39) google ads (39) автоматизация (38) wp (38) vue.js (37) маркетинг (37) cybersecurity (37) тестирование (36) полезное (36) productivity (36) wordpress (36) события (36) aspnet (36) arch linux (36) marketing (36) кейсы (35) centos (35) events (35) обновления в instagram (35)