Giter Site home page Giter Site logo

alice's Introduction

Alice

A bot for automating Repetitive Communication tasks and Release Quality Monitoring


Hi, I'm alice. For any team, I prevent last minute chaos situations and improve Quality Assurance (Oh yes! it's possible with me)

I'm your friendly robot sidekick. Integrate me with your product to dramatically improve your Release process (Pre and Post)

Tech

I'm made with โค๏ธ on top of python using Flask.

Why Me?

Imagine your standard release day and a sudden roadblock is encountered. Everyone in your team is running around with questions like:

  • Which build broke the master branch?
  • Whom should I reach out to get this fixed?
  • Did we miss any steps while deploying code to staging?
  • How did it get passed through the checks, didn't they run?
  • Which code to revert to, to fix this quickly?
  • Were these configuration or dependency changes?
  • Were these changes well informed to release/devOps team?
  • How not to miss the respective DB/config/JS/dependency update changes from next time?

Are you looking for a free automated solution which can, not only prevent these but also improve the collaboration and productivity of your team by performing the required code supervision tasks.

What I do?

I can be your assistant who can monitor code flow, right from development to release phase, thus preventing usual mistakes throughout your Development Life Cycle.

This library is distributed via pip so that you can build your own in-house mate.

How I do it?

I help teams avoid "last moment panic attacks" by using collaboration tool like slack by:

  • Monitoring/reminding/blocking/alerting teams/individuals to maintain code hygiene
  • Enabling every member in team to get required info about the system @ any time
  • Answering repetitive and mundane questions about the system
  • Having a trustworthy 24x7 code monitoring system from development to release phase

Current Features

For all sensitive branches (Eg. master, qa, develop)

Note: I am currently implemented for Github & Slack users only. However I can be expanded to support other platforms as well. Please read here

Want to hire me?

  1. Installation:

    pip install alice-core
    
  2. Getting Started:

    2.1 Add hubot app in your slack team, change its name to alice or as needed. Invite this bot user in your respective slack channels to be able to post message

    2.2 Create your team specific input config file setup config file

    2.3 Start Alice (Any of one way):

    Modify the commands with particular config.yaml or config.json file path & port number

    • Run as flask app

      export FLASK_APP=alice config='config.yaml'; flask run --host 0.0.0.0 --port 5005
      

      You should see success message like this

      image

    or

    • Run as uwsgi process (Install uwsgi>=2.0.14 on machine yourself for using this)

      export config="config.yaml"; uwsgi --socket 0.0.0.0:5005 --protocol=http -w alice --callable app
      

    Note: can change port number as needed

    2.4 Plug it in with your system

    • test locally with any pull request payload:

      http://0.0.0.0:<GIVE_PORT_NO>
      

      it should return "welcome" message

    • activate alice from your github repository

      • Create web-hook in github and set it to <IP_WHERE_ALICE_IS_LISTENING>:<PORT_NUMBER>/alice

      Example:

      image

Want to talk to me

Integrate me with Hubot. It's a talkative bot and all you need to know is a little bit of CoffeScript and Regular Expressions You can use alice with hubot to route tasks to and fro.

Yay! all set. let's rock


Drawing


Willing to Contribute

Please read CONTRIBUTING.md before submitting your pull requests. If you'd like to chat, stop by our slack team joinalice

Future plan

Focus on:

  • Continuous Integration
  • More Adapters like with HipChat, BitBucket. If you are using these or any other version control or communication tools, please come, let's discuss & build it together

Here is the full product board

Credits

alice's People

Contributors

akgoel-mo avatar nagarajjadhav07 avatar p00j4 avatar parasjain-dev avatar shahp00ja avatar

Watchers

 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.