Bien démarrer
Installation
Environ cinq minutes jusqu’à la première version enregistrée. L’extension s’installe de deux façons, avec les mêmes fichiers :
- npm (recommandé) :
npm updateapporte les nouvelles versions, et rien de compilé ne s’ajoute à votre dépôt. - Le zip : pour les serveurs sans accès à Internet, ou une équipe qui ne veut pas d’un second registre.
Avec npm
1. Indiquez le registre Revisionary à npm
Ajoutez un fichier .npmrc à la racine de votre projet Strapi. Il ne contient aucune clé : commitez-le.
@revisionary:registry=https://getrevisionary.com/npm/2. Enregistrez votre clé pour npm, une fois par poste
npm lit la clé dans sa propre configuration, jamais dans votre .env. Cette commande l’enregistre dans votre configuration personnelle (~/.npmrc), de la même façon dans bash, PowerShell et cmd :
npm config set //getrevisionary.com/npm/:_authToken RVSN_XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX3. Installez l’extension
npm install @revisionary/strapi-plugin4. Ajoutez votre clé de licence au .env
Strapi la lit au démarrage pour activer la licence :
REVISIONARY_LICENSE_KEY=RVSN_XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX5. Activez l’extension
Dans config/plugins.ts, activez-la et listez les types de contenu à versionner. Pas de ligne resolve : Strapi trouve l’extension dans node_modules.
export default () => ({
revisionary: {
enabled: true,
config: {
contentTypes: ['api::article.article', 'api::page.page'],
lockedFields: { 'api::article.article': ['slug'] },
excludedFields: { 'api::article.article': ['internalNotes'] },
cleanupHourUtc: 2,
},
},
});Les deux uids sont des exemples : mettez ceux de vos propres types de contenu (le Content-Type Builder les affiche, sous la forme api::article.article). Un uid absent du projet est ignoré, avec un avertissement dans les logs au démarrage et sur l’écran d’accueil de Revisionary.
6. Reconstruisez et démarrez Strapi
npm run build && npm run developpnpm lit les mêmes fichiers, le .npmrc et la clé enregistrée par npm config set. Yarn 2 et suivants lisent .yarnrc.yml dans le projet, et gardent la clé dans votre configuration personnelle :
npmScopes:
revisionary:
npmRegistryServer: "https://getrevisionary.com/npm/"yarn config set --home npmScopes.revisionary.npmAuthToken RVSN_XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXEn CI, enregistrez la clé comme secret et transmettez-la à npm avant l’installation, par exemple avec GitHub Actions :
- run: npm config set //getrevisionary.com/npm/:_authToken "$REVISIONARY_LICENSE_KEY"
env:
REVISIONARY_LICENSE_KEY: ${{ secrets.REVISIONARY_LICENSE_KEY }}
- run: npm ciDans un build Docker, passez-la comme secret de build et retirez-la dans la même étape, pour qu’elle ne reste jamais dans une couche de l’image :
COPY package.json package-lock.json .npmrc ./
RUN --mount=type=secret,id=revisionary_key \
npm config set //getrevisionary.com/npm/:_authToken "$(cat /run/secrets/revisionary_key)" \
&& npm ci \
&& npm config delete //getrevisionary.com/npm/:_authTokendocker build --secret id=revisionary_key,env=REVISIONARY_LICENSE_KEY .Avec le zip
1. Décompressez l’extension dans votre projet
Téléchargez le zip depuis votre compte Revisionary, puis décompressez-le dans src/plugins/ :
unzip revisionary-1.0.0.zip -d src/plugins/2. Ajoutez votre clé de licence
Dans le fichier .env de votre projet Strapi :
REVISIONARY_LICENSE_KEY=RVSN_XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX3. Activez l’extension
Dans config/plugins.ts, activez-la et listez les types de contenu à versionner :
export default () => ({
revisionary: {
enabled: true,
resolve: './src/plugins/revisionary',
config: {
contentTypes: ['api::article.article', 'api::page.page'],
lockedFields: { 'api::article.article': ['slug'] },
excludedFields: { 'api::article.article': ['internalNotes'] },
cleanupHourUtc: 2,
},
},
});Les deux uids sont des exemples : mettez ceux de vos propres types de contenu (le Content-Type Builder les affiche, sous la forme api::article.article). Un uid absent du projet est ignoré, avec un avertissement dans les logs au démarrage et sur l’écran d’accueil de Revisionary.
Vous pourrez modifier cette liste depuis l’écran des réglages : une fois enregistrés là, les réglages stockés en base prennent le relais.
4. Reconstruisez et démarrez Strapi
npm run build && npm run developOuvrez une entrée d’un type de contenu versionné. Le panneau Historique des versions se trouve dans la colonne de droite, et Revisionary apparaît dans le menu principal.