بدون توضیح

Olivier Massot 6f72faf407 Merge branch 'hotfix/V8-7722-trouver-une-solution-pour-viter-' 2 ماه پیش
assets 75847d418f freemium final 4 ماه پیش
components 6f72faf407 Merge branch 'hotfix/V8-7722-trouver-une-solution-pour-viter-' 2 ماه پیش
composables 5905101023 fix / lint / prettier 3 ماه پیش
config 05a96778d6 minor fixes 2 ماه پیش
doc 077115ab34 post MR fixes 1 سال پیش
env a146c29902 fix setupEnv script to prevent race conditions 4 ماه پیش
i18n bf10f2fce2 update message on the refresh needed dialog 2 ماه پیش
layouts 6ed5f3019b apply prettier lint 4 ماه پیش
middleware abdcaa0d65 Updates route middleware for development pages 5 ماه پیش
models 5905101023 fix / lint / prettier 3 ماه پیش
pages 5905101023 fix / lint / prettier 3 ماه پیش
plugins 520b9f5538 test et lint 3 ماه پیش
prepare 4ee2d98e0a remove extra script file 2 ماه پیش
public 75847d418f freemium final 4 ماه پیش
services 6f72faf407 Merge branch 'hotfix/V8-7722-trouver-une-solution-pour-viter-' 2 ماه پیش
stores 6ed5f3019b apply prettier lint 4 ماه پیش
tests 82f754547c Uses static property for manager ID 2 ماه پیش
types 6ed5f3019b apply prettier lint 4 ماه پیش
.editorconfig 3878265538 add editorconfig file 1 سال پیش
.gitignore 05a96778d6 minor fixes 2 ماه پیش
.gitlab-ci.yml 8869cd422e test CI 4 ماه پیش
.nuxtignore df7f0a8c24 upgrade node+nuxt, post upgrade fixes 2 سال پیش
.nvmrc af0719f3b5 post release fixes 6 ماه پیش
.prettierignore d6ee61954c apply prettier fixes 1 سال پیش
.prettierrc 3878265538 add editorconfig file 1 سال پیش
.yarnrc.yml 66f21bac15 upgrade to yarn 4 1 سال پیش
Dockerfile d17ee95233 test ci 7 ماه پیش
README.md 90b3e6a006 apply prettier 6 ماه پیش
app.vue dd15fcee93 Menu 3 سال پیش
eslint.config.mjs 6ed5f3019b apply prettier lint 4 ماه پیش
icon.svg 3db6bdbf8c post MR fixes 1 سال پیش
logo.png d4019bd3db rewrite data services (ongoing) 3 سال پیش
nuxt.config.ts 5905101023 fix / lint / prettier 3 ماه پیش
package.json 247ff61d36 retour MR + page event 4 ماه پیش
tsconfig.json d6ee61954c apply prettier fixes 1 سال پیش
vitest.config.ts d2444bd94b apply eslint - prettier fixer and manual fixes 1 سال پیش
yarn.lock 247ff61d36 retour MR + page event 4 ماه پیش

README.md

App

Latest Release

Branch Status Coverage
master pipeline status coverage report
develop pipeline status coverage report

Frontend Opentalent, avec NuxtJs 3

A voir :

Installation (mode dev)

Cloner le projet :

git clone git@gitlab.2iopenservice.com:opentalent/app.git

Installer les dépendances :

yarn install

Copier les certificats dans le répertoire env/ de ce projet :

  • local.app.opentalent.fr.crt
  • local.app.opentalent.fr.key

Lancer le serveur de développement :

yarn dev -o

Déploiement en prod

Premier déploiement en tant que service

On commence par cloner le projet app, puis par se placer dans le répertoire ainsi créé.

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

yarn deploy

Cette commande est un alias qui équivaut à lancer :

git pull
yarn install
yarn build

Mettre à jour

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

yarn deploy

Spécial : environnement de test

Attention, sur les environnements de test, il faut utiliser nvm pour exécuter la bonne version de node, exemple :

nvm exec yarn install

Activer / désactiver le mode maintenance

Pour activer le mode maintenance en production :

# (éditer les dates et heures de la maintenance, ligne 75)
nano /var/opentalent/git/app/public/maintenance.html

# activer la maintenance
touch /var/opentalent/git/app/.maintenance

Pour le désactiver :

rm /var/opentalent/git/app/.maintenance

Les Ips internes sont exclues du mode maintenance

Autres

Lancer les tests

Pour lancer les tests unitaires :

jest

Générer la doc

Pour régénérer la documentation automatique :

yarn docs

Déboguer en prod ou en test

Sur les environnements où app est servie par supervisor, on peut consulter les logs d'erreur avec :

sudo supervisorctl tail -6000 app:app_00 stderr

le -6000 étant le nombre de bytes à afficher Voir plus : http://supervisord.org/running.html#supervisorctl-command-line-options

Exécuter ESLint

yarn lint

Faire fonctionner le HMR

Si le HMR (Hot Module Reload) ne fontionne pas et qu'un message d'erreur est logué en console disant que l'adresse n'est pas accessible, alors suivre les étapes suivantes :

  • Ouvrir l'inspecteur de son navigateur, onglet Réseau
  • Rafraichir la page
  • Trouver la requête en erreur. Elle devrait être de la forme https://local.app.opentalent.fr:24678/_nuxt/
  • Clic droit dessus, puis "ouvrir dans un nouvel onglet"
  • Ajouter une exception de sécurité dans le navigateur

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
composables Des fonctions conscientes du contexte applicatif, qui font le lien entre les pages et les services
config La configuration de l'application
doc Documentation du projet
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 Configuration des modules
public Ressources statiques et publiques
services Rassemble les classes utilitaires non graphiques et indépendantes du contexte applicatif
stores 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...)
types Types Typescript (interfaces, enums...)