Operations | Monitoring | ITSM | DevOps | Cloud

March 2022

How to automate verification of deployments with Argo Rollouts and Elastic Observability

Shipping complex applications at high velocity lead to increased failures. Longer pipelines, scattered microservices, and more code inherently lead to bigger complexity where small mistakes may cost you big time.

Difference between Continuous Integration, Continuous Deployment and Continuous Delivery

Continuous integration is a DevOps practice, where developers continuously integrate the code changes into a central repository. It most often refers to the build or the integration stage of the software release process.A continuous integration service helps to automatically build and run unit tests on the new code changes to find any errors instantly.

Scheduling load tests and persisting output with k6

In this k6 series I have covered HTTP request testing with k6 and performance testing with k6. I designed these tutorials to introduce you to k6 and to show you how to use k6 for performance testing of microservices. As the third tutorial in the k6 series, this will cover how you can store your k6 test results locally and also how to schedule your load tests using CircleCI’s scheduled pipelines feature.

Infrastructure As Apps: The GitOps Future of Infra-as-code

Infrastructure-as-apps builds on infrastructure-as-code to a logical endpoint by bringing in principles of GitOps management. The term is something I coined in 2021 to describe an existing movement to bring infrastructure into the same lifecycle control as applications under GitOps. Examples of Infra-as-apps tools include Argo CD, Crossplane, Cluster API, Cello, or even SchemaHero for databases and the list is always growing. Some of the benefits of infra-as-apps include Read on to understand why.

How Lightspeed optimized iOS test runs with parallelism and caching

At Lightspeed, we maintain multiple large iOS projects as well as their modularized dependencies. The last year of acquisitions brought together many different approaches to CI/CD at our company. I recently led the initiative to bring these projects and practices into alignment. In this post, I will explain the goals we had for our continuous integration pipeline and the implementations we used to achieve them.

Config best practices: concurrency and parallelism

When is the last time you updated your CI/CD workflow? A year ago? Never? You are not alone, my friends. Reconfiguring workflows can be one of the most daunting tasks for DevOps practitioners. But with new opportunities to benefit from CircleCI plans, there’s one simple and effective place to start: understanding concurrency and parallelism. Using concurrency and parallelism can cut your build times significantly. But you need to know what they are and how to find them in your config file.

Everything you wanted to know about Securing the Software Supply Chain

You know you need to secure your software supply chain. Everyone’s telling you that these days - your executives, your vendors, even the United States government. Your organization has an initiative to do so, or maybe they’ve brought in an expert to help you achieve this goal. But hold on a minute - do we have a shared understanding of what a software supply chain is, and what exactly makes it secure?

Top 5 CI/CD best practices

For engineering teams, CI/CD is the key to improving their development cycles. CircleCI is committed to helping our customers optimize their pipelines to streamline delivery to production. If your team values speeding your time to market, commit to trying these 5 best practices. These are CircleCI’s recommendations for cutting your development cycle times and improving your CI/CD processes in general.

Unit Test vs Integration Test | Major Difference between Unit Testing and Integration Test

Developing a quality software is considered incomplete without writing tests. Not only does the test assure the quality but it profoundly helps developers while refactoring or re-writing a piece of code. When it comes to testing, having well-planned and thorough testing throughout the software development cycle is very important. The most commonly used types of tests today are unit tests and integration tests.

Parameterizing GitLab CI/CD?

While doing packaging for Icinga, I noticed we have a lot of YAML files describing GitLab pipelines doing very similar jobs. The same build job across different operating systems. That’s wasteful behaviour, which leads to a bigger workload when it comes to modifying these jobs. Tasks like adding new versions and especially adding new operating systems become tedious. What I’m looking for is a way to have interchangeable values for our building jobs.

Practical Tips & Tricks For Securing Your CI/CD Pipelines

Many enterprises still struggle to get security right. To protect their business, it is critical they focus on security during the entire infrastructure and application lifecycle, including continuous integration and deployment. In this workshop, we will cover security mechanisms you can employ in your CI/CD pipelines to tighten security while enabling developers to push their code, quickly and safely.

