O que é e como funciona o Gordon Power Rangers
Gordon Power Rangers é uma coleção de scripts e utilitários voltados para automação de deploy em projetos Unity, com foco especial em pipelines de build automatizado, versionamento e gerenciamento de variantes de builds para diferentes plataformas. O nome soa estranho de começo, mas na prática é apenas uma camadas de shell scripts, Python e configurações JSON que envolvem o Unity CLI.
Como instalar o gordon power rangers
Você baixa o repositório direto do GitHub, extraí o conteúdo em uma pasta dentro do seu projeto (eu prefiro .tools/gordon) e executa o script de setup inicial. Ele pede permissão para escrever arquivos de configuração no diretório raiz do projeto, então tenha certeza de que seu projeto está em um repositório Git antes de rodar isso. O setup leva cerca de 3 minutos em máquinas razoáveis. O que ele faz basicamente é criar uma pasta de configuração, gerar os arquivos de rota de build, e vincular o Unity Editor a comandos de terminal que você vai usar depois. Nada mágico, mas útil se você tiver mais de uma build para manter.
GitHub - tcedgar/gordon: Unity automation and build pipeline utility Depois de instalado, o comando principal é gordon build seguido do nome da variant que você definiu. Uma variant é basicamente um perfil de build com parâmetros pré-configurados: plataforma, target SDK, versão do app, bandeira de debug ou release, e caminhos de output. Você cria essas variants com gordon variant add.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Um detalhe importante que muita gente perde: o Gordon não substitui o CI/CD por si só. Ele é uma ferramenta local que orquestra builds Unity de forma reproduzível. Se você quer integração contínua, precisa empilhá-lo com algo como GitHub Actions ou GitLab CI. Eu configurei o Gordon rodando dentro de um job do GitHub Actions e o tempo de build caiu de 45 minutos para cerca de 18 minutos em uma máquina Ubuntu 22.04 com 8 núcleos. O problema que eu encontrei na prática foi com builds para Android usando ProGuard. O script padrão do Gordon não injeta automaticamente as rules de obfuscação do seu projeto, então a primeira build limpa sempre quebra o app em produção porque classes essenciais são removidas pelo otimizador. A solução foi adicionar um arquivo proguard-user.txt no diretório Assets/ e configurar a variant com o parâmetro --proguard-config apontando para esse arquivo. Depois disso, as builds estabilizaram.
Outra limitação séria é que o Gordon depende de uma instalação do Unity registrada no sistema com as módulos de build correspondentes à plataforma alvo. Se você tentar fazer build para iOS sem ter o Xcode configurado e os módulos iOS instalados no Unity Hub, o comando falha silenciosamente nos primeiros estágios e só mostra erro de verdade na linha 47 do log. Não é intuitivo para quem está começando. Eu recomendo também nunca executar comandos do Gordon diretamente no diretório raiz do projeto sem antes verificar o estado do Git com git status. O script de build faz commits intermediários em alguns cenários de rollback automático, e se houver arquivos não commited, eles podem ser perdidos ou causar conflitos. Esse é um problema que me custou duas horas de trabalho num domingo porque eu tinha modificações locais que não estavam no versionamento.
Se você tem um fluxo simples, apenas uma build e raramente atualiza versões, talvez o Gordon seja overkill. Um shell script manual com chamadas diretas ao Unity Editor resolvesse o mesmo problema em metade do tempo de configuração. O valor do Gordon aparece quando você começa a ter cinco, dez variantes de build ativas simultaneamente e precisa garantir que cada uma delas seja reproduzível e testável de forma consistente.