On any OS, install git and node.js. Then :
# Download camptocamp.org source code :
git clone https://github.com/c2corg/c2c_ui
cd c2c_ui
# Install dependencies. It's quite long, but you have to do it once.
npm ciAnd now, let's launch
npm run serve❤️ http://localhost:8080 ❤️
Want to easily access to every dev tools on a fancy interface? Have a look on the doc! 😎
Camptocamp.org uses https://snyk.io/ for secure development.
Chaque PR (hors PR venant d'un fork) build le front et le publie automatiquement
sur gh-pages, à l'URL https://c2corg.github.io/c2c_ui/<nom-de-branche>/
(cf. .github/workflows/ci.yml, job github-pages). Depuis que ce job tourne
dans l'environnement GitHub pr-preview pour les événements pull_request,
il attend l'approbation d'un reviewer avant de déployer quoi que ce soit —
n'importe qui ne peut plus déclencher une publication publique juste en
poussant sur une branche.
Configuration à faire une seule fois (repo Settings, accès admin requis — pas quelque chose qu'un commit peut faire) :
- Settings → Environments → New environment → nommer
pr-preview. - "Required reviewers" → ajouter les mainteneurs habilités à approuver une preview (l'équipe qui merge d'habitude sur ce repo).
- Ne rien configurer sur l'environnement
github-pages-deploy(utilisé pour les push surmaster/tags, donc du code déjà relu au moment du merge — pas de friction supplémentaire à ajouter là).
Sans cette étape, GitHub crée l'environnement pr-preview sans aucune règle
de protection au premier run et le déploiement continue de partir sans
approbation — la protection ne prend effet qu'une fois la règle posée dans
Settings.