Improve Observability in Your CI/CD Pipeline

The most basic component of automated software development is a CI/CD pipeline. While the term "pipeline" has been used to describe a wide range of computer science concepts, we use it at CircleCI and throughout the DevOps industry to refer to the vast range of behaviors and activities that are involved in continuous integration (CI).

How to Model Your Gitops Environments and Promote Releases between Them

Two of the most important questions that people ask themselves on day 2 after adopting GitOps are: In the previous article of the series, I focused on what NOT to do and explained why using Git branches for different environments is a bad idea. I also hinted that the “environment-per-folder” approach is a better idea. This article has proved hugely popular and several people wanted to see all the details about the suggested structure for environments when folders are used.

Benefits of scheduling continuous integration pipelines

Scheduling is an integral part of software development practices. Tools for scheduling jobs help development teams save time by scheduling recurring tasks — like modifying a database or sending out periodic emails — for execution at specified times. There are many to choose from, including cron for Linux, scheduled tasks for Windows, launchd for macOS, Jobber, and anacron.

CI/CD Benchmarks for High Performing Teams in 2022

Software delivery has never been more critical to the success of business in every industry. It’s also never been more complex. With the growing challenges of complexity, how can engineering teams succeed? CircleCI examined 55 million data points from more than 44,000 organizations and 160,000 projects to help guide team development and software delivery decisions. Benchmarks from the report show that the highest performing teams prioritize being in a state of deploy-readiness, deploy more often and recover faster.

Build an automated invoice generator application

As a software engineer and technical content creator, I work with a lot of companies on many different contracts. To get paid for my work, most companies require that I send an invoice. Sometimes they want one daily, at the end of the week, or even when the project has been completed. Sending an invoice to my clients is crucial because it determines when and if I will get paid on time. If this sounds like a repetitive task that can eat deep into my productive hours, you are right.

How to Kustomize your Codefresh/Argo Runtime

The Codefresh Software Delivery Platform (CSDP) brings together the complete open source Argo toolset (Workflows, Events, CD, and Rollouts) into a single platform for enhanced efficiency and visibility of software deployments at massive scale. If you’re a new CSDP user, one of the first things you’ll do is install the CSDP runtime in one of your Kubernetes clusters.

The Six Trends Overwhelming IT Ops-and What to Do About Them

IT Operations is experiencing lightning-fast change right now. From the emergence of cloud computing to the explosion of data—not to mention ever-present cyber threats—every day is a new day for IT Ops. At BigPanda, we’re laser-focused on making life easier for IT Ops teams, which means we’re staying on top of all this change to help IT Ops keep up.

Schedule database backups for MongoDB in a Node.js application

Database backup protects your data by creating a copy of your database locally, or remotely on a backup server. This operation is often performed manually by database administrators. Like every other human-dependent activity, it is susceptible to errors and requires lots of time. Regularly scheduled backups go a long way to safeguarding your customers’ details in the case of operating system failure or security breach.

Docker's genius shift: How one decision set the course for success ft. Justin Cormack

Docker CTO Justin Cormack joins Rob Zuber to discuss how Docker moved from very few paid users among millions of others to their current level of success. In this episode, Cormack shares the paths Docker took to transform its massive user base into a sustainable business model. Hint: sometimes product-market fit might be right in front of you. Have a topic you want to discuss? Reach out to us on Twitter @circleci!

Observability versus monitoring in software development

To supervise the behavior of distributed applications and track the origin of service failures and downtime, developers often use traditional monitoring technologies and tools. However, this approach can fall short in its ability to measure the overall health of modern cloud-native architectures, which can span multiple hosting environments and encompass hundreds of microservices.

Introducing Bitbucket's redesigned Branch page

