暫無描述

Guffon 79cfd23b57 Merge branch 'feature/finalize_subscription_page' into 'develop' 3 年之前
.output fbcd6d052d BTTF-51 4 年之前
assets 54f215bab3 problème de z-index pour le loading 4 年之前
components 51895c88c1 fix the 'max recursion stack' bug from hell 3 年之前
config fd0727e1dc fix mineurs 4 年之前
lang 19bc82684f complete translation 3 年之前
layouts 6c24526660 BTTF-52 4 年之前
middleware 73aef4ad10 post reread fixes 4 年之前
models 6d088f5980 Page addresse postal 4 年之前
pages 9c22fdded5 fix ssr rendering and finalize template 3 年之前
plugins 6d088f5980 Page addresse postal 4 年之前
services 51895c88c1 fix the 'max recursion stack' bug from hell 3 年之前
static 1e72fc2bce page subscription ok 4 年之前
store 5ddb7ea774 Suppression de API en tant que Root pour les URL "normale" 4 年之前
tests ab11728b2e tests 4 年之前
types d634a269b9 ajout des filtres dans la construction d'une url pour une list et possibilité de normalizer un item via une query 4 年之前
use d350fada93 fix merge request 4 年之前
.babelrc b9a8ff33d0 Initial commit 5 年之前
.editorconfig b9a8ff33d0 Initial commit 5 年之前
.env.local 286e2b9731 finalize subscription page translation 3 年之前
.env.preprod e4c667f4c9 update envs 4 年之前
.env.prod e4c667f4c9 update envs 4 年之前
.eslintrc.js c163521422 vuex-orm poc init 5 年之前
.gitignore 432d5dca46 BTTF-51 test 4 年之前
.gitlab-ci.yml 7534d861d9 lint and minor refactoring 4 年之前
README.md acae629c39 replace pm2 deploy commands by a simple yarn alias 4 年之前
ecosystem.config.js 45df1136f2 update build configuration 4 年之前
jest.config.js 6034fff251 BTTF-58 4 年之前
jsdoc.json 3144f4862a config + rights + docs + tests + i18n 4 年之前
nuxt.config.js 7cd5f3e733 apply eslint format fixes 4 年之前
package.json 65af139da6 update vuex-orm-next 4 年之前
tsconfig.json d84b358606 add module nuxt-image 4 年之前
yarn.lock d48dedbf82 yarn lock 4 年之前

README.md

app

pipeline status coverage report

Frontend développé avec Vue.js 2 + NuxtJs 2

A voir:

Opérations courantes

Déploiement

Premier déploiement en tant que service

Prérequis 1 : PM2 doit être installé de manière globale sur la machine hôte (https://nuxtjs.org/deployments/pm2/)

On commence par cloner le projet app, puis par se placer dans le répertoire ainsi créé. On créé un symlink vers le fichier .env.xxx voulu sous le nom de .env (selon l'environnement)

ln -s .env.xxx .env

Pour déployer le projet en mode SSR, on commence par mettre à jour et compiler :

yarn install
yarn build

On lance ensuite le service avec :

pm2 start

Vérifier le statut avec :

pm2 show app

On pourra ensuite interagir avec le service ainsi :

pm2 restart app
pm2 stop app
pm2 logs app

On enregistre le service pour qu'il soit relancé lors du boot de la machine: https://pm2.keymetrics.io/docs/usage/startup/

En tant que non-root:

pm2 startup

Puis, comme la commande précédente le suggère, on lance en tant que root:

env PATH=$PATH:/usr/bin /usr/local/share/.config/yarn/global/node_modules/pm2/bin/pm2 startup systemd -u exploitation --hp /home/exploitation

On sauvegarde la nouvelle configuration avec:

pm2 save

Mettre à jour

Se placer dans le répertoire de l'application, puis lancer:

yarn deploy

Cette commande est un alias qui équivaut à lancer:

git pull
yarn install
yarn build
pm2 restart

Autres

Lancer les tests

Pour lancer les tests unitaires:

jest

Générer la doc

Pour regénérer la documentation automatique:

yarn docs

Plus d'infos

Structure du projet

Répertoire Rôle
assets Contient les fichiers style et medias
components Les différents composants graphiques qui composent l'application
config La configuration de l'application
lang Les fichiers de traduction
layouts Layouts des pages
middleware Code exécuté avant le rendu des pages (ex: pour vérifier l'authentification)
models Définition des entités (ou modèles)
node_modules Modules node installés via npm
pages Définition des pages qui composent l'application
plugins ...
services Rassemble les classes utilitaires non graphiques
static Ressources statiques et publiques
store Le store et ses composants servent d'entrepôt de donnés, et s'assurent de la cohérence de celles-ci
tests Regroupe les tests (unitaires, end-to-end...)
use ...