Configuration Management (CM) tools like Ansible, Capistrano, Chef, Fabric, Puppet, and SaltStack provide a simple way to configure and manage systems in an automated and repeatable way. However, the use of these tools needs to be coordinated across many different teams as part of larger overall software delivery framework.
Electric Cloud can help.
Before Electric Cloud
- CM solutions are declarative, which means there is no framework for procedural logic during a deploy process.
- CM solutions typically have a ‘fire and forget’ approach to deployment. During actual execution, there is little visibility into the progress, leaving the operator guessing on what the outcome will be.
- Verifying success of CM deploys requires a combination of manually checking target servers and scripting tests and notifications within the CM configuration files.
- CM solutions depend on coding of individual scripts that define and configure each tier of the application. In total, these scripts may be hundreds of lines of code with potential for syntax errors and misuse of specific CM API calls.
With Electric Cloud
- Flexible pipelines and workflows provide logic branching and error handling. Workflows will often call CM tools within deploy processes to configure infrastructure efficiently.
- Manual gates and approvals or simple logic flows based on prior return codes allow releases to accurately reflect the business processes required to promote applications to any environment.
- See status, who approved a deployment, what was being deployed, where the deployment happened, and how (using which set of credentials/ impersonation).
- Modeling of apps and environments abstracts out complexities and simplifies the deployment of any app to any environment.