Aaaaargh!! It happened to all of us: Your deployment failed, you get the alert, log files are everywhere! Now what?
Do you use ShareFile? Do you wish all your log files could be aggregated and available in one location? have you ever considered using ShareFile to store and share your log files for root cause analysis of failed deployments?
Well, you're in luck: here's a nifty integration between CloudBees Flow Deploy and ShareFile that we developed for the Citrix Hackathon - designed to notify people of a failed deployment, and automatically store all the associated log files into a ShareFile folder that the team can access to investigate the incident.
We do all of that as part of our automated deployment process, that we model in CloudBees Flow Deploy. We also use CloudBees Flow as the end-to-end orchestration engine to manage the entire workflow and feedback loop once a deployment has failed.
Both Laurent and I use Citrix products heavily in our day-to-day, so when we saw this Hackathon we were excited to learn a few more APIs. One of our software distribution mechanisms at CloudBees is via ShareFile and it has served us well. While we've already automated publishing files to ShareFile a while ago, we wondered: how hard would it be write an integration that provides a generic way to publish files to ShareFile?
The use case:
There were many use cases where ShareFile can help. In this Hackathon, we've focused on the application deployment use case as shown in this flow chart:
Application Deployment Flow Chart: Citrix Hackathon
After a failed deployment:
We use Zendesk as the ticketing mechanism to create an automatic record of the incident (we chose Zendesk, but the same concepts apply with ServiceNow, or GoToAssist Service Desk, or your favorite ticketing system)
We automatically aggregate and compress the log files and add them to a dedicated ShareFile folder
We comment on the ticket with the location of the ShareFile folder along with the list of files
Zendesk automatically notifies the stakeholders of the update to the ticket
When application deployments go wrong- you want an automated way to notify stakeholders, aggregate and share log files between cross-functional teams in order to triage the failure, and track the progress.
If done manually, you need to invest a lot of time, skills and care in order to simply find and share log files. Worse, the person collecting the log files may be under stress due to the business impact of the deployment failure - leading to costly mistakes or delays.
Our entry for the Hackathon:
Watch the short demo video of our Hackathon entry:
Our ShareFile integration takes the following parameters:
The application deployment looks like this:
ShareFile Application Deployment Process in CloudBees Flow UI
On error we:
Gather appropriate log files and zip them
Upload zip file to ShareFile
Create a Zendesk ticket and comment with the ShareFile URL
In Zendesk you can see the ticket:
ZenDesk ticket for failed deployment
Having an automated way to collect, aggregate, share and track log files makes application deployments slightly less stressful.
ShareFile is great service to hold these log files and tie them to an incident. Not only can these files be used during the deployment failure but also during retrospectives and for future training.
Do it yourself:
You can now easily add to your automated processes the aggregation and compressing of files that get uploaded to ShareFile and manage the next steps with CloudBees Flow automation engine.
Help us become - somewhat - famous: :)
Laurent and I had a ton of fun during the Hackathon and we thank Citrix for organizing. If you also like the integration between CloudBees Flow and ShareFile- be sure to vote for us! - voting starts April 9th and closes April 15.