暂无描述

Olivier Massot 07cb4d3e63 repair login redirection 3 年之前
assets f115b39dd5 add skeleton for licence-cmf pages 3 年之前
components 217e5a85f0 Merge remote-tracking branch 'origin/feature/structure_cmf_licence_page_rebased' into develop 3 年之前
composables 092308b09f switch cmf_licence and parameters to their dev versions in the menu 3 年之前
config 7aff84d32d add sse service and plugin 3 年之前
doc 07cb4d3e63 repair login redirection 3 年之前
lang 217e5a85f0 Merge remote-tracking branch 'origin/feature/structure_cmf_licence_page_rebased' into develop 3 年之前
layouts a145252465 remove sse management from default layout 3 年之前
middleware 07cb4d3e63 repair login redirection 3 年之前
models 217e5a85f0 Merge remote-tracking branch 'origin/feature/structure_cmf_licence_page_rebased' into develop 3 年之前
pages 4882c29e6c fix error message on subscription page for user with no sms option 3 年之前
plugins 07cb4d3e63 repair login redirection 3 年之前
services 07cb4d3e63 repair login redirection 3 年之前
static 2c0ae1f768 V8-3346 3 年之前
store 217e5a85f0 Merge remote-tracking branch 'origin/feature/structure_cmf_licence_page_rebased' into develop 3 年之前
tests ca733a59ef restore CI 3 年之前
types e5e83dbf79 makes cmf licences downloadable 3 年之前
.babelrc b9a8ff33d0 Initial commit 5 年之前
.editorconfig b9a8ff33d0 Initial commit 5 年之前
.env.local 1ba610b0e1 regen mercure private key 3 年之前
.env.preprod 1ba610b0e1 regen mercure private key 3 年之前
.env.prod 1ba610b0e1 regen mercure private key 3 年之前
.env.test 1ba610b0e1 regen mercure private key 3 年之前
.eslintrc.js c163521422 vuex-orm poc init 5 年之前
.gitignore 3b4ad1ec5b education timing 3 年之前
.gitlab-ci.yml ca733a59ef restore CI 3 年之前
README.md 72b65adb35 fix error on missing mercure hub url 3 年之前
ecosystem.config.js 45df1136f2 update build configuration 4 年之前
jest.config.js 5a0d5bf7a8 redefine coverage, add some tests for sseSource 3 年之前
jsdoc.json 3144f4862a config + rights + docs + tests + i18n 4 年之前
nuxt.config.js 7cd5f3e733 apply eslint format fixes 4 年之前
package-lock.json 28caeacace minor fix 3 年之前
package.json 4381c3d40c add mercure subscription to cmf-licence/organization page 3 年之前
tsconfig.json d84b358606 add module nuxt-image 4 年之前
yarn.lock 147781bb66 new package 3 年之前

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

Déboguer sur un serveur distant

Pour déboguer sur un serveur distant, comme preprod :

 pm2 stop app
 yarn dev

À partir de là, on peut accéder au site en mode dev.

Une fois le bug corrigé, interrompre le yarn dev, et relancer avec

pm2 start app

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 ...