Operations | Monitoring | ITSM | DevOps | Cloud

Latest Posts

Continuous Code Analysis with SonarQube and Codefresh

SonarQube is a universal tool for code analysis that provides continuous inspection of your code to highlight existing and newly introduced issues. This allows you to “Clean as You Code”, which aims to reach the maximum code quality in your newly written code. This post will: The SonarQube architecture consists of a server and a SonarScanner. The Scanner is a separate client type application that is used to analyze projects in connection with SonarQube.

Creating Temporary Preview Environments Based On Pull Requests With Argo CD And Codefresh

Creating preview environments as a result of making pull requests is one of those practices that have vast potential and are yet largely overlooked. There is a strong chance that you are not using them, even though they can drastically increase productivity. I will not explain what preview environments are, besides stating that they are temporary environments created when pull requests are made and destroyed when PRs are closed.

Entering GitOps 2.0 with Codefresh and ArgoCD

In our previous article, we explained the vision behind GitOps 2.0 and the features we expect to be covered by GitOps 2.0 tools. In this article, we will see how the new Codefresh GitOps dashboard is the first step towards this vision and more specifically in the area of observability and traceability.

The pains of GitOps 1.0

GitOps as a practice for releasing software has several advantages, but like all other solutions before it, has also several shortcomings. It seems that the honeymoon period is now over, and we can finally talk about the issues of GitOps (and the current generation of GitOps tools) In the article we will see the following pain points of GitOps.

My Process Used Minimal Memory, and My Docker Memory Usage Exploded

The Docker infrastructure abstracts a lot of aspects of the creation of images and running them as containers, which we usually do not know about nor interact with. One of those aspects is the handling of the filesystem inside the container. This post is a case study on how we discovered that writing large amounts of data inside a container has side effects with memory caching. Initially, we thought that we had an issue with our source code, but this was never the case.

GitOps Patterns - Auto-Sync Vs. Manual Sync

The conversation usually starts with a question like “should we let ArgoCD/Flux/whatever synchronize the actual state automatically whenever the desired state changes in Git?” Truth be told, the question is usually not that elaborated, and it is more like “should I enable the auto-sync feature?” But, I wanted to save you from follow-up questions that help me better understand what that means, so I gave you a more extended and more precise version of the inquiry.

Managing Your Typescript Monorepo With Lerna and Codefresh

Managing dependencies across multiple repositories and implementing updates to multiple repositories at the same time can be a time consuming and error-prone task. Thus, organizations have taken the approach of managing multiple projects in the same repository, called a Monorepo. The benefits of using a Monorepo become clear with the right tooling. One of those tools is Lerna, which can be used to manage Node-based Monorepos.