O Slack é uma ferramenta fantástica, se fazendo cada vez mais presente no dia a dia de empresas de todos os portes, seu plano gratuito é muito bom, já atentendo atender a demanda da grande maioria de empresas de pequeno porte, porém ele tem uma limitação bem chata, ao atingir o limite de armazenamento, hoje quando escrevo esse artigo 5GB, você precisa remover arquivo a arquivo em um processo extremamente manual e desestimulante.
Nesse artigo pretendo mostrar um utilitário open source que desenvolvi e que irá lhe permitir executar esse processo de forma automática apenas passando o período que deseja remover os arquivos.
O processo de remoção manual do slack é irritante, e como desenvolvedor que sou, detestaria fazer um processo manual como esse, ainda mais se tenho outra saída melhor para isso, assim resolvi escrever um utilitário, e posteriormente esse artigo, para demonstrar como podemos fazer esse processo em poucos passos, o que poderá te poupar várias horas limpando arquivos de seu workspace no slack.
Para iniciarmos vamos precisar criar um token legacy no endereço https://api.slack.com/custom-integrations/legacy-tokens, bastando para isso gerar um novo token, caso já não o tenha gerado um até então. É esse token que irá lhe permitir executar essas ações em seu workspace.
Para executar o utilitário vai precisar ter instalado em sua maquina uma versão recente do node, se já não possui ele por ai, a instalação é bem simples e encontrara todos os passos necessários em https://nodejs.org/, por aqui estou usando a versão 10, a LTS no momento que escrevo o artigo, mas provavelmente não vai ter problemas para rodar esse utilitário em versões mais recentes.
Com o node instalado vamos instalar nosso utilitário:
1 | npm install slack-remove-files -g |
Após o processo é só executar o comando:
1 | slack-remove-files 12 months {SEU_TOKEN_AQUI} |
Nesse exemplo, irá remover todos os arquivos anteriores a 12 meses, mas não se limite ao exemplo, variando o valor e unidade pode personalizar como quiser e lhe atender melhor, alguns outros exemplos de combinação:
1 | slack-remove-files 60 days {SEU_TOKEN_AQUI} |
Fique a vontade para criar sua combinação, antes de executar ele irá lhe solicitar uma confirmação mostrando a data apurada como pode ser visto abaixo:
1 | All files dated less than will 2017-08-03T16:57:04.626Z be removed. |
Apenas se confirmar é esperado que ele busque junto ao slack todos os arquivos e remova um a um, apresentando um relatório dos arquivos removidos como mostrado na imagem abaixo:
O Código completo para desse utilitário pode ser encontrado em: https://github.com/meneguite/slack-remove-files
Espero que lhe seja útil! Caso tenha alguma dúvida sobre o uso, pode deixar por aqui, ou o que seria ainda melhor, usando as issues do github.