We are excited to announce that improvements to the Branch page will be available in Bitbucket Cloud in the coming weeks! Comparing two branches can be a critical step before creating a pull request. We recognize that it can be a cumbersome experience to see the Branch page displayed differently than the Pull request page.

Continuous integration for Angular applications

Automated testing is the foundation of your continuous integration practice. Automated testing clarifies the status of build processes for your team’s applications, ensures that tests run on every commit or pull request, and guarantees that you can make quick bug fixes before deploying to the production environment. In this tutorial, I will show you how to automate the testing of an Angular application.

How to Use Pub Repositories in Artifactory

If you’re one of the growing number of client app developers embracing the Dart programming language and Flutter and AngularDart toolkits, we’ve got some exciting news for you! JFrog can now welcome Dart developers to the empowerment of Artifactory’s robust binaries management and the ways that it contributes to continuous integration.

Automate the deployment of Angular apps to Firebase

Developers use JavaScript frameworks like Angular, React, and Vue.js to build every kind of single page application, from simple to complex. By separating JavaScript and CSS, frameworks let dev teams structure applications in modular chunks of code that carry out a single function. That is great, but once your application is ready for deployment to production, you will need a command to compile and bundle the separate files into a single one.

Cloudsmith Supports OpenSSF's Efforts to Secure OSS

As part of our mission to make it simple to secure software at scale through Continuous Packaging, Cloudsmith is excited to announce that we have become an Open Source Security Foundation (OpenSSF) member. OpenSSF is a cross-industry forum for a collaborative effort to improve security in open source software (OSS). One software pipeline's output is another's dependency- we are all splashing around in each other's supply chains.

Discover 2022 DevOps trends with CircleCI data report

If you’re like many of our customers, the phrase software supply chain entered your lexicon this year. You’ve begun to feel the complexities and vulnerabilities of that supply chain. You’ve connected the dots between more reliable software delivery and business success. You’re recognizing the gains developer efficiency can have on profitability.

Contributor's Box (Level 1) - Unboxing the Codefresh Open Source Maintainer's

As we work diligently on transforming Codefresh into an Open Source company, we created THE MAINTAINER'S CLUB. The Maintainer's Club is a set of incentives and onramps to becoming more active in the open source community, specifically the Argo Project. There are three levels 1) Contributor 2) Member 3) Maintainer In this video, Dan Garfield, Co-Founder and Chief Open Source Officer unboxes the level 1 or Contributor Box. Check it out!

To NuGet and Beyond: NuGet Ecosystem & Upstream Support at Cloudsmith

Calling All.Net / C# / PowerShell Dev’s! We heard you! While Cloudsmith has supported NuGet packages for a while now, we’ve now got more robust support for the NuGet ecosystem. Whether it’s a V2/V3 NuGet package you created in Visual Studio, a Chocolatey package, a PowerShell Module, or a dependent package from NuGet.org, they can all be hosted in the SAME Cloudsmith repository! This one-hour webinar event discusses and demos the latest NuGet ecosystem and upstream support now available at Cloudsmith.

What is CICD Pipeline? Explanation of CICD Pipeline along with Examples.

Continuous Integration(CI) is a software development practice where developers frequently merge the code and the changes in a central repository. The important goals of continuous integration is to find and resolve the bugs more quicker, improve the software quality, and reduce the time taken to validate and release new software updates. Continuous Delivery(CD), which is done on the top of Continuous Integration and includes the practice of automating the entire software release process and builds.

Deployment Frequency Explained

While metrics have always been fundamental to improvement in the business world, the growing prominence of DevOps in recent years has elevated their importance in the context of software development. To build a continuous improvement culture, you need a set of metrics that allows you to establish a baseline and inform where the improvement opportunities lie. Arguably the most popular of them is DORA metrics. In this post, we will focus on Deployment Frequency, one of four DORA metrics.

Shifting Left for DevSecOps Success

