CIRCLECI :
It automates your software builds, tests, and deployments on cloud or on your own infrastructure.

Use Case :

Let’s assume we’ve dedicated AWS EC2 windows server . we need to use CIRCLECI as build & deployment tool. Every developer commits in bitbucket should be trigger a CIRCLECI build| deployment job’s. Let’s take we’ve Dot Net core application in bitbucket it’s should be build on CIRCLECI windows orb(i.e. circleci/windows@2.4.0) and deploy build files into AWS EC2 box using SSH Authentication.

While implementing above use case I'm getting ‘Error Connecting To Agent: Unknown Error’ like below. I started ssh-agent in…


Redis is a fast, open source in-memory data structure store, used as a database, cache, and message broker. Redis provides data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyper loglogs, geospatial indexes, and streams.

While implementing cloud native applications we mostly implemented only stateless applications so there is no option to persist the session. Some of web systems rely on sticky sessions that means maintaining user session in app server memory It’s violation of 12 factor rules. To store this kind of sticky session we can use Redis.

Here I’m focusing on how to…


The 12 factor App methodology is a methodology for building software as a service application. Mostly we can use these principles whenever we implemented microservices on cloud-based applications. Here we can focus on Logs.

Logs provides a visibility into behavior of a running app. we can store the all microservices related logs into Centralized server so that we can easily debug the application issues. If we maintain specific log structures across all microservices it will help us to find out root cause of issues & we can easily integrate any log analytic tools.

In this article I’m focusing on how…


Tech Stack

Zipkin is a distributed tracing system. Zipkin help us to troubleshoot the failures & latency issues of applications. Zipkin provides the ability to trace requests and responses across distributed systems.

Zipkin will support different databases like Cassandra, Elastic search, My SQL.. It will provide us web interface to filter the requests & dependency diagram of each request flow within applications.

Use case: 1
If you have a large enterprise application with different microservices will communicate within a single request. We need to find out the latency issues of request which microservices is taking more time to get the response. In this…


Service Registry provides your apps with an implementation of the Service Discovery pattern, one of the key tenets of a microservice-based architecture. Trying to hand-configure each client of a service or adopt some form of access convention can be difficult and prove to be brittle in production. Instead, your apps can use the Service Registry to dynamically discover and call registered services.

When a client registers with the Service Registry, it provides metadata about itself, such as its host and port. The Registry expects a regular heartbeat message from each service instance. …


Whenever we’re implementing Cloud-Native microservices we need to follow the 12 factors. Within In 12 factors Config is also one factor. Store config in the environment. Application config’s vary from every ENV (i.e. QA, UAT & PROD). Some of config values are same for all ENV so that if we hard code those values into code means it’s violation of 12 factors principles of microservices of config.

To fulfill this principle (i.e. config) in cloud native microservice applications Spring Cloud Config server come into picture.

Spring Cloud Config:
Spring Cloud Config provides server-side and client-side support for externalized configuration in a…


Two way data binding for FormBuilder group controls & read disabled control values with help of getRawValue() in Form.

Databinding FormBuilder group control Elements

I tried two way binding with [value] property of textbox’s. I can use Valuechanges() as well but I want to know best approach for same control binding in form.

Let’s see with Example:
My form structure like below :


Upload a CSV files in Jenkins

Most of Jenkins build’s doesn’t require to upload a CSV file, but some of the builds required approvals for one stage to another stage. Some of the jobs are parameterized builds with some manual interaction to trigger those build’s.


Delete Build History

If you maintain the all Jenkins jobs related build history means it will occupy the more disk space on a server. To avoid such cases, we need to clean the build history.

for example: As per my requirement, I need to keep only latest 5 build history-related information of each Jenkins Job. For this requirement, I created one job and scheduling this to trigger weekly once.It will maintain latest 5 build history related logs only for all jobs.

Delete the build history info with help of Groovy script:


def buildLogCount=5
Jenkins.instance.getAllItems(Job.class).each { jobitem ->
def jobName = jobitem.name…

Jenkins + SQL JDBC

Agenda:

  • How to setup SQL JDBC driver to Jenkins.
  • To load the data from SQL to Jenkins parameterized build.
  • Example with a dependent Choices Parameter with help of the groovy script.

Steps to Setup JDBC driver in Jenkins:

  1. We need to download the MS JDBC driver (i.e Microsoft JDBC Driver 7.4 for SQL Server).
  2. Based on our Java installed version, we need to choose a JDBC plug in version after Setp:1
  3. Copy the corresponding JDBC version and paste into jenkins installed location like C:\Program Files (x86)\Jenkins\jre\lib\ext\
  4. Restart the Jenkins Server.

For example: Load the Jenkins parameters data from SQL

In…

RamanaReddy V

Senior Software Engineer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store