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.
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.
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.
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.
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.
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?
A brownout is an intentional but temporary disruption of service. Why would a company purposely cause a brownout and when does it make sense? In this post I will explain the what and why of brownouts, and provide some recent examples.
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.
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.
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.
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.
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.
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.
We break down the NuGet ecosystem in Cloudsmith's first ever hosted webinar!
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.
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.
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.
Welcome to the engineering metrics guide for team success. Engineering metrics are data that teams can use to make informed decisions and operate at maximum efficiency. Don’t use CI on your team? Learn why continuous integration is key to increasing deployment frequency.
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.
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.
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.
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.
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.
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.
If you’ve spent any amount of time in the.NET / Microsoft developer ecosystem, you’ve probably heard the term “NuGet” in reference to code packages, package managers, software libraries, and even software installers. Understandably, this can cause a lot of confusion around what NuGet actually is.
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.
Your entire tech stack is likely in the Cloud - so why aren’t your software packages?
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.
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.
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.
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.
A quick walkthrough of getting set up with a private repository for Terraform Modules on Cloudsmith, including uploading and downloading modules.