spk-logo-tm-2023
0%
1-888-310-4540 (main) / 1-888-707-6150 (support) info@spkaa.com
Select Page

Electric Flow Feature Highlight: Environment Reservations for Confident Deployments

Deploying modern software applications is a complex process involving many moving parts. Adding microservices into the mix amplifies this problem by further decentralizing applications, resulting in more deployment endpoints to track. With all those IP addresses floating around, one of the worst fears of any DevOps engineer is someone accidentally deploying to Prod or any other sensitive environment. To guard against this sort of situation, Electric Flow has safeguards built in that allow you to restrict when and how operations can be performed on a given Environment.

Electric Flow employs a model-based approach for describing the various Environments that make up a deployment pipeline. Frequently, this looks like separate Environment definitions for QA, Staging, and Production, with many companies opting to throw in task-specific Environments for things like performance testing or user acceptance testing. Each of these Environments can be enabled or disabled. Disabling an Environment is probably the easiest and most basic way to prevent someone from accidentally targeting the wrong endpoints. It prevents any deployment operations from taking place on the machines mapped to that Environment. This is a good start, however there are much fancier things we can do.

Environment Reservation is a powerful, new feature focused on making deployments more reliable and predictable. There are two types of Reservations to help achieve that aim.
Each environment has a toggle for “Requires Reservation”. If this box is checked, it means that any operation you want to perform on an environment needs to be pre-scheduled. The reservation can be “exclusive” or “non-exclusive” and requires that you specify a start and end time for which the Environment will be available. Exclusive reservations basically set it up so that only a particular operation at a particular time is runnable. Non-exclusive reservations allow any operations to run during the designated window and are useful for performing multiple deployments at once.

One of the neat features of Reservations automation of schedule deployments once the window is open. If you schedule a Reservation and then run your process, Flow will wait until the window is open before performing the operation. Depending on your level of confidence, this means you could line up your deployments to happen overnight – unattended! If dealing with a pipeline, the pipeline will start right away, but the deployment task will be blocked until the window is open.

A second form of Reservation is the Blackout. Effectively the inverse of a Reservation, a Blackout allows you to define periods of time when an Environment is off limits while leaving all other times open for deployment activities. This type of setup is useful for situations like blocking activities during business hours, or perhaps a period when hardware is being physically swapped out. Much like simply disabling an Environment, Blackouts have the added benefit of allowing for automatically repeating schedules so you can set and forget.

Electric Flow is an excellent orchestration tool for managing the complexities of modern deployments. Even so, it can become complicated itself and when you throw more people into the system, it’s good to have an added level of assurance that accidents are difficult to commit.

David Hubbell
Sr. Software Engineer
SPK and Associates

Latest White Papers

SOLIDWORKS vs. Creo: A Comparison

SOLIDWORKS vs. Creo: A Comparison

Solidworks and Creo are both popular 3D CAD solutions, and for good reason. They both offer a wide range of capabilities, but which system works best for your team?What You Will Learn In this comparison of Solidworks and Creo, you will discover the differences between...

Related Resources

Managing Automotive Software and Hardware Integration at Scale

Managing Automotive Software and Hardware Integration at Scale

Advanced driver assistance systems, connected vehicle services, and electrification platforms. What do all of these features have in common?  The answer: software.  As these features increasingly make their way into mainstream automotive development, vehicles are...

SOLIDWORKS vs. Creo: A Comparison

SOLIDWORKS vs. Creo: A Comparison

Solidworks and Creo are both popular 3D CAD solutions, and for good reason. They both offer a wide range of capabilities, but which system works best for your team?What You Will Learn In this comparison of Solidworks and Creo, you will discover the differences between...