Application de ticketing interne, conçue et développée pour le projet de Saé3.01.
Explorer la documentation »
Sommaire
Oxilium est un service de ticketing interne. Le principe de la plateforme est de permettre à des utilisateurs de créer des tickets, qui pourront ensuite être gérés par des techniciens ou un administrateur web.
Oxilium regroupe plusieurs fonctionnalités principales. En voici une liste non exhaustive :
- Création de ticket par les utilisateurs inscrits.
- Possibilité pour un utilisateur non inscrit de demander de l'assistance via un ticket de la part d'un utilisateur inscrit.
- Gestion de l'application par un utilisateur administrateur.
- Possibilité aux techniciens de s'attacher à un ticket.
- Visualisation des données dans des journaux par un administrateur système.
- ...
Pour commencer à travailler sur le projet, il vous faudra les outils suivants :
- Un editeur de code qui supporte PHP (comme Visual Studio Code ou PhpStorm)
- L'outil de virtualisation Docker qui permettra de déployer un environnement de test et de travaille en local
- L'outil Git
- Un navigateur récent (Chrome, Brave, Firefox, Opera, etc...)
- De la patience..
Voici les différentes étapes pour préparer un environnement de travail correct pour travailler sur Oxilium
-
Cloner le répository GitHub
git clone https://github.com/Chokbardeb/Oxilium
-
Se mettre sur la branche
dev, qui est la branche de travail principalgit checkout dev
-
Installer Docker Desktop pour windows.
-
Créer le fichier de configuration
.envecho ` "MYSQL_DATABASE=db` MYSQL_USER=user` MYSQL_PASSWORD=passwd` MYSQL_ROOT_PASSWORD=rootpasswd` PORT_HTTPS=8081` PORT_HTTP=8080"` > .env
-
Lancer le container docker
docker compose up --build --force-recreate
-
(facultatif) Si vous voulez ouvrir un terminal mysql pour vous connecter à la BDD, ouvrez un nouveau terminal et utilisez cette commande :
docker exec -it oxilium-db-1 bash -c "mysql -prootpasswd"
Vous faites partie du projet Oxilium et vous souhaitez contribuer ? Pas de soucis, ce guide vous explique comment faire à l'aide de l'outil git et de la platforme github. Pour contribuer, il faudra en premier avoir suivi les étapes de l'installation.
Les commandes ci-dessous sont utilisables sur Git Bash, ou directement accessibles de manière intéractive depuis certains IDE ou encore le logiciel GitHub Desktop.
-
Faites vous votre propre branche !
Pour travailler convenablement sans entrer en conflit avec les modifications des autres contributeurs, il faudra vous créer votre propre branche, basée sur la branche
dev.ATTENTION : Vous ne devez pas créer une branche a partir de "master", et encore moins effectuer des modifications directement sur celle-ci.
Pour vous créer une branche, il faut entrer la commande ci-contre :
git checkout -b <nom de votre nouvelle branche> dev
Essayez de donner un nom cohérent à votre branche pour qu'elle puisse être facilement identifiée.
Puis il faut push sa branche sur github :
git push -u origin <le nom de votre branche>
-
Faites vos modifications et commits :
Rappel, pour faire un commit, ajoutez vos modifications :
git add .
Puis commit :
git commit -m "modification de blablabla"
Et enfin, on "push" (on upload son code sur la platforme distante, ici github) :
git push
-
Lorsque vous en avez fini avec votre branche il faut faire une "pull request", cela servira pour tout les autres contributeurs, à vérifier votre code, et à demander des modifications supplémentaires, ou rapporter des bugs. Pour cela, rendez-vous sur le projet github, et suivez la procédure ci-dessous :
Rendez vous sur l'onglet "pull requests"
Puis cliquez sur le bouton "new pull request"
Ici il faut selectionner la branche "dev" sur le bouton de gauche, et votre branche sur le bouton de droite
Par la suite, il faudra appuyer sur le bouton "create pull request", lui donner un nom, et éventuellement une description, puis valider. Une fois ceci fait, vous tomberez sur un écran a peut prêt similaire :

Ici vous n'aurez plus rien a faire. Il faudra attendre l'approbation des autres pour pouvoir faire le merge final !
Pour déployer le projet sur un serveur, voici les étapes a suivre :
- Avoir une distribution Debian sur un serveur.
- Installer Docker :
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get updatePuis :
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin- Installer Git
sudo apt-get install git- Cloner le repo github
git clone https://github.com/Chokbardeb/Oxilium && cd Oxilium- Créer un fichier
.envqui contiendra les configuration sécurisées (exemple : le mot de passe de la base de donnée)
printf \
"MYSQL_DATABASE=<Nom de la base de donnée> \n\
MYSQL_USER=<user mysql> \n\
MYSQL_PASSWORD=<Mot de passe de la base de donnée> \n\
MYSQL_ROOT_PASSWORD=<Mot de passe root de la BDD> \n\
APACHE_HOSTNAME=<nom de domaine> \n\
PORT_HTTPS=<port https> \n\
PORT_HTTP=<port http>" \
> .env
- Lancer la construction et le lancement de l'image Docker
sudo docker compose up -d- Oxilium est maintenant disponible depuis : http://<ip du serveur>/
Pour executer les tests unitaires de l'application vous aurez besoin que d'une seule commande :
docker compose -f docker-tests.yml up --abort-on-container-exit --exit-code-from test --attach test --build --force-recreate
NoXeDev |
EwenDev |
ComeRegnier |
MaxOuvrard |
ldv500 |
