spk-logo-white-text-short
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

The Hybrid-Remote Playbook

The Hybrid-Remote Playbook

Post-pandemic, many companies have shifted to a hybrid or fully remote work environment. Despite many companies having fully remote workers, many still rely on synchronous communication. Loom offers a way for employees to work on their own time, without as many...

Related Resources

Measuring the Impact of AI on Product and Development Teams

Measuring the Impact of AI on Product and Development Teams

Generative AI is transforming the software development industry, enabling teams to develop, secure, and operate software more efficiently. GitLab is no exception. Its AI-powered suite, GitLab Duo, aims to optimize workflows across the entire software delivery...

How Model-Based Definition (MBD) Cuts ECOs by 41% and Scrap by 47%

How Model-Based Definition (MBD) Cuts ECOs by 41% and Scrap by 47%

Organizations are increasingly turning to Model-Based Definition (MBD) to revolutionize their engineering and manufacturing processes. By embedding rich, digital annotations directly into 3D models, MBD provides a single source of truth for product definitions. This...