Cycle de vie du développement avec hébergement Discourse

Bonjour !
Je suis à la recherche d’un système de forum tiers pour mon client (une organisation à but non lucratif) et il semble que Discourse soit le favori jusqu’à présent.

En lisant https://meta.discourse.org/, je n’ai pas eu une compréhension claire du cycle de développement.

  1. Aurai-je un accès distant au serveur si je choisis l’hébergement Discourse ?
  2. Dois-je disposer d’une instance de développement de Discourse sur “localhost” pour tester des plugins et d’autres personnalisations (thèmes, styles) ? Ou puis-je essayer/tester directement des modifications sur “Production” (ce que je n’aime pas) ?
  3. Existe-t-il un moyen de journaliser les personnalisations (application de styles et de plugins) ? Par exemple, exécuter des scripts dans l’environnement de développement, puis, si tout est bon, les déployer en Production (hébergement Discourse ou auto-hébergé). “Livraison continue” ici.
  4. Si mes modifications personnalisées ne sont pas réussies, comment puis-je les annuler ? Je suppose que pour un test de plugin, je peux simplement le “désactiver” ?

Toute aide serait appréciée.

1 « J'aime »

Si vous êtes hébergé par CDCK ou Communiteq (anciennement DiscourseHosting), à ma connaissance, c’est 100 % géré. Vous n’aurez pas accès SSH ni rien de tel. Sauf si vous êtes sur un plan entreprise, les options de plugins sont fixes et tout est testé pour être compatible par les équipes respectives.

Vous pouvez installer des thèmes et des composants de thème sur ces options d’hébergement sans restriction. Une instance de test est toujours recommandée, bien sûr.

Je ne connais aucune option de déploiement continu (CD) avec l’hébergement CDCK ici ; peut-être qu’un membre de l’équipe pourra me corriger si je me trompe. Au pire, vous apporteriez ces modifications au site en direct de la même manière que vous les avez testées ailleurs.

Vous ne pouvez pas installer de plugins supplémentaires sur les options d’hébergement de base ; elles incluent un certain nombre des plugins les plus courants et bien pris en charge par défaut. Vous devrez soit être sur leur niveau entreprise, soit auto-héberger. Les plugins doivent être intégrés dans le fichier app.yml et le site doit être reconstruit pour les inclure. Pour les désactiver, vous commentez la ligne correspondante et lancez une nouvelle reconstruction. Les thèmes et les composants de thème peuvent être ajoutés et supprimés sans affecter la disponibilité du site ni l’accès des utilisateurs.

9 « J'aime »

Je vais intervenir ici pour confirmer que tout ce que Stephen a publié est correct.

Sur nos sites hébergés, vous avez un accès complet à l’API Discourse, mais vous n’avez pas accès SSH au serveur. Les plugins personnalisés ne peuvent pas être installés sur nos offres Standard ou Business, mais les plugins que vous développez peuvent être installés sur les offres Enterprise après validation par notre équipe. Pour consulter les plugins préinstallés sur chacun de nos plans, rendez-vous sur Plugin directory | Discourse - Civilized Discussion.

Les thèmes personnalisés et les composants de thème peuvent être installés sur n’importe lequel de nos plans.

Le moyen le plus simple de comprendre comment fonctionne notre hébergement est de souscrire à un essai gratuit sur l’offre Standard ou Business à partir d’ici : Discourse pricing | Discourse - Civilized Discussion. Nous ne facturons jamais automatiquement les sites en période d’essai, ce qui constitue un moyen sans risque de découvrir à la fois Discourse et notre service d’hébergement.

8 « J'aime »

API Discourse

1 « J'aime »

L’autre réponse à votre question est que si vous voulez (devez) faire ces choses, vous devrez alors vous auto-héberger.

Mais, vous n’avez probablement besoin d’aucun plugin. La plupart des personnalisations peuvent être réalisées avec les composants de thème.

Toutes les modifications administratives sont consignées dans l’interface utilisateur, vous permettant ainsi de voir qui a changé quoi et quand.

Si vous souhaitiez développer des plugins personnalisés, j’ai mis au point un système CI/CD qui vous permet de verrouiller Discourse et les plugins sur des commits spécifiques et d’apporter des modifications à un site de préproduction et un site de production en poussant un inventaire vers GitHub. Malheureusement, le client a abandonné le projet juste après que je l’ai configuré.

7 « J'aime »