Skip to content
This repository has been archived by the owner on Oct 16, 2024. It is now read-only.

gtaEPIC/COMP229-Deskify

Repository files navigation

Deskify

Group 7 project.
Deskify will be a web based ticket management system for IT support teams.
It will allow users to create tickets for issues they are having with their computer and IT support teams to manage these tickets and resolve them.

Users / Roles

⚠️ DATABASE SETUP ⚠️

The database library is mongoose.
You will need to create a .env file in the root directory.
Inside this file you should have the following variables:

ATLASDB=<your atlas db connection string>

If you do not include this, your program will not work.
Do not surround with ", just use the text and make sure the password is correct.

Branch Protection

The main branch is protected from being pushed to.
All changes must be made with a branch and a pull request.
ALL PULL REQUESTS must be reviewed by at least 3 other members of the team before being merged into main.
When a pull request is ready for review, please add all other contributors to request a review.
You can also enable Auto-Merge to automatically merge it when approved.

Pull request blocking

There is a github bot that will prevent pull requests from being merged if something is wrong.
An example is leaking secrets.

I accidentally committed to main

If you accidentally commit to main, make a new branch from your current main.
Push this branch to github.
Then, reset your local main to the remote main.
You can then create a pull request to merge your branch into main (If you're ready)

Issues

Our Agile issue tracking it being handled with Github / Github Projects.
You can find details on our project submissions with the Milestones Page
Each Milestone will contain a list of issues (requirements) that need to be completed for this submission.
Each issue is being tracked with the Github Projects page.
You can also see all the issues on the Issues Page

Missing issues / new problems

If you find any issues that are not listed, please create a new issue.
It's possible I missed something, or you may have found a problem in the project.

Issue Tracking

The Github Projects page is being used to track our issues.

High Level Column

Anything in this column is a high level requirement.
THESE ISSUES SHOULD NOT BE ASSIGNED
Instead they will contain sub-issues that are required to be complete

TODO Column

This column contains issues that are not assigned to anyone.
When you are looking for something to do, you can pick an issue from here.
To assign this issue to you, click on the issue and click the assign yourself button in the top right.
This will assign the issue to you and should automatically change the column in the Github Projects Page.

Assigned Column

This column contains issues that are assigned to someone.
If you are working on this issue, please move it to the In Progress column.

In Progress Column

This column contains issues that are being worked on.
If you are working on this issue, please move it to this column.
Please remember to create a branch for your issue, this can either be done locally or on the specific issue.
There is a button under Development that says Create branch
When you are done working on this issue, please create a pull request (new branch into main) and request reviews from everyone.
This should automatically move the issue to the Requesting Review column.

Requesting Review Column

This column contains issues or pull requests that are requesting review.
If you see anything here, please check to see if you have reviewed it.
Once 3/5 people have reviewed it, the pull request will be allowed to be merged, and will move to Done

Done Column

This column contains issues that are reviewed and done.

Discussions can be used to help talk about specific topics that won't clog our group chat or an issue.
You can also use this if you have a question as well.
I will try my best to answer them, though you might want to mention @gtaEPIC to make sure I see it.