Proposta para lidar com pouco espaço em disco durante uma atualização do Discourse

Quando uma atualização do Discourse falha devido a pouco espaço em disco, a interface do usuário (UI) infelizmente quebra com um erro 500. Eu então tenho que executar ./launcher rebuild app a partir do terminal, o que baixa todas as imagens do Docker primeiro, pausa para me avisar que há menos de 5GB de espaço disponível, espera que eu pressione ‘s’ (ou ‘y’ dependendo da configuração), e então leva algum tempo para limpar as imagens antigas. Depois, tenho que executar o comando de reconstrução novamente, o que começa por baixar novamente todas as imagens do Docker.

Este processo tem muitas etapas, algumas das quais exigem a verificação manual dos logs, e todas elas somam mais tempo de inatividade para o fórum. Felizmente, esse problema não acontece com frequência comigo. Embora, eu ainda fique nervoso quando o fórum está fora do ar :anxious_face_with_sweat:

Esse tempo de inatividade parece totalmente evitável para mim. Aqui está minha melhoria proposta. Antes de atualizar, a UI da web pode perguntar ao usuário:

Você tem menos de 10 GB de espaço em disco livre. Gostaria de limpar contêineres antigos antes de atualizar?

Se o usuário aceitar, o disco é limpo primeiro, e ele é informado:

10GB de contêineres antigos limpos. Você agora tem 15GB de espaço livre em disco. Sinta-se à vontade para iniciar a atualização agora.

E agora eles podem executar com confiança a atualização do Discourse a partir da UI da Web :smiling_face_with_sunglasses:

3 curtidas