The 7 Things I Know About Cyber Security After 25 Years | April 2024
Revolutionize Your Workflow with ChatOps
1. Find the slides here: http://tiny.cc/ciscospark-chatops
Follow me on Twitter and/or tweet at me. @tessamero
By Tessa Mero
Revolutionize Your
Workflow With… ChatOps!
2. SUMMARY
• Who Am I?
• DevOps
• ChatOps
• Chat Tools
• Bot Frameworks for ChatOps
• Case Studies
• Quotes by Developers
13. Reasons for DevOps
• 1 week of work will only take seconds
• Use of Agile and other development processes
• Demand for increased production releases
• Wide availability of virtualized and cloud infrastructure
• Increased usage of data center automation
• More focus on test automation
• DevOps being more known as the “best practice”
24. HuBot
• Written by GitHub
• Open Source
• Written in CoffeeScript on Node.js
• Many core scripts to automate basic tasks
• Huge package of scripts to add for ChatOps
• Easily deploy to heroku
https://hubot.github.com/
25. Lita
• Written in Ruby
• Free and Open Source
• Works with all Chat Services
• Many plugins to install
https://www.lita.io/
26. Errbot
• Easy to write plugins
• Built in admin/security
• Big Community
• Written in Python
https://errbot.io/
29. Example Usage of ChatOps
• Incident Resolution
• Automating Routine Tasks (Anything!)
• Multiple Team collaboration
• Onboarding new employees
• Create new Virtual Machine with command
• Notifications
• Combining all tools used into your collaboration tool
32. “We use Hipchat to allow Jr
Devs to Label PRs in Github
for Review”
- @philwinkle, designer at
SomethingDigitl
33. “We spin up new VM with
simple Bot commads”
- @snair123
34. “I wrote a Slack bot that lets us
look up customer information.
ChatOps created a tool to allow
re-assigning/re-creating Dev VM”
- @halkeye, coder at SauceLabs
35. “Over the past few days, I’ve
written a serverless based thing
that will let you merge your own
PRs from Slack”
- @edyesed, DevOps Manager at
RealSelf
36. “We get information from our
ticketing system using a Cisco
Spark bot”
- @josebogarin, Chief Innovation
Officer at Altuscr
Welcome!
What I did this week.
Solution Partner Program at Cisco Innovation Center in Rio de Janeiro
What is a Developer Evangelist or Developer Advocate? Consulting in development tools. Not a lawyer. Advocate in English means to go out and tell others about your company or tools and teach others.
What is Cisco DevNet?
Founded 3 years ago. Developer Community 450,000+ devs using our APIs.
Over 200 APIs.
Cisco is now a software applications company.
I work specifically on the Cisco Spark team.
What is Cisco Spark? Chat/Calls/Video/ Chat bots which us to discussing ChatOps
This photo was taken in Brazil in the summer of 2016. I was at the BrazilJS JavaScript conference in Porto Alegre, which is also the largest JavaScript conference in the world, holding 2000 attendees.
I taught college before I got a job at Cisco. I was teaching web development including frontend and backend web.
During this time I took on a volunteer role to mentor students and people who are new to the web development field.
I assist others with resumes, cover letters, job interview processes, and job searches. I have helped countless people find jobs and get hired.
Board of Director member of Joomla
Production Leadership Team member
Organizer of Meetup for Joomla
Meetup and Conference for PHP in my city
Meetup and Conference for APIs in my city
My city is one of the major tech cities in the USA, Seattle, WA.
I am a very happy mom. Well, only when my kids listen to me.
My kids are also very happy. Well, only when I feed them sugar and candy.
But seriously, kids really give meaning to life and make you want to work harder. Which is the whole reason why I'm here today, especially to teach others interesting stuff, like ChatOps!
How many of you are familiar with the term DevOps?
To understand where ChatOps got its name, let’s first go over what DevOps is.
DevOps helps remove barriers between teams making coding more effective.
It advocates automation and monitoring from integration, testing, releasing to deployment as well as infrastructure management.
It allows more dependable releases in close alignment with business objectives.
DevOps is the process of getting multiple teams who are involved in the software process to talk to each other.
This is why GitHub is so valuable to development teams. It allows people to collaborate and work together.
DevOps is...
A Software engineering practice that aims at unifying software development (Dev)
and software operation (Ops). Which is how DevOps got its name.
This is the DevOps adoption in the last few years. Which means this is how many percentage of companies are using DevOps.
* There are many reasons to using DevOps. One week of work will take only seconds of time.
* DevOps uses a better development process.
You will have faster production releases
It is more availability especially in cloud infrastructures
More used in data center automation
More automated testing
DevOps is becoming known as the BEST PRACTICE
For the past year, developers have been calling it “The Year of the ChatBots”
So, what is ChatOps?
The term “ChatOps” was created by Github back in 2013 by Jesse Newland.
The easiest way to understand chatops is as a marriage between established devops practices and workplace instant messaging platforms.
This combination increases DevOps flows enhancing communication and transparency and combining all the tools into one tool that you use.
With Chatbots, you can set different rooms to have notifications from different tools/APIs that you use.
ChatOps allow a developer to do all their work in a collaboration tool
ChatOps and the ability to deploy code and collaborate with your team through one centralized platform is the future of agile development.
With ChatOps, you can control the whole DevOps process using a chat tool and using chat commands.
For example /git commands or create your own commands that connect to other APIs
To begin with ChatOps, you first need to choose your Chat Tool.
Select a communication channel. There are dozens of options and these are some common tools.
Each tool has it’s own app store, or plugin store where you can install add-ons and extend your platform. There is even premade chat bots you can install.
Of course I’d recommend Cisco Spark!
There are several premade ChatOps bot frameworks out there that are preinstalled and easily configured with all the basic DevOps tools. Here are the 3 most popular ones.
You have Chef, Puppet, and Ansible for Infrastructure Automation
Jenkins for Continuous Integration (CI) and Continuous Delivery (CD)
Docker for deploying application inside a software container
And git for code revisioning.
You can connect your chatbot to anything!
GitHub, Pagerduty, Asana, Trello, Heroku, CircleCI
Infrastructure automation, configuration management, deployment automation, infrastructure monitoring and log management
Cisco even made their own verson of ChatOps for DevOps. One of the most popular ones is a Help Desk bot.
The Cisco Spark Help Desk Bot is intended to give IT Teams an active, real-time look into their own network. Help Desk Bot is able to provide accurate information about a user on the network.
So how do others use ChatOps? I asked on Twitter and had a few good responses.
I wrote a slack bot that lets us look up customer information. Ops created a tool to allow re-assigning/re-creating of dev vms
well, I know my graybeard is showing here, but trust me when I say that POSIX is why unix and linux won the operating systems wars
I think chatops are doing the same thing for API based work
For more information about ChatOps, this is a complete list of information and resources.
List out all the tasks and processes your team does, and figure out how you can integrate it into your chat tool.
But what if you only like to create memes and nothing else? Then you can add that with the meme Bot in your chat tool!