Releases Across Pipeline

ARA is a key DevOps discipline that deals with managing the software and infrastructure changes brought about by a new release. In order to gain a clearer understanding of ARA, we could say that the development lifecycle involves two main areas:

  1. Component packaging release and environment planning

  2. Readiness and delivery pipeline automation

Efficiency in moving releases between environments is an important feature, which we can break down into the following seven subcategories.

1. Deployment Flexibility

Deployment needs to be flexible enough to accommodate options (across all platforms and for all environments) such as the following: mapping of dependencies, notifications, creation of shared components, handling of possible manual steps, dealing with concurrent releases, prioritization, window management and integration.

Clarive’s rule-driven deployment model approach, which is based on decision trees, allows the system to keep track of the relationship between all artifacts and their configuration, thanks to its graph database. Decision trees may include other releases.

Clarive integrated graph database keeps track of the relationship between all artifacts and their configuration. Rules support orchestration of both automated and of manual activities.

Clarive features a rule design palette containing the necessary controls for configuring the orchestration scenarios needed: pause job for manual tasks, add approval steps in the job pipeline, Clarive traps an error during the job pipeline rule execution and ask for manual input decisions from the Ops team or equivalent (retry, abort and rollback, skip and continue…)

2. Release Readiness

Release readiness features include deployment risk analytics, impact analysis, integration with testing tool results and automated triggering of quality gates based on test case results and pipeline execution governance.

Clarive provides support for release readiness, including impact analysis, deployment risk analytics, integration with testing tool results and automated triggering of quality gates based on test cases. It allows users to customize their experience using dashboards, rules, pipelines and custom reports.

Orchestration tracking readiness, which is used to track how close a release is to being production-ready is only possible in an end-to-end orchestration tool model.

3. Deployment Plan Management

There should feature a complete GUI for creation and management of role-based deployment plans, and the underlying logic of these should be displayed as transparently as possible.

Support for application deployment plan management that should include the following:

  • Control Logic – to enable unrestricted and flexible automation

  • Pipeline Diagram Support – graphical representation of logic

  • DevOps IDE Platform – an Integrated Development Environment for designing development plans

A decision tree structure/rule design, containing collapsible sections for each phase, is used in order to provide an overview of the end-to-end build, deployment, and post-deployment process. Should more sophisticated activities be required, nested deployment plans (reusing rules) can help promote readability and logic reuse.

4. Pipeline Governance

Pipeline governance includes support for root-cause analysis (RCA) and execution profiling, which serves as an aid when improving software performance.

RCA is a method used for problem solving by identifying root causes of faults or problems, and its implementation should be capable not only of tracing a failure to a specific version of a specific component, but also of incrementally patching the component, while highlighting any other components that require similar patching.


Clarive Root Cause Analysis Graph

Clarive Root Cause Analysis Graph

Deployment pipelines may be monitored through the built-in monitoring service, and individual steps can be traced and analyzed for execution failures, together with any details available from the OS or tool with which interfacing is performed.

Clarive comes with a root cause analysis (RCA) algorithm, whereby the tool contains an extensible database of root causes, and can match failures to said database.

5. Pipeline Recreation

Pipeline recreation refers to the ability to rerun a deployment using a previous version of an environment model and/or rule logic, and should also be a supported feature of an ARA application.

Clarive can determine which versions of which components were used during the delivery process by capitalizing on our software’s configuration management capabilities. The system can use the exact version of the delivery rules that was used for the deployment at the requested time.

6. Deployment Scenarios

Application Release Automation tools should offer flexibility in their support for full-featured deployment styles, thereby ensuring extensibility.

Some typical deployment scenarios one should take into consideration:

  • Canary deployments

  • Blue/Green deployments

  • Rolling or phased deployments

  • Hot deployments

  • Dark launch modes

Clarive supports any deployment scenario/strategy, including partial deployments, rolling and phased, as well as canary and hot, blue, green, and dark launch modes.

7. Test Data Management

Test integration is an important feature, therefore automation of test data preparation and integration with test management suites need to be supported.

Clarive release models can include test case and test data selection, with the ability to select the correct test strategy according to the type of release and release contents, as well as control which test data and test sets are to be deployed into an environment, and to scheduling when said deployment is to take place.

It is also capable of orchestration and working with any virtualization, automated testing tool and test data management tool featuring a CLI, REST or SOAP interface.

How Clarive Lives Up to Moving Releases

Clarive greatest strength is moving releases between environments while offering enhanced deployment flexibility, tracking release readiness and management of the release pipeline.

clarive changeset timeline

Clarive tracks every stage of releasing a change

There also features pipeline governance and recreation coverage, with built-in support for rerunning deployments using an earlier version of a given environment model.

In short

Application Release Automation has a very defined set of criteria for release pipeline management. Clarive matches every one of the standard criteria, and indeed surpasses them if we take into account extra features such as Kanban boards, advanced error control and a complete DevOps IDE platform for creating end-to-end automation, orchestration and collaboration of all the teams and assets involved in the organization of DevOps initiatives.


Want to know more about ARA? Check our presentation: Why ARA Matters and learn how to to take control over complexity to deliver a great workflow.



Spoiler alert: if you like short product cycles to deliver features that make your users very happy, you probably already know the answer.


