Create a Self-Hosted GitHub Action runner
In the world of continuous integration and continuous deployment (CI/CD), automation is key. GitHub Actions provides a powerful platform to automate workflows directly from your repositories. While GitHub’s hosted runners are a convenient option, there are times when you might need more control over your environment. This is where self-hosted runners come into play. In this blog, we’ll walk you through the process of creating and managing a GitHub self-hosted runner. PrerequisitesAn...
How to push EC2 logs to Cloudwatch
Amazon CloudWatch is a monitoring and observability service that provides you with data and actionable insights to monitor your applications, respond to system-wide performance changes, optimize resource utilization, and get a unified view of operational health. In this tutorial, we are going to learn how to push EC2 logs to CloudWatch. Create an IAM role for CloudwatchFirst, we need to create and add a custom EC2 IAM role to your instance. This IAM role will have policies with write access...
Tekton triggers with GitHub integration
Continuous Integration (CI) is a cornerstone of modern software development, ensuring that code changes are tested and integrated into the main codebase frequently and reliably. Tekton Triggers, coupled with GitHub integration, offers a powerful solution for automating CI workflows in Kubernetes environments. In this tutorial, we’ll walk through the process of setting up Tekton Triggers with GitHub integration, enabling seamless automation of CI tasks in response to GitHub events. Let’s dive...
Build and push Docker images using Tekton and Buildah
In the fast-paced realm of containerization, optimizing the journey from code to container is a perpetual quest. In this blog post, we explore the synergy of Tekton and Buildah, showcasing how these tools team up to streamline the process of building and pushing Docker images. Join us for a concise guide on leveraging their power for a more efficient containerization workflow. Let’s dive in! SetupFirst we need to pull the latest changes from the git repository. Let’s assume that if we need...
Build and push Docker images using Tekton and Kaniko
Containerization has transformed the landscape of software development and deployment, with Docker being a popular choice for packaging applications into isolated containers. In Kubernetes environments, efficiently building and pushing Docker images is crucial for maintaining a streamlined development and deployment pipeline. In this blog post, I’ll explore how to achieve this using Tekton which is an open-source framework designed for building CI/CD systems that run on Kubernetes and...
Manage Kubernetes manifests for multiple environments using Kustomize
It can be difficult to navigate the complicated terrain of Kubernetes deployment across numerous contexts. However, with the powerful Kustomize tool at your disposal, you have the ability to easily and precisely manage Kubernetes manifests. In this investigation, we’ll look at how to use Kustomize to simplify configuration management, ensure smooth deployments, and preserve consistency across several environments. Join me as we explore the possibility of simpler Kubernetes manifest...
Create Jenkins Shared Library
In this article, we are going to learn how to create shared library in Jenkins. A shared library in Jenkins is a collection of Groovy scripts that are shared by several Jenkins jobs. The scripts are loaded into a Jenkinsfile before being executed. Shared libraries are used by developers to avoid rewriting the same code for many projects. Shared libraries allow code to be used between development projects, improving the software development life cycle. This significantly reduces coding time...
Automating Helm chart packaging and publishing to GitHub pages using GitHub Action
One of my previous article, I have explained how to publish Helm chart to GitHub pages. But in that tutorial Helm chart packaging and publishing to GitHub pages are done manually. But it's a time consuming process. So in this article I will explain how to automate Helm chart packaging and publishing to GitHub pages using GitHub Actions. This will save your time and effort. Let's get started. Prequsites GitHub repo with Helm chart GitHub Pages enabled Create Helm chart Now you need to...
Deploy application using Jenkins & ArgoCD
In this article, we are going to learn how deploy a NodeJS application to Kubernetes using GitOps way by using Jenkins & ArgoCD. We will use Jenkins to checkout the code from repo, build the Docker image, push it to Docker Hub & to update Kustomize manifest in different repo. Then we will use ArgoCD to deploy the application to Kubernetes. In this project we will use two repositories. One for the application code & the other for the Kustomize manifest. Let's start. Prerequisites A GitHub...
Automating Java Springboot CI using Jib Gradle & GitHub action
In our previous article, we learned how to dockerize your Java Springbot project using Jib and Gradle plugin. But in that we have to manually build the docker image and push it to the docker hub. In this article we are going to learn how to automate this manual process using GitHub action. Prerequisites A GitHub repository containing your Java project with Gradle as the build tool A Docker Hub account Initalize the GitHub Action Workflow Naviagte to your local project directory and...