These days event-based automation is everywhere from IFTTT recipes used by non-technical folks to cross post automatically to Twitter, Google+ and Facebook to email alerts for free iTunes downloads. And don’t forget the tech savvy that create even more complex sequences from Zapier and now Stamplay to track workloads and simple business processes or automate developer tools.
But this automation is not limited to consumer uses—it can also be the answer to DevOps challenges. Simple DevOps processes implemented with services such as IFTTT and Zapier improve the workflow and boost work performance.
Let’s take a look at some specific examples
In large enterprise there are some application topologies that exceed typical requirements. These are essential in the financial services, military, emergency services and police operations or to ensuring a fast response time for automated tellers and point-of-sale systems.
By integrating the web-based platform RequirementOne and Microsoft Azure Web Sites through Zapier, IT network resource planning becomes a common ground for Dev and Ops. Both sides have access to the software architecture allowing them to evaluate newly triggered requirements and decide immediately if changes to the app design or code are needed.
Bringing DevOps Automation to IoT
IFTTT has a few recipes for connecting hardware devices. Belkin’s We-Mo Switch controls devices from anywhere via Wi-Fi, and the Finnish startup The Button Corporation uses the “bttn”—a physical Internet-connected button—that is pressed to trigger a particular configurable action combining Internet technologies, such as Facebook, HTTP, Twitter, SMS or email.
Samanage, a cloud-based solution for hardware inventory that keeps a detailed configuration and physical location of all hardware in a network, can be taken to a new level through Zappier. It can be used to notify team members of changes in hardware inventory, identify problems that need to be looked at and trigger new solutions.
But it’s not just the unique scenarios, the standard components of the delivery pipeline can be automated as well.
Continuous Deployment
Continuous deployment can enhance software quality by standardizing changes to prevent regressions or failures. To implement these standards, a number of zaps can assist. For example, the New Relic application can detect a new deployment and run tests defined in Runscope Radar. Runscope Radar is a framework that builds tests to verify your services are returning expected data and to receive notifications if something breaks down. When a deployment job completes on Jenkins, it is recorded in New Relic allowing you to see the impact of the deployment on performance and operations. A New Relic Deployment notification can be sent to a phone via Pushover Push, to a Twilio Call Phone and can be automatically added to Google Calendar as a new event with details. It can also send message to HipChat or create Zenddesk tickets or FogBugz Bug to create cases.
For systems with no SQL DB deployment, MMS (MongoDB Management Service), a free cloud-based service that monitors the health of your MongoDB deployment, can track key performance metrics that allows the user to better optimize deployment. With the PagerDuty IFTTT integration, MMS can also send automatically triggered alerts when certain metrics are outside the normal bounds—providing instant notification of any potential deployment issues.
Monitoring
The goal of DevOps approach of monitoring is finding out when an application finished running or when a service is unavailable in order to either anticipate failure or show post-mortem causes.
Scout, a hosted server monitoring solution, collects a wide range of server and application metrics such as memory usage, server load, network throughput and more. It then sends out alerts based on specified thresholds and trends. Combined with Zapier, Scout can send notifications to a Campfire chat room or send alerts to HipChat while keeping records of these alerts in a shared Dropbox file accessible to your whole team.
Monitis, a cloud-based monitoring solution, uses a dashboard interface to show the health of websites servers and applications. When something goes wrong, it uses Zapier triggers to send the alert.
Alerts through channel zaps are also used by OpsGenie’s Heartbeat monitoring software and the application Pingdom. OpsGenie’s Heartbeat ensures the system is being audited end-to-end and that problems are reported in real-time. Pingdom offers website reports regarding the uptime, downtime and performance of a website network and server.
IFTTT monitoring is more limited. It only provides recipes built around sending and receiving SMSs such as in the event of network infrastructure failure, server malfunction or performance degradation. In order to respond to DevOps incidents using IFTTT PagerDuty it should be associated with a chat app. Triggers, resolves, acknowledgements, escalations and assigns can be published to a HipChat room whether you are using a desktop or on an Android or iOS mobile device.
Facilitating Team Collaboration
Zapier and IFTTT meet another of DevOps’s goals—facilitating team collaboration through tools. A GitHub repository can be configured in such way that pushes to it will automatically trigger builds in Jenkins, an open-source continuous integration server. This allows the developer to receive instant feedback. Basecamp, a popular project management tool, significantly enhances team communication by creating ToDos from new Gmail emails or Pivotal Tracker stories, adding events to Google Calendar, sending messages in HipChat for new events, creating new GitHub or JIRA issues from Basecamp todo items, syncing Basecamp attachments to Dropbox or Google Drive or creating messages from GitHub commits.
Chats are a quick way to broadcast issues or questions to the whole team or share stack traces when debugging with the added bonus of being able to archive the whole discussion for future reference. It’s customary to set up chat rooms on a per-product or per-project basis. One example of this is Salesforce Chatter, a chat software that brings consumer Internet apps such as Facebook, Twitter or Dropbox to the enterprise by adding IFTTT on top of it.
To increase work efficiency, powerful IFTTT recipes are used by web-based to-do list software like Toodledo to allow users to create to-do items by voice or to band together chat rooms in task management platforms such Asana. Using Zapier triggers makes it possible to have real-time discussions around individual tasks or follow-up on a question.
Relational databases (mySQL, PostgreSQL, SQL Server, Firebird) integrated with Zapier may easily be saved or have rows inserted just by emailing to a given Zapier address. Also, database activity, such as inserts, updates and deletes can be permanently monitored. NoSQL databases such as Amazon’s DynamoDB and MongoDB can also establish connections to Zapier and data export to Google Docs, create posts to WordPress from new tables or create ActiveCampaign contacts from new items.
As you can see there are so many examples. And now Stamplay takes the same concept of web automation and focuses specifically on the developer. I believe that this is a great way for small teams to embrace DevOps concepts without hiring specifically for it, and enterprises to offload some of the simple tasks with an easy to use tool, and in days not months.
My only question is what does this mean for the enterprise bus tools MuleSoft and TIBCO.
Share your web automation recipes, and let us know how you are simplifying your DevOps processes with cool consumer based tools.