Rebranding e mudança de domínios de e-mail

Thiago Trufelli
mercos-engineering
Published in
5 min readApr 23, 2019

Spoiler: Este artigo contém informações técnicas

Recentemente aqui na Mercos passamos por um processo de rebranding. Além das mudanças em nossas cores, logos, missão e visão, também alteramos nosso nome. Para nossa infraestrutura, isso foi um alerta, pois precisamos alterar nosso domínio e isto impactaria em todos nossos serviços e ferramentas. Como por exemplo, migrar todas nossas contas de e-mail para o novo domínio, @mercos.com. Utilizamos hoje o GSuite como suite de colaboração e produtividade para todas as nossas aéreas. Dentro das diversas ferramentas da suíte do Google, está o Gmail.

Na época, possuíamos aproximadamente 130 contas de e-mails ativas, e precisávamos migrar todos os usuários no menor tempo possível, sem downtime e com a maior assertividade possível, pois teríamos apenas algumas horas após o anúncio da nova marca para realizar as mudanças.

Por mais que o processo de migrar uma conta na administração do Gmail seja relativamente simples (basta acessar a administração dos usuários, selecionar o usuário e clicar em “renomear” e em seguida, selecionar o novo domínio, conforme mostra o print)

O problema seria no processo total, pois seriam necessários migrar todas nossas 130 contas. E para isso, necessariamente, seria preciso acessar cada conta manualmente e realizar o processo individualmente. Isto tornaria o processo demorado, complexo e com alta probabilidade de cometer algum erro (sem contar ainda, que seria necessário trocar a assinatura de cada e-mail também!).

Para não passarmos por esta situação, buscamos uma maneira automatizada de realizar o processo. Porém, infelizmente, o Google não provê nenhum mecanismo nativo para isso. É fornecido acesso a sua API para realizar estas e outras funções administrativas, contudo, não teríamos tempo e nem recursos para desenvolver ferramentas para utilizar a API. Então, tendo consciência destas limitações, buscamos alguma outra maneira para tal.

Depois de várias pesquisas no Google e nos fóruns do suporte do GSuite, encontramos a ferramenta chamada GAM. O GAM é uma ferramenta de linha de comando que permite que administradores gerenciem vários aspectos de suas contas do GSuite. Ela está disponível tanto para Windows, Linux e para MacOS. O GAM é compatível com todos os planos do GSuite, exceto, o G Suite Legacy Free, pois ele possui suporte limitado a sua API, e por isso, não serão todos os comandos que funcionarão adequadamente.

Caso deseje saber maiores informações sobre o GAM, acesse a página oficial do projeto aqui!

O GAM nos permite administrar e realizar praticamente todas funcionalidades diretamente por linha de comando, sem a necessidade de acessar a interface gráfica. Assim, por exemplo, podemos criar, deletar ou modificar um usuário por uma linha de comando. O GAM é flexível ao ponto de que com a mesma linha, com pequenos ajustes que serão abordados mais além, podemos criar, deletar ou modificar a quantidade de usuários que quisermos, bastando passar um arquivo CSV como referência.

As vantagens de usar linha de comando ao invés da interface gráfica, são no ganho de velocidade, de assertividade e a flexibilidade que ele dá. Com uma única linha de comando, conseguimos alterar o domínio de todas nossas contas de uma única vez. Contudo, devido a flexibilidade ganha, é preciso do dobro de atenção e cuidado, visto que com uma única linha de comando podemos impactar várias contas.

Outra modificação realizada em nosso processo foi na criação das artes da assinaturas de e-mail. Até então, nosso setor de criação de marketing gerava um arquivo HTML com todas as assinaturas, e para coletar cada assinatura, era copiada apenas a parte desejada de cada colaborador. Agora, com o GAM, é necessário informar manualmente cada assinatura em um arquivo HTML separado. Isso não seria necessário caso nossas assinaturas fossem padronizadas para todos os colaboradores, porém, como nossas assinaturas são diferentes para cada colaborador (nome, cargo, e-mail e a foto de cada um) foi preciso realizar esta alteração no processo.

Com o GAM corretamente instalado, podemos iniciar a utilização dele. Para modificarmos o domínio de um usuário, utilizamos o seguinte comando:

gam update user email@meuspedidos.com.br email email@mercos.com

Informamos qual é o usuário que desejamos alterar e em seguida, o novo endereço de e-mail (com o novo domínio).

Este comando altera apenas de um único usuário, poderíamos utilizar scripts para realizar esta tarefa para todas nossas contas. Contudo, nativamente o GAM fornece outro mecanismo para tal fim. Podemos trabalhar com arquivos CSV e informar todos os usuários e as respectivas alterações neles, bastando passar o arquivo CSV como parâmetro. Abaixo demonstro um CSV de exemplo, chamado de lista.csv.

DominioAntigo,DominioNovo
Email_1@meuspedidos.com.br,Email_1@mercos.com
Email_2@meuspedidos.com.br,Email_2@mercos.com

O comando para se utilizar o arquivo CSV é o abaixo:

gam csv lista.csv gam update user ~DominioAntigo email ~DominioNovo

Como observa-se, o comando continua semelhante, apenas passamos o arquivo CSV como parâmetro e também informamos as variáveis atribuídas no CSV para serem usadas no comando. Desta maneira, o GAM percorrerá o arquivo CSV e executará o comando informado com as variáveis linha a linha.

Para alterar as assinaturas de e-mail, utilizamos o seguinte comando:

gam user email@mercos.com signature file assinatura.html html

Informamos qual é o usuário que desejamos alterar a assinatura e em seguida, passamos o arquivo da assinatura em HTML e por fim, especificamos que se trata de uma assinatura em HTML.

E caso desejarmos aplicar para múltiplas contas de uma vez, podemos utilizar o mesmo mecanismo do CSV, utilizado anteriormente. Abaixo demonstro um CSV de exemplo, chamado de lista.csv.

Email,Assinatura
Email_1@mercos.com,Email_1.html
Email_2@mercos.com,Email_2.html

E o comando:

gam csv lista.csv gam update user ~DominioAntigo email ~DominioNovo

Como ocorreu na alteração do domínio, o comando continua semelhante, apenas passamos o arquivo CSV como parâmetro e também, informamos as variáveis atribuídas no CSV para serem usadas no comando. Desta maneira, o GAM percorrerá o arquivo CSV e executará o comando informado com as variáveis linha a linha.

Com o GAM, conseguimos migrar em poucos instantes todas nossas contas de E-mail (além de ajustar suas assinaturas também) no nosso rebranding, sem qualquer downtime ou problemas para nossos usuários. Atualmente temos utilizado a ferramenta para nossas tarefas diárias de administração do GSuite e é nítido as vantagens em sua utilização. A ideia deste artigo veio no momento que busquei estas informações, mas não encontrei nada relacionado, sendo necessário buscar todo conhecimento diretamente da documentação fornecida da ferramenta.

--

--