Para ser totalmente transparente, não fiz nenhuma manutenção manual na nossa instalação do Discourse auto-hospedada há muito, muito tempo, e alguém configurou originalmente.
Precisei alterar minhas credenciais SMTP, pois o SendGrid está exigindo a migração da autenticação básica para chaves de API.
Encontrei este documento: Provedores de e-mail recomendados para o Discourse
Que diz:
Para alterar o serviço de e-mail atual, execute também o
./discourse-setup(isso deixará o fórum offline por alguns minutos enquanto ele é recriado).
Executei esse comando, respondi às perguntas conforme o esperado, e isso gerou cerca de 2.000 linhas de saída no stdout, terminando com:
Upgrade Complete
----------------
Optimizer statistics are not transferred by pg_upgrade so,
once you start the new server, consider running:
./analyze_new_cluster.sh
Running this script will delete the old cluster's data files:
./delete_old_cluster.sh
-------------------------------------------------------------------------------------
UPGRADE OF POSTGRES COMPLETE
Old 10 database is stored at /shared/postgres_data_old
To complete the upgrade, rebuild again using:
./launcher rebuild app
-------------------------------------------------------------------------------------
cfd4df26701b4b4cd4a4202f30a9c8165a1ba609c921bffc25f250f52fee6cbe
Agora, eu não esperava que isso “atualizasse” nada. Eu só queria alterar as credenciais SMTP. Mas o site não voltou automaticamente, então fiz o que o texto diz “para concluir a atualização” e executei:
./launcher rebuild app
Isso disparou outras ~8.000 linhas de saída no stdout. O site finalmente voltou, MAS não parece o mesmo:
- Meu logotipo estava faltando, substituído pelo logotipo “Discourse”.
- As imagens de avatar dos usuários estavam quebradas. Eventualmente, elas voltaram a funcionar.
- Imagens nas postagens e logotipos de categorias estavam quebradas. Essas ainda não estão funcionando. Procurei por imagens com nomes de arquivo correspondentes no diretório
./discourse/shareE no nosso bucket S3 (onde a URL espera encontrá-las), mas elas não existem. - Postagens da minha categoria “suporte”, que eu havia ocultado da página “mais recentes”, agora estão visíveis novamente nessa página.
- Minha categoria “suporte” não está mais visível na página “categorias”.
- A página “categorias” agora tem duas colunas, com categorias à esquerda e “mais recentes” à direita. Acredito que antes era apenas uma lista de categorias.
- A cor do
+no meu botão+ Novo Tópicomudou de branco para cinza.
Neste ponto, suspeito que alguma configuração foi perdida, mas todas as minhas postagens estão intactas. Então, suspeito que o Discourse se atualizou (não sei de qual versão, provavelmente muitas versões), e algumas configurações padrão subjacentes, CSS, modelos, etc., mudaram, causando os problemas listados acima.
Ao visualizar o código-fonte, vejo que a versão agora é 2.6.0.beta6, que aparentemente foi lançada há apenas 7 dias.
Então, minhas perguntas são:
- É normal ter que atualizar completamente o software assim para aplicar uma simples alteração de configuração, como credenciais SMTP?
- Como posso alterar configurações ou aplicar atualizações de segurança sem atualizar todo o software?
- Onde estão minhas imagens, ou por que sua URL mudou de alguma forma, tornando-as inacessíveis?
- Existe alguma maneira de reverter, sem perder as novas postagens desde que tudo isso aconteceu? Eu nem sei em qual versão estávamos antes. Tenho backups do Discourse no S3 (apenas um dump SQL compactado em gzip).
- Preciso apenas revisar todas as configurações e personalizações manualmente para corrigir coisas como a cor do
+ Novo Tópicoe a categoria “suporte” oculta/visível?
Eu achava que estávamos mantendo snapshots EBS do nosso volume EC2 onde o Discourse está hospedado, mas isso não era verdade. Desde então, ativei os snapshots para que possamos reverter dessa forma no futuro, se necessário.
Obrigado.