Tutorial anterior: Developing Discourse Plugins - Part 3 - Add custom site settings
Agora que seu plugin está ficando mais sofisticado, é hora de aprimorar também a forma como você o desenvolve.
Sugerimos que você use o git para controle de versão do seu plugin. Também recomendamos que utilize o github para compartilhar seu código com outras pessoas.
Criando seu repositório Git
Depois de criar sua conta no Github, visite este link para criar um novo repositório. Você pode chamá-lo como quiser, mas geralmente algo que comece com discourse- é uma boa escolha. Certifique-se de que o repositório seja público. Veja como minha tela ficou:
Criando sua pasta de trabalho local
Neste ponto, crio um diretório local no meu computador para armazenar o plugin. Geralmente coloco o meu em ~/code, mas você pode colocá-lo onde quiser no seu computador:
mkdir -p ~/code/discourse-plugin-test
cd ~/code/discourse-plugin-test
Agora, vamos seguir as instruções do github para inicializar o repositório com um README:
echo "# discourse-plugin-test" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:eviltrout/discourse-plugin-test.git
git push -u origin main
Por fim, crie um arquivo plugin.rb para o seu plugin, conforme explicado na parte 1. Para este exemplo, criei apenas um dummy:
plugin.rb
# name: discourse-plugin-test
# about: Mostra como configurar o Git
# version: 0.0.1
# authors: Robin Ward
Criando um link simbólico
Como você seguiu nosso guia de desenvolvedor, deve ter uma cópia do Discourse verificada em algum lugar do seu computador. Eu verifiquei a minha em ~/code/discourse, mas, novamente, você poderia tê-la colocado em qualquer lugar; isso ainda funcionará se você ajustar o código a seguir de acordo:
cd ~/code/discourse/plugins
ln -s ~/code/discourse-plugin-test .
O código acima criou um link simbólico entre o código do Discourse e a pasta do seu plugin. Reinicie seu servidor de desenvolvimento e você verá que seu plugin está funcionando!
A beleza dessa configuração é que você pode simplesmente fazer o commit do seu plugin no github e não se preocupar com o código base do Discourse em que ele está inserido. Suas alterações ficarão isoladas ao próprio plugin. Se precisar editar o código do Discourse, ainda poderá fazê-lo, mas o git rastreará as alterações separadamente!
Recomendo usar uma janela de editor para o código do seu plugin e outra para o próprio Discourse. É mais fácil quando você os considera como duas coisas distintas.
Mais na série
Parte 1: Noções básicas de plugins
Parte 2: Saídas de plugins
Parte 3: Configurações do site
Parte 4: Este tópico
Parte 5: Interfaces de administração
Parte 6: Testes de aceitação
Parte 7: Publique seu plugin
Este documento está sob controle de versão — sugira alterações no github.



