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

Terms and Conditions

Najman Husaini edited this page Dec 4, 2023 · 2 revisions

This is not a legal document. Legal action will not be taken against you if you breach these terms and conditions. The only thing that will be at stake is your access to specific resources provided by the Software Team, and the ability to participate in events and competitions. Your status as a student will never be affected if you breach these terms and conditions. The act of breaking an agreement listed below shall be called a misconduct.

Contributing to the Repository

This repository is public. It is officially a part of the club's public image. As such, the Software Team will take measures to ensure that we do not aversely affect our club's image. Before pushing a commit to this repository, you must agree to the following:

I will not use offensive language in any text that I commit

Funny or nonsensical names are allowed but discouraged

I will not plagiarize work

Follow the rules of the School of Computing on plagiarism. Collaborating with others is definitely fine. However, you should provide at least a link to the website or resource you copied code from.

I will explain my work to the best of my abilities if my work could compromise the integrity of the computer running it

If your code could cause misconfiguration, or contains code that looks suspiciously like malware, be prepared to explain why it doesn't do either of those.

Consequence

If a misconduct occurred accidentally, you will usually be left with just a warning. Repeat misconducts, or intentional misconducts, may result in you being permanently suspended from contributing to the Software Team.

Lunaserver

Lunaserver is a piece of mission critical hardware that is exposed to the World Wide Web. While the team does not expect it to be the target of a cyberattack, it is still something we want to take measures against. Besides this, we also want to avoid misconfigurations to critical software running in Lunaserver. We also want to ensure that you will act in the Software Team's best interests. By connecting to Lunaserver, you agree to the following:

I will use a secure password and keep my SSH key secure if I have one

Your password will be checked by the Software Team Lead. If you suspect that your password or SSH key has been compromised, please let the Software Team Lead know as soon as possible. They will be forgiving. Do not share your password or SSH key. If someone else would like to see the contents of Lunabase, they are welcome to. However, you should login first for them.

I will not use Lunaserver to do anything not related to our goals as a Software Team

Do not do your homework on it. Be prepared to explain how your work relates to us as a team.

I will share any and all data that I created on Lunaserver when asked

The administrators of Lunaserver (which includes the Software Team Lead) will be able to read all files in your home directory, but we still expect you to explain the purpose of each file when asked (refer above)

I consent to having my public IP address logged, along with my login times and what commands I run

This will only be used for security purposes and not to gauge your performance

I will not run any privileged actions on my Docker containers in Lunaserver, except if it requires access to the Realsense Camera, Pozyx, or any microcontrollers

An unprivileged action is any action that can be ran on a Docker container without privileged access. To test if an action is unprivileged on the team's DevContainer, you can remove the privileged: true line from lunadev/compose.yaml and perform the action. The action is privileged if and only if the action fails to run due to a lack of permissions or lack of access to a privileged resource.

I will take responsibility for any code that is ran under my name on Lunaserver

This includes code ran by someone who is using your credentials with or without your consent.

Consequence

The choice of corrective action that a member must perform is ultimately at the discretion of the current Software Team Lead. However, it will be affected by the following circumstances: If the misconduct was accidental or intentional; If the misconduct occurred in close proximity to or during an important event or deadline; How much work needs to be done to correct the misconduct. After considering all of these circumstances, if the misconduct was minor, you may be left with just a warning. Otherwise, you may face a temporary suspension from Lunaserver, a permanent suspension from Lunaserver, or permanent suspension from contributing to the Software Team.