Olá!
Estou procurando um sistema de fórum de terceiros para meu cliente (uma organização sem fins lucrativos) e parece que o Discourse é o favorito até agora.
Terei acesso remoto ao servidor se escolher a hospedagem do Discourse?
Preciso ter uma instância de desenvolvimento do Discourse em “localhost” para testar plugins e outras personalizações (temas, estilos)? Ou posso tentar/testar algumas alterações diretamente em “Produção” (não sou fã dessa ideia)?
Existe alguma maneira de registrar personalizações (aplicação de estilos e plugins)? Por exemplo: executar scripts no ambiente de desenvolvimento e, se estiver tudo certo, aplicar em Produção (hospedagem do Discourse ou auto-hospedado). “Entrega Contínua” aqui?
Se minhas alterações personalizadas não forem bem-sucedidas, como posso revertê-las? Acho que, para testar um plugin, posso simplesmente “desativá-lo”?
Se você estiver hospedado pela CDCK ou pela Communiteq (antiga DiscourseHosting), então, até onde sei, é 100% gerenciado. Você não teria acesso SSH ou algo semelhante. A menos que esteja em um plano empresarial, as opções de plugins são fixas e tudo é testado para garantir compatibilidade pelas respectivas equipes.
Você pode instalar temas e componentes de tema nessas opções de hospedagem sem restrições. Claro, uma instância de teste é sempre recomendável.
Não tenho conhecimento de nenhuma opção de CD com a hospedagem da CDCK aqui. Talvez alguém da equipe possa me corrigir se eu estiver errado. Na pior das hipóteses, você faria essas alterações no site ao vivo da mesma forma que testou em outro lugar.
Você não pode instalar plugins adicionais nas opções básicas de hospedagem; elas já incluem vários dos mais comuns e bem suportados por padrão. Você precisaria estar em um plano empresarial deles ou fazer auto-hospedagem. Os plugins precisam ser integrados ao app.yml e o site deve ser reconstruído para incorporá-los. Para desativá-los, basta comentar a linha e executar outra reconstrução. Temas e componentes de tema podem ser adicionados e removidos sem afetar o tempo de atividade ou o acesso dos usuários ao site.
Vou me manifestar aqui para confirmar que tudo o que Stephen publicou está correto.
Em nossos sites hospedados, você tem acesso total à API do Discourse, mas não tem acesso SSH ao servidor. Plugins personalizados não podem ser instalados em nossos planos Standard ou Business, mas plugins que você desenvolver podem ser instalados em sites Enterprise após serem avaliados por nossa equipe. Para ver os plugins pré-instalados em cada um de nossos planos, visite Plugin directory | Discourse - Civilized Discussion.
Temas personalizados e componentes de tema podem ser instalados em qualquer um de nossos planos.
A maneira mais fácil de entender como nossa hospedagem funciona é fazer um teste gratuito no plano Standard ou Business aqui: Discourse pricing | Discourse - Civilized Discussion. Nunca iniciamos o cobramento automático em sites de teste, então essa é uma maneira sem riscos de conhecer tanto o Discourse quanto nosso serviço de hospedagem.
A outra resposta à sua pergunta é que, se você quiser (ou precisar) fazer essas coisas, será necessário fazer o auto-hospedagem.
No entanto, você provavelmente não precisará de nenhum plugin. A maioria das personalizações pode ser feita com componentes de tema.
Todas as alterações no painel administrativo são registradas na UX, então você pode ver quem alterou o quê e quando.
Se você realmente quisesse desenvolver plugins personalizados, desenvolvi um sistema de CI/CD que permite vincular o Discourse e os plugins a commits específicos e fazer alterações em um ambiente de staging e no site de produção ao enviar um inventário para o GitHub. Infelizmente, o cliente abandonou o projeto logo após eu tê-lo configurado.