@syd-ogc/types
v2.5.6
Published
Types for OGC
Downloads
48
Readme
Projet Types d'OGC
Faute de monorepo, ce projet est une librairie NPM qui contient les types partagés entre les projets frontend et backend.
Utilisation durant le développement
En local
En début de dév, lorsqu'on apporte plusieurs modifs fréquentes à cette lib, on peut utiliser npm link pour utiliser le projet types
cloné en local plutôt que sa version publiée sur npm. Pour ça :
- Dans le dossier
types
, exécuter :npm run build
npm link
- cela (re)créé un lien symbolique npm pour votre projet local
types
. Il est alors disponible pour d'autres projets.
- cela (re)créé un lien symbolique npm pour votre projet local
- Dans un autre projet utilisant
types
(frontend, backend, ...), exécuter :npm link @syd-ogc/types
- remarque :
@syd-ogc/types
est lename
du package linké - le projet courant référence alors votre dossier
types
local
- remarque :
Remarque : exécuter
npm i
dans le projet courant fait pointer de nouveau vers lesnode_modules
. Il faudra refaire unnpm link <package>
pour pointer de nouveau sur le package local.
Sur la CI
Une fois la lib dans une version plus aboutie, on va en publier une version sur npm pour la rendre disponible pour les autres - reviewers et pipelines de CI.
Déroulement standard
On prend l'exemple où l'on veut faire une évol sur la lib types
en version 1.2.3
:
- suffixer la version actuelle d'un
-next-{n}
:1.2.3-next-1
- publication manuelle de la lib (cf plus bas)
- utilisation de la version
1.2.3-next-1
dans le projet frontend
Lors de la review, une modification s'avère nécessaire sur la lib :
- bump la version de travail :
1.2.3-next-2
- publication manuelle de la lib (cf plus bas)
- utilisation de la version
1.2.3-next-2
dans le projet frontend
La review est approuvée, la branche frontend prête à être merge. On publie la version suivante de types.
- bump la version :
1.2.4
Remarque: pas forcément
1.2.4
, car d'autres versions auront déjà pu être publiées entre temps
- merge sur la branche
master
=> publication auto par la CI de la1.2.4
- utilisation de la version
1.2.4
dans le projet frontend - merge de la branche frontend
Publication
Publication automatique
Lors d'un merge sur master
, la lib est automatiquement publiée sur npm.
Attention, afin que cela fonctionne comme attendu, avant de push, pensez à :
- faire un
npm run build
sur votre branche :- pour regénérer le
dist/
(lib/
ici) - pour regénérer les
index.ts
- pour regénérer le
- incrémenter le numéro de
version
dans lepackage.json
- faire un
npm install
pour mettre à jour lepackage-lock.json
, et le commit
Procédure de publication manuelle
Pour publier une nouvelle version de la lib :
- modifier le numéro de version dans
package.json
npm i
npm run build
npm login
Se connecter ànpmjs.com
avec le comptesyd_apps
(credentials dans lastpass)npm publish
(nécessite d'être logged in à npm)