Modifications pour le document Tekiens.net ✨
Modifié par Kevin FRICK le 2025/01/27 21:15
Depuis la version 1.6
modifié par Louis GRANDEL
sur 2024/11/01 09:58
sur 2024/11/01 09:58
Commentaire de modification :
(Autosaved)
À la version 6.1
modifié par Kevin FRICK
sur 2025/01/27 21:10
sur 2025/01/27 21:10
Commentaire de modification :
Il n'y a aucun commentaire pour cette version
Résumé
-
Propriétés de la Page (3 modifications, 0 ajouts, 0 suppressions)
Détails
- Propriétés de la Page
-
- Titre
-
... ... @@ -1,1 +1,1 @@ 1 -Tekiens.net 1 +Tekiens.net ✨ - Auteur du document
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. grandellou1 +XWiki.frickkevin - Contenu
-
... ... @@ -5,13 +5,13 @@ 5 5 = Le projet = 6 6 7 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. 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.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. 9 9 10 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 11 12 12 == Hébergement == 13 13 14 - Lesiteestactuellement hébergé sur la vm tekiens-prod.prod.infra.atilla.org sur [[Laika>>Infrastructure.Serveurs_physiques.Laika.WebHome]] dans:14 +Tekiens.net est hébergé sur la vm tekiens-prod.prod.infra.atilla.org sur [[Laika>>Infrastructure.Serveurs_physiques.Laika.WebHome]] dans: 15 15 16 16 {{code language="bash"}} 17 17 cd /srv/tekiens-net/ ... ... @@ -20,34 +20,60 @@ 20 20 (% class="wikigeneratedid" %) 21 21 La base de donnée est dans la vm mysql de bill (mysq-prod) sous le nom tekiens_net 22 22 23 +(% class="wikigeneratedid" %) 24 +Les variables d'environnement sont dans {{code language="none"}}/etc/apache2/envvars{{/code}} : 25 + 26 +{{code language="bash"}} 27 +export SMTP_ADDRESS=mail-prod.prod.infra.atilla.org 28 +export SMTP_PORT=25 29 +{{/code}} 30 + 23 23 == Développement == 24 24 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 dis ocrd du projet.33 +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. 26 26 27 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 28 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. 37 +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). 30 30 31 -=== CI/CD===39 +=== Intégration (CI) === 32 32 33 -Lo remipsum(mais c'estquiorem🤔)41 +La CI fonctionne actuellement avec la CI du [[GitLab>>Services.GitLab.WebHome]] d'Atilla, et donc avec les [[GitLab runners>>Services.GitLab.WebHome]]. 34 34 35 - ===Build ===43 +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é. 36 36 37 - Normalementle build de l'application est fait automatiquementmaispour le faire à la main voici les commandes à faire dans la vm :45 +=== Déploiement (CD) === 38 38 47 +Le déploiement automatisé se fait via un cronjob ({{code language="none"}}crontab -e{{/code}}) : {{code language="none"}}0 * * * * /root/update.sh{{/code}} 48 + 49 +Voici le script exécuté : 50 + 39 39 {{code language="bash"}} 40 - cd/srv/tekiens-net52 +#!/bin/bash 41 41 42 -#! mise à jour du repo 43 -git pull 54 +cd /srv/tekiens-net/ 44 44 45 -# !scripts pourautomatiser lebuilddu front46 - ./run.shinstall47 - ./run.shbuild56 +# Sauvegarder le dernier commit 57 +LAST_COMMIT=$(git rev-parse HEAD) 58 +echo "Last commit: $LAST_COMMIT" 48 48 49 -#! redémarrage du serveur HTTP 50 -systemctl reload apache2 60 +# Mise à jour du dépôt 61 +git fetch 62 +git reset --hard origin/master 63 + 64 +# Récupération du nouveau commit 65 +NEW_COMMIT=$(git rev-parse HEAD) 66 +echo "New commit: $NEW_COMMIT" 67 + 68 +# Vérifier s'il y a des changements 69 +if [ "$LAST_COMMIT" != "$NEW_COMMIT" ]; then 70 + # Script installant les dépendances manquantes 71 + ./run.sh install 72 + # Script pour automatiser le build du front 73 + ./run.sh build 74 + # Redémarrage du serveur HTTP (pour mettre à jour le back) 75 + systemctl restart apache2 76 +fi 51 51 {{/code}} 52 52 53 53 == Maintenance ==