Skip to content

Danc2050/TheBugTracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AutoBugTracker (Server Side)

Updated: 7/28/2020

NOTE: AutoBugTracker currently exists as two separate and distinct repositories. One, for the local side and the other for the server side. You're currently on the server side 😏 ☀️ 🌊.

Contents

Description

What is AutoBugTracker?

AutoBugTracker is a python program that executes a client program, detects bugs, and filters bugs of your choosing. It then sends any bugs it encounters to a server where it, records, and reports the bugs to Github. AutoBugTracker utilizes a PostgreSQL database to help keep things organized and keeps team members updated on the status of bugs via email.

Why use AutoBugTracker?

AutoBugTracker facilitates an efficient workflow for programmers, making it a great addition to any development suite.

Who should use AutoBugTracker?

AutoBugTracker is valuable to developers working in large teams, that need the ability to accumulate a large quantity of debug information from their customers. AutoBugTracker is highly configurable and can be tailored for your teams specific needs.

Instructions

Setup

  1. Setting up a google vm instance:

    1. f1 micro
    2. Allow http requests
  2. Reserve a static IP address for the newly created VM instance

  3. Open SSH command line for the newly create VM instance and enter the following commands

    1. sudo apt-get install python-setuptools python-dev build-essential
    2. sudo apt-get install python3-pip
    3. sudo passwd (set a new root password)
    4. su root (log into root with the password created from the step before)
    5. sudo apt-get install docker.io
    6. docker run --rm --name postgresContainer -e POSTGRES_PASSWORD=my_secret_password -d -p 5432:5432 postgres
    7. set environment variables in your .bashrc file
      1. USERNAME=[EMAIL]
      2. PASSWORD=[PASSWORD]
      3. PYTHONPATH=[path-to-src]
    8. install dependencies
      1. pip3 install PyGithub
      2. pip3 install psycopg2-binary
      3. pip3 install yagmail
    9. Run program with python3 src/Server.py
    10. Shut down server, update your config file located at /root .autobug.ini
    11. Start server back up with python3 src/Server.py
  4. You should now be able to clone the server side repo to the VM instance via SSH.

Relevant Database Info

Database Name: bug_tracker
Database Username: postgres
Database Password: my_secret_password

Example (Default) Configuration File

{
    "first": "John",
    "last": "Doe",
    "email": "johndoe@doe.com",
    "create_debug_log": true,
    "overwrite_previous_entry": false,
    "log_file": "log.txt",
    "github_integration": false,
    "github_access_token": "",
    "github_repo_name": "",
    "send_email": true,
    "send_github_issue": false
}

Example Log File

If create_debug_log is set to true, AutoBugTracker will create a file for debugging purposes with a filename of log_file

log.txt:

2020-07-15 16:05:07 DEBUG    Error while connecting to PostgreSQL Section postgres_server not found on the C:\Users\*****\PycharmProjects\resource\Database.ini file 
2020-07-15 16:05:07 DEBUG    Could not create table connect() argument after ** must be a mapping, not NoneType

Usage

The server side is mostly automated! However, you can login to the server via SSH and:

  • Run the AutoBugTracker server side program with python3 src/Server.py.
  • Update the configuration file at /root .autobug.ini.
  • Manipulate the database.
  • and end the program / shut the server down with CTRL + C.

Features

Current

  • Allow customization of program settings via the use of configuration file/s.
  • Send emails.
  • Instantiate a PostgreSQL database.
  • Communicate with Github.

Planned

  • Notify team members that bugs have been resolved via email automatically from remote server.

Stretch Goals

  • Alter config options at program execution via command line arguments.

Contributors

Product Owners / Sponsors

😁 Daniel Connelly
😅 Teal Dulcet

Development Team

Team Lead

😂 Antonio DiMaggio

Software Engineers

😏 Ryan Campbell
😆 Ramon Guarnes
😀 Dana Khoshnaw
😊 Princess Kim
😉 Armando Lajara
😎 Mahmoud Al Robiai

About

CAPSTONE BUG TRACKER PROJECT

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages