J’utilise la dernière version de Discourse et j’ai essayé d’installer des plugins valides dans le répertoire /var/discourse/plugins. Je copie les dossiers de plugins là-bas, mais ils ne s’installent jamais, évidemment, j’utilise toujours ./launcher rebuild app. La seule façon dont je peux les installer est d’utiliser app.yml.
Je veux les installer hors ligne à des fins de test. Je ne veux pas ouvrir un dépôt GitHub pour installer un plugin de test, cela me semble contre-productif.
Peut-être configurer un environnement de développement plutôt qu’un site de production ? Vous pouvez cloner les dépôts directement dans le répertoire plugins. De plus, cela n’affectera pas les données de votre site de production et ne provoquera pas d’interruption de service pour vos utilisateurs lors de la reconstruction. Consultez Discourse Meta - guides d’installation de développement pour tous les sujets sur la configuration d’un environnement de développement.
L’installation de plugins locaux est-elle bloquée dans un environnement de production ? Est-il possible de convertir un environnement de production en environnement de développement sans tout refaire ?
Pas « bloquée », mais cela ne fonctionne tout simplement pas.
Comme Nate l’a dit, la meilleure option est de configurer un environnement de développement local, ou de continuer à utiliser app.yml si vous préférez cela.
Et pourquoi est-il de pratique courante de rendre le code source public lors de l’installation de plugins en production ? Cela signifie-t-il que Discourse n’autorise pas les plugins privés ? Même un dépôt avec un jeton reste un plugin public sur la plateforme où il est hébergé (GitHub, GitLab, etc.).
Un dépôt privé GitHub/GitLab reste privé. Le jeton agit simplement comme un mot de passe permettant au serveur de le cloner. Personne d’autre ne peut voir le code. Il reste privé.
Utilisez une configuration de développement locale pour tester les plugins. dev-install
Sinon, vous devez exécuter une reconstruction complète de la production à chaque modification des plugins, ce qui est une perte de temps, d’autant plus que l’équipe a récemment réduit le temps de construction des versions de développement à quelques secondes.
Clonez les plugins dans ~/code ou un équivalent, puis vous pourrez les lier symboliquement depuis le répertoire des plugins.