Operations | Monitoring | ITSM | DevOps | Cloud

CircleCI

CI/CD and state management for Flutter apps with MobX

MobX is a scalable library developed to ease the process of state management in frontend applications. In this tutorial, you will learn how to manage the state of your Flutter applications using MobX, and then set up a continuous integration/continuous deployment (CI/CD) pipeline for your application using CircleCI. You can find the sample project developed for this tutorial in this GitHub repository.

Continuous deployment of Node apps to Heroku

CircleCI orbs are reusable packages of YAML configuration that condense repeated pieces of config into a single line of code. Since its launch in 2018, the CircleCI orbs registry has been used by developers, development teams, and by companies who want to help developers integrate their services seamlessly into continuous integration pipelines. In this tutorial, we will show how to use CircleCI orbs to continuously deploy a Node.js application to Heroku, one of the most popular hosting platforms.

Config best practices: dependency caching

Let’s face it: Creating the optimal CI/CD workflow is not always a simple task. In fact, writing effective and efficient configuration code is the biggest hurdle that many developers face in their DevOps journey. But you don’t need to be an expert to set up a fast, reliable testing and deployment infrastructure. With a few straightforward techniques, you can optimize your config.yml file and unleash the full potential of your CI/CD pipelines.

Introducing Test Insights with flaky test detection

The CircleCI Insights dashboard was designed to help you improve your delivery efficiency. We launched the dashboard a year ago to provide teams with actionable data for optimizing your pipelines. Since then, we’ve been listening to your feedback. By far, the most requested functionality is the ability to gain further visibility into test performance.

A guide to personal retrospectives in engineering

Retrospectives are a well-established resource in the software and systems engineering toolbox. From sprint retros through to post-incident reviews, we look back on our work to learn from it and to get better. We can apply the same ideas to our professional practice with a personal retrospective: writing an analysis of our experiences to learn as much as possible. We could look over a whole year of work, or focus more closely on a particular project.

API contract testing with Joi

When you sign a contract, you expect both parties to hold their end of the bargain. The same can be true for testing applications. Contract testing is a way to make sure that services can communicate with each other and that the data shared between the services is consistent with a specified set of rules. In this post, I will guide you through using Joi as a library to create API contracts for services consuming an API.

Recovering from the Git detached HEAD state

The introduction of Git as a source-code management system in 2005 fundamentally transformed the process of software development. Git allows developers to maintain a history of changes, or commits, to their code and revert to previous commits in seconds if something goes wrong. It makes collaboration easier by allowing branching to keep code for different features separate and seamlessly merging commits by various people.

Metrics for improved Docker container management and performance

When running a cloud service, it’s never good for customers to be the first people noticing an issue. It happened to our customers over the course of a few months, and we began to accumulate a series of reports of unpredictable start-up times for Docker jobs. At first the reports were rare, but the frequency began to increase. Jobs with high parallelism were disproportionately represented in the reports.