Catch this session to see exactly what does “shift left” security mean? More importantly, how does this strategy affect a developer’s workflow? In this workshop we walk attendees through the steps of setting up an end-to-end DevSecOps solution to automate your build artifact storage, vulnerability detection, testing, and deployment. Lastly, attendees learn how to take advantage of JFrog’s IDE integration and JFrog XRay to increase your confidence in the security of your application, all within a freely available DevSecOps environment!

Predict the cost of IP ranges with new enhancements to the Resources tab

One of our most requested and popular features, IP ranges for the Docker executor, recently became available to all customers on a Performance or Scale plan. With IP ranges, you can route job traffic through an IP address that is verifiably associated with CircleCI. This enables your team to meet compliance requirements by limiting the connections that communicate with your infrastructure. With any new feature, you want to know how much it’s going to cost your team.

Shifting Left for DevSecOps Success

Not long ago, developers built applications with little awareness about security and compliance. Checking for vulnerabilities, misconfigurations and policy violations wasn’t their job. After creating a fully-functional application, they’d throw it over the proverbial fence, and a security team would evaluate it at some point – or maybe never. Those days are gone – due to three main shifts.

CircleCI acquires test intelligence platform Ponicode

Today we are pleased to announce that CircleCI has acquired Ponicode, a Paris-based AI engine for analyzing source code, with the goal to help developers produce better code in their local development environment. Ponicode caught our attention with their dedicated focus to helping developers handle their least favorite tasks — the toil surrounding writing code — such as authoring tests, commenting code, analyzing code quality, and more.

Introducing Codefresh Software Delivery Platform

Enterprises need a solution that can keep pace with innovation. The Codefresh Software Delivery Platform brings together Argo Workflows, Events, CD, and Rollouts into a unified enterprise-grade solution that equips developers for continuous delivery with confidence while leveraging GitOps best practices.

DirtyPipe (CVE-2022-0847) - the new DirtyCoW?

A few days ago, security researcher Max Kellermann published a vulnerability named DirtyPipe which was designated as CVE-2022-0847. This vulnerability affects the Linux kernel and if exploited, can allow a local attacker to gain root privileges. The vulnerability gained extensive media follow-up, since it affects all Linux-based systems with a 5.8 or later kernel, without any particular exploitation prerequisites.

Elastic Observability 8.1: Visibility into AWS Lambda, CI/CD pipelines, and more

Technologies such as serverless computing frameworks and CI/CD automation tools help accelerate software development lifecycles (SDLC) to give development teams a competitive edge in the marketplace. Armed with these technologies, teams can deploy and innovate faster and more frequently by automating repetitive tasks and eliminating the need to manage or provision servers.

You don't need to migrate from Jenkins. Start building beside it.

Ten years ago, tools like Jenkins were first-class automation platforms for your CI pipelines. The jump from lower-level tools and custom scripts to tools like Jenkins created dramatic improvements. Now, a new generation of web-based tools are available. They provide a platform for the next leap forward for product build automation. This long history means that many mature organizations use Jenkins for CI.

Troubleshooting CircleCI webhooks

CircleCI webhooks open up a variety of exciting use cases, from data logging and integrations with third-party monitoring and observability solutions to setting up your own custom dashboards to monitor pipeline health. To ensure that you can properly monitor events, resolve authentication errors, and also access the information contained within them, you need a reliable process to debug any errors you might encounter.

Amplify Artifactory and Distribution Changes Through PagerDuty

When automated software delivery runs smoothly, it can whisper, and quietly attend to itself. But when your delivery and distribution pipeline runs into a problem, it must shout. Boosting the volume of Artifactory and Distribution change events and issues through PagerDuty can help ensure they’re heard by everyone whose job it is to monitor your software delivery pipeline.

Automating database cleanup with scheduled pipelines

RESTful API projects often require that developers grant temporary access to a particular resource. Sometimes this happens within a specific interval, such as a few days or months. Revoking permissions when they expire could mean including extra logic during the authentication process or writing a middleware function to attach to the secured endpoint. Or, this logic could be abstracted to a separate part and configured to check and manage permissions at a regular interval.