Skip to content

About

Hackathon

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

QYRUS DEVICE FARM MANAGEMENT

Project Description

Qyrus device farm has grown from having just 10 devices to more than 100 devices in a year, from 1 location to 3 locations. A typical device farm is a hardware intensive operation, which involves procurement, setup and maintenance of hardware devices like Phones, Network equipment, USB Hubs, Cables, servers etc. Qyrus has 2 offerings when it comes to device farm - Dedicated and Shared. Dedicated devices are allocated to a client and cannot be used by anyone else. This brings an added layer of management which is allocation and de-allocation of devices to a client. Considering the above, there is a clear need for us to systemise the entire process of device farm and this requires us to have a centralised system using which the Device Farm and Infra squad can procure, setup and manage the device farm.

Users

  • Developer
  • Admin
  • Client

Roles

  • Each location has a device farm (3 locations, 3 device farms)
  • Each device farm has hardware devices (Mobile phone,n/w equipement,USB cables , Servers) which are of type Shared and Dedicated
  • Infra Squad (Developer) has to perform operation such as Procurement , setup , management of h/w devices with respect to device farm along with location of device farm as well as client .
  • Infra Squad (Developer) has to track the procurement request of client and assign devices based on device status : free/available, consumed, damaged.
  • Infra Squad (Developer) has to identify no, of devices which canbe connected to server.
  • Infra Squad (Admin) has to generate reports, maintain Audit logs and send notifications to developer.
  • Client can request for device , has to accept device and release device based on time period of the device mentioned.

Built On

  • BACKEND : Python,Django Framework
  • FRONTEND :HTML,CSS,AJAX,JQuery,Bootstrap
  • DATABASE : MSQL

Getting Started

  • Prerequisites

  • Install Python version 3.8 or Install Anaconda

  • Install MYSQL Workbench

  • Installation To install project locally on system follow the below steps.

Steps:

  • Download or Clone project using GitHub link.
  • Create local enviornment using venv or conda create --name command.
  • Install requirements.txt in the enviornment.
  • Run python manage.py makemmigrations command.
  • Run python manage.py migrate command.
  • Run python manage.py runserver localhost:8000

Usage:

  • There are 3 users involved in the application such as Client, Developer, Admin.
  • Login for all 3 users vary depending upon their user type.
  • Credentials for Developer and Admin are hard-coded for Developer and Admin due to time constarints,please refer credentials.txt.
  • Authentication is provided for Client login.

Please refer below url for getting started with web-application once the application is up and running on local system.

url : http://localhost:8000/login

Navigate through below pages to understand the functionality:

  • Register : If new client visists,then he/she needs to register clicking on create an account link.
  • Login : If registration is done, then login using the credentials used in registeration.
  • Dashboard : If the login is of user type developer , then navigation will be done to dashboard where developer can perform operations like Add Mobile , Add Server, Edit Mobile, Edit Server, Procurement request.
  • Client_Dashboard : If login is of user type client , then navigation will be done to cient dashboard where client can perform Add request for Mobile and Server.
  • Admin : If you login as Admin then navigation will be done to Admin Page where charts and reports are shown with repect to mobile and server information and logs.

About

Hackathon

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages