Operations | Monitoring | ITSM | DevOps | Cloud

April 2022

Implementing access control policies in CI/CD pipelines

Imagine yourself in this situation: You are a motivated and skilled DevOps or DevEx engineer. You have a plan to implement automated, complete CI/CD pipelines. You know how to do it, and you know how the extra productivity and automation will benefit your team and the whole company. But the project is never approved, because of security concerns. Many organizations, especially those in regulated industries, have strict requirements for releasing their software, and rightfully so.

Continuous deployment of a Nest.js application to Heroku

If you have been around for a while in the field of software development, especially web development, then you know how tedious and stressful it has historically been to deploy your source code to a webserver. Most of the time, this was accomplished by uploading it using File Transfer Protocol (FTP). But now we have numerous ways of automating the deployment process. In this tutorial, we will learn how to set up continuous deployment of a Nest.js application to Heroku using CircleCI.

Setting up continuous integration with CircleCI and GitHub

Continuous integration (CI) involves the test automation of feature branches before they are merged to the main Git branch in a project. This ensures that a codebase does not get updated with changes that could break something. Continuous delivery (CD), on the other hand, builds upon CI by automating releases of these branches or the main branch. This allows small incremental updates that reach your users faster, in line with Agile software development philosophy.

Automating the deployment of LoopBack applications to Heroku

Before automation became commonly used by software development teams, bottlenecks, repetitive tasks, and human error were rampant. Automation has freed up valuable human resources for organizations while reducing the risk of human error caused by active human brains trying to perform mundane repetitive tasks. Recent strides in the area of continuous integration and continuous deployment (CI/CD) have made it more feasible to automatically deploy updates to software applications.

Deploy application environments on demand with the Quali Torque orb

Most developers care about building the next big thing. Automating your build, test, and release processes allows you to maintain focus on innovating and delivering value to your users. By combining the power of best-in-class CI/CD workflow orchestration with managed environments-as-a-service, developers can stay focused on building what’s next.

Automating Flask deployments with PythonAnywhere

Now that development teams know about CI/CD, there is no reason for deployments to become a time-consuming and cumbersome process. CI/CD may start with continuous testing, but adding automated deployments takes your CI/CD practice to the next level. Continuous deployment slashes the time it takes to release so you can spend more time improving the quality of your applications.

Functional vs non-functional software testing

When you think of software testing, what comes up first? For many developers, unit tests and integration tests are often top of mind. Both software testing methods are vital to writing and maintaining a high-quality production codebase. But they are not sufficient on their own. Your team’s testing practice should assess the entire application, observe the larger story of how it operates when functioning correctly, and raise alarms when deviations are found.

The key principles that doubled eBay's software delivery productivity ft. Randy Shoup

Rob is joined by Randy Shoup, VP of Engineering at eBay to discuss how to deliver fast, without losing quality. Learn about the value of consistent teams, having a long-term vision, and diligently measuring against key success metrics. Tune in today to find out how your team can increase productivity and move even faster.

SAST vs DAST: what they are and when to use them

As digital transformation accelerates and more organizations use software solutions to facilitate work operations, security threats have become more commonplace. Cybercriminals tirelessly develop ways to exploit software application vulnerabilities to target organizational networks. A notable example is the 2017 Equifax data breach, which exposed the personal details of 145 million Americans.

Build cloud infrastructure from your CI pipeline with Pulumi

Modern software systems are complex, with services distributed across data centers, in many zones, all around the world. Gone are the days when we managed individual servers dedicated to our organization, comfortable with the knowledge of the unique quirks of our setup. Now we rely on others to manage massive data centers where we borrow small slices of virtual space on shared hardware, traveling over shared networks, all in a system we call the cloud.

How the Insights team uses Insights to optimize our own pipelines

Here on the CircleCI Insights team we don’t just develop stuff for CircleCI users, we are CircleCI users. Really, there’s no better way to get to know your product than to use it, and the Insights team is no exception. A few months ago, we realized that our pipeline configuration for the Insights UI left much to be desired.

Using OpenID Connect identity tokens to authenticate jobs with cloud providers

Introducing OpenID Connect identity tokens in CircleCI jobs! This token enables your CircleCI jobs to authenticate with cloud providers that support OpenID Connect like AWS, Google Cloud Platform, and Vault. In this blog post, we’ll introduce you to OpenID Connect, explain its usefulness in a CI/CD system, and show how it can be used to authenticate with AWS, letting your CircleCI job securely interact with your AWS account, without any static credentials.

Continuous integration for Go applications

Go, an open-source programming language backed by Google, makes it easy to build simple, reliable, and efficient software. Go’s efficiency with network servers and its friendly syntax make it a useful alternative to Node.js. All network applications need well-tested features, and those developed in Go are no different. In this tutorial, we will be building and testing a simple Go blog.

What is end-to-end testing?

End-to-end testing, also known as E2E testing, is a methodology used for ensuring that applications behave as expected and that the flow of data is maintained for all kinds of user tasks and processes. This type of testing approach starts from the end user’s perspective and simulates a real-world scenario. For example, on a sign-up form, you can expect a user to perform one or more of these actions: You can use end-to-end testing to verify that all these actions work as a user might expect.

Automate the deployment of FeathersJS apps to Heroku

Automation goes beyond just building solutions to replace complex or time-consuming manual processes. As the popular saying goes, “anything that can be automated should be automated.” For example, deploying updates to applications can and should be automated. In this tutorial, I will show you how to set up hands-free deployment of a FeathersJS app to Heroku.

API mock testing with Nock

For the latest full-stack applications to work, a backend service is required. That is especially true when the frontend service depends on the backend service to render data. In many cases, it can be difficult to replicate the setup of the backend services so that you can test the application. This tutorial will show you how to mock HTTP requests from an API so that you can test endpoints without actually calling them in your tests.

How mission critical services build for failure ft. Hector Aguilar of Okta

If you can’t get through Okta, you can’t do your job. But failures happen. With this reality its not about preventing failure but about dealing with failure. Rob is joined by Hector Aguilar, former VP of Technology at Okta shares how he helped create a culture expecting and prepared for failure.