We’ve just released a great guide to help startups getting started with delivering lean software. Get your copy here if you haven’t already.

Lean application delivery is the part of lean startup methodology that deals with how software products are built, how to prioritize, how to track and measure and how to automate every aspect of the pipeline.

It’s basically the marriage of DevOps and your workflow: be it agile, kanban, scrumban or, yes, waterfall.

Lean Delivery:
Lean DevOps?
Lean Agile?
KanbanOps?

As we say in the guide, this is about your journey to lean nirvana: a just-in-time flow to deliver value to your users.

Tools like Trello

Postits on a wall or simple tools like Trello are a great way to start lean. Trello is no frills, low features, but sucks when you need to do anything that transcends organizing simple tasks. But it does get a team collaborating on goals fast.

Github, Gitlab or Bitbucket can get you coding and building stuff… but what stuff? For whom? Why? How do you deliver it? How do you align with the business plan?

While marketing and sales are getting their job done with HubSpot, engineers and product people are fiddling with the gruesome toolchain.

Are the tools running your team, or the other way around? Aha, Jira and Pivotal Tracker can get you very far. Heck, so far that you probably could spend your whole life in just perfecting yourself with these tools. But that’s not how a startup works. There’s no time. You need to define products, get people building, and you probably would need at least 4 or 5 tools just to:

  • Define product, align with goals and user value;

  • Code, track, deploy;

  • Automate, measure, iterate!

You need your product people to collaborate. And you need to automate everything. From goals, to ideas, to the DevOps pipeline. Just get your team to deliver software the way it’s meant to be: lovable products that iterate fast.

Batteries Inside

Our guide covers a few of our favorite topics in lean delivery, enough for a quick 10 minute read through. Here’s hint of some of the topics covered in the guide:

Define your flow before picking your tools

Or how to avoid bloating your startup with out-of-the-box, out-of-place processes from picking tools before you pick the process.

Delivering software is not just an engineering thing

Or how to build traction and make products your users love and business sells.

Emotion is a gauge

Be sensitive and measure emotion correctly.

Have a place for ideas

Or how to nurture and follow up on things that will bring value to your users.

MVP all the time: break down work

Or how to deliver value while keep your team and users motivated.

Isolate changes

Or how to be able to put a release together just-in-time instead of building really huge “develop” branches.

Measure your process, improve fast

Or how to keep your team delivering frequent releases.

Eat your own dog food

Or how to avoid delivering software that will bug your users down.

Avoid release anxiety

Or how to fine tune your iteration so that users, engineers and management is continuously happy.

It’s only done when it’s in production

Do I need to say more?

I hope this is good enough to get you started. There’s a lot of literature out there on how to build your startup to be lean and mean. Learn, measure, iterate!


Go get your Guide to Lean Delivery.


In today’s fast-moving world of DevOps, we need ARA more than ever to take control over complexity to deliver a great workflow that can unite teams at different speeds in the enterprise.

These slides go over why, when and how ARA may apply to your enterprise.

 


Visit our documentation to learn more about the features of Clarive.


Clarive Software and CollabNet Announce Global Partnership to Jointly Develop and Deliver an Enterprise Class Modern Development Platform Leveraging Application Release Automation (ARA)

Collabnet_Clarive Partner

SAN FRANCISCO, Calif. (DevOps Enterprise Summit), Nov. 8, and LONDON, Nov. 22, 2016 – CollabNet (www.collabnet.com), a global leader in enterprise software development and delivery solutions that help customers create high-quality applications at speed, and Clarive Software, a leading provider of DevOps software that serves global organizations with critical and complex systems, are pleased to announce a strategic partnership. This global partnership grants CollabNet the right to offer Clarive solutions globally. CollabNet will also be the exclusive representative of Clarive Software and its solutions in the United States and Canada. The integrated solution will be available as both a hosted service and an on-premise solution.

“This partnership is another milestone in Clarive’s rapid growth and the company’s intention to increase trust and collaboration between development and operations through automation, integration and DevOps Intelligence,” says Rodrigo Gonzalez, CEO at Clarive Software. “CollabNet is an ideal partner because they understand the complexities and challenges of enterprise software development and their solutions focus on increasing collaboration, and transparency across tools and processes.

Together Clarive and CollabNet can deliver a new level of value to organizations that want to bring Development and Operations closer together through increased collaboration, integration, automation and visibility, across all platforms, all environments, and all development methodologies.

“We are pleased to announce this new partnership with Clarive” said Flint Brenton, CEO of CollabNet. “Software development is a critical success component for all organizations. Private and public sector organizations alike are looking for effective solutions to align software development with operations. CollabNet has long been at the forefront of delivering market leading solutions that enable the delivery of high quality software at speed.  The combination of Clarive and CollabNet solutions will now help organizations achieve their goals for continuous delivery by enabling the rapid deployment of releases.

Clarive Software is the leading provider of a DevOps solution for organizations that are evolving, rebalancing their application architectural landscape from a few highly interconnected architectures, to a number of loosely coupled micro services and adjusting the end-to-end delivery processes accordingly. CollabNet helps enterprises and government organizations develop and deliver high-quality software at speed.  Its flagship product, TeamForge®, is the industry’s leading open platform for enterprise software development, delivery, and collaboration.

The companies will go to market this year and customers in North America can contact CollabNet for information on Clarive solutions available to them.