Giter Club home page Giter Club logo

azure-bot's Introduction

Azure Bot

Azure Bot is a chat bot built on the Hubot framework. It was initially generated by generator-hubot, and configured to be deployed on Azure

This README is intended to help get you started. Definitely update and improve to talk about your own instance, how to use and deploy, what functionality is available, etc!

Prerequisites

  • Create a Personal Access Token in GitHub that you will use to authenticate as you deploy Hubot
    • You may want to consider creating an automation account to own this personal access token
  • If you are using SAML authentication for your GitHub organization, you may need to authorize this token

Tools

Tool Used for
GitHub (Please log in now) To store and version code
Slack team (Please create a new Slack team) To interact with your chatbot
Azure (Please Authenticate) To host your chatbot
Microsoft Teams (Please authenticate) To interact with your chatbot

Install

To install and connect the Azure Hubot to your Azure environment you will need to complete the following actions:

Clone the Repository

Clone This repository to your GitHub Organization

  • You will want to set this up as a private repository and give all members of your organization write access to allow inner-sourcing
  • This will allow for greater contributions and speed up the development process

Create Web App in Azure

Connect to your Azure web portal and authenticate. You will then need to complete the following actions:

  • Select Create a resource
  • Select Web App
    • Fill in the form data
    • Select Create
  • Go to your newly created application on the dashboard
  • Configure environment variables that your Hubot will need to use
    • Select application settings
    • Navigate to the Application Settings section
    • Select Add new setting to create key pairs:
      • HUBOT_SLACK_TOKEN=Your Created Slack Token
      • HUBOT_ADAPTER=slack
      • Select Save from top banner
    • NOTE: If you are using a different chat tool, you will need to configure different environment variables
  • Set up automatic deployment of this app from your GitHub repository
    • Select Deployment options
    • Select Choose source
    • Select GitHub
      • Fill in the form data
      • NOTE: Use GitHub API Token that has write access to this repository
      • Select the correct azure Hubot repo

Deployment

Any time the master branch of your Azure Hubot repository is updated, it will trigger the Azure Deployment and update the Hubot. The Hubot only takes around 30 seconds to be re-deployed.
NOTE: The first deployment will take longer as it will need to pull in many of the base dependencies.


Hubot / MS-Teams Bot integrations

Connect to VSTS

You will want to connect the bot from your Chat tooling into VSTS.
This integration should be able to complete at the minimum the following actions:

  • Show queue
  • Start build
  • List Jobs

Other actions are greatly encouraged, and can be seen as enhancements.

Connect to GitHub

You will want to connect the bot from your Chat tooling into GitHub.
This integration should be able to complete at the minimum the following actions:

  • List Repositories
  • Create Repository
  • List members of team

Other actions are greatly encouraged, and can be seen as enhancements.

Monitoring

Having your bot be able to connect to your monitoring environment is a great step in maturity.
The ability to query information or metrics gives you a quick insight to your environment from your chat environment.
This allows teams to collaborate in real time about the environment and have a record of what is happening.
Commands that allow you to fetch metrics and graphs, as well as check endpoints can greatly increase your culture and promote your environments.

Sparkles

Sparkles Giving your teammates points for doing something special is a great way to build culture and promote sharing.
This can be added and enhance your culture.

Remember

This is a fairly common script that allows your bot to remember basic strings.
This is useful to remember common end points, or other common data that needs to be stored in chat.

azure-bot's People

Contributors

brianamarie avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.