Eu administro várias instâncias do Discourse, todas auto-hospedadas. Todas elas têm backups no Amazon S3, e configurei um usuário IAM e uma Política personalizados para cada fórum, que dão acesso a apenas um Bucket S3.
Alguns dos fóruns não estão excluindo backups antigos, enquanto outros estão fazendo isso corretamente. Não parece estar relacionado às configurações do site, que são praticamente todas iguais. Eu tendo a limitar o número de backups retidos a 10-20, e o backup é feito diariamente.
As instâncias que estão se comportando mal têm o seguinte em comum:
- As credenciais da AWS funcionam bem para a criação de novos backups e a listagem dos existentes, mas geram erros de ‘acesso negado’ ao tentar excluir.
- Todas as instâncias estão na versão mais recente de testes aprovados (atualizada hoje) 3.3.0.beta5-dev.
- Elas não excluem automaticamente backups antigos, mesmo aqueles que estão muito além da idade em que deveriam ter sido excluídos.
- Elas não parecem responder a nenhuma combinação de configurações do site, por exemplo,
maximum backups,remove older backups,s3 disable cleanupou qualquer outra. - A exclusão de backups antigos na interface de administração do Discourse não funciona - há um
Aws::S3::Errors::AccessDeniednos logs. - A exclusão manual na AWS funciona (obviamente), mas é uma solução alternativa.
Estou apenas procurando entender como posso depurar isso ainda mais.
As políticas JSON para os usuários IAM são todas idênticas, exceto pelo nome do bucket. As políticas claramente funcionam para a criação e upload de novos backups.