Code source wiki de Tekiens.net ✨
Version 4.1 par Kevin FRICK le 2024/11/05 18:42
Masquer les derniers auteurs
author | version | line-number | content |
---|---|---|---|
![]() |
1.1 | 1 | {{box cssClass="floatinginfobox" title="**Contents**"}} |
2 | {{toc/}} | ||
3 | {{/box}} | ||
4 | |||
5 | = Le projet = | ||
6 | |||
7 | Dans la continuité des sites eistiens.net, tekiens.net se veut être une plateforme au service des associations et de la vie étudiante de CY tech. | ||
![]() |
3.1 | 8 | La première version du site propose une page pour chaque association ainsi qu'une page regroupant les événements publiés par celles-ci. |
![]() |
1.1 | 9 | |
10 | Le site est actuellement géré par Louis Grandel et Kévin Frick mais une nouvelle équipe projet devrait arriver à la fin d'année 2024. | ||
11 | |||
12 | == Hébergement == | ||
13 | |||
![]() |
1.10 | 14 | Tekiens.net est hébergé sur la vm tekiens-prod.prod.infra.atilla.org sur [[Laika>>Infrastructure.Serveurs_physiques.Laika.WebHome]] dans: |
![]() |
1.1 | 15 | |
16 | {{code language="bash"}} | ||
17 | cd /srv/tekiens-net/ | ||
18 | {{/code}} | ||
19 | |||
20 | (% class="wikigeneratedid" %) | ||
21 | La base de donnée est dans la vm mysql de bill (mysq-prod) sous le nom tekiens_net | ||
22 | |||
23 | == Développement == | ||
24 | |||
![]() |
3.1 | 25 | Le développement est actuellement géré par l'équipe de développement de tekiens.net qui que vous pouvez retrouver sur le serveur discord du projet. |
![]() |
1.1 | 26 | |
27 | Il existe 2 dépôt git du projet, un hébergé sur le [[gitlab ATILLA>>https://gitlab.atilla.org/tekiens-net/tekiens-net/]] et un autre [[ici>>https://gitlab.com/ptlc8/tekiens-net]] | ||
28 | |||
![]() |
3.1 | 29 | Le site utilise [[Flask>>https://flask.palletsprojects.com]] pour son back-end, [[VueJS>>https://vuejs.org/]] pour son front-end et sa base de donnée en SQL (MySQL ou MariaDB). |
![]() |
1.1 | 30 | |
![]() |
3.1 | 31 | === Intégration (CI) === |
![]() |
1.1 | 32 | |
![]() |
3.1 | 33 | La CI fonctionne actuellement avec la CI du GitLab d'Atilla, et donc avec les gitlab runners (dans la VM gitlab-runners-prod.atilla.org). |
![]() |
1.1 | 34 | |
![]() |
3.1 | 35 | Ses différentes étapes sont définis dans le fichier [[.gitlab.yml du projet>>https://gitlab.atilla.org/tekiens-net/tekiens-net/-/blob/master/.gitlab-ci.yml?ref_type=heads]] : actuellement le projet est juste linté puis conteurisé et rapidement testé. |
![]() |
1.1 | 36 | |
![]() |
3.1 | 37 | === Déploiement (CD) === |
![]() |
1.1 | 38 | |
![]() |
3.1 | 39 | Il n'y a aucune étape de déploiement automatisé (c'est manuel 😵), il faudrait le rajouter dans les étapes du .gitlab-ci.yml. |
40 | |||
41 | Normalement le build de l'application devrait être fait automatiquement mais pour le faire à la main voici les commandes à faire dans la VM : | ||
42 | |||
![]() |
1.1 | 43 | {{code language="bash"}} |
44 | cd /srv/tekiens-net | ||
45 | |||
![]() |
3.1 | 46 | # mise à jour du repo |
![]() |
1.1 | 47 | git pull |
48 | |||
![]() |
3.1 | 49 | # script installant les dépendances manquantes |
![]() |
1.1 | 50 | ./run.sh install |
![]() |
3.1 | 51 | |
52 | # script pour automatiser le build du front | ||
![]() |
1.1 | 53 | ./run.sh build |
54 | |||
![]() |
3.1 | 55 | # redémarrage du serveur HTTP (pour mettre à jour le back) |
![]() |
1.1 | 56 | systemctl reload apache2 |
57 | {{/code}} | ||
58 | |||
59 | == Maintenance == | ||
60 | |||
61 | Chaque association a un compte sur le site et pour le moment le seul moyen de changer un mot de passe ou de créer une association est de lancer les scripts éponymes directement sur la VM. | ||
62 | Impossible de récupérer les mots de passe directement en BDD ceux-ci sont chiffrés avec bcrypt, donc si un mot de passe est perdu il faut en recréer un. | ||
63 | |||
64 | Les scripts sont dans le dossier : | ||
65 | |||
66 | {{code language="bash"}} | ||
67 | cd /srv/tekiens-net/back | ||
68 | |||
69 | {{/code}} | ||
70 | |||
71 | Pour créer une association: | ||
72 | |||
73 | {{code language="bash"}} | ||
74 | ./create_asso.py <asso_id> <password> | ||
75 | {{/code}} | ||
76 | |||
77 | Pour changer le mot de passe d'une association: | ||
78 | |||
79 | {{code language="bash"}} | ||
80 | ./change_password.py -p <password> -i <id_association> | ||
81 | {{/code}} |