Qual tecnologia e software de integração contínua você recomendaria para uso com jogos?
Também existem bibliotecas de tecnologia de construção ou idiomas específicos que você recomendaria usar quando uma parte personalizada do pipeline de ativos do jogo precisar ser codificada internamente?
Existem bons recursos para demonstrar o caso comercial do uso de sistemas de compilação contínua e automatizada para jogos?
Respostas:
Hudson é de longe o melhor aplicativo de integração contínua de todos os tempos.
É gratuito (de código aberto, eu acho) e vem empacotado em um único arquivo .war, ou você pode optar pelo pacote autônomo com um pequeno servidor de aplicativos Tomcat (eu acho) - de qualquer maneira, instalação super fácil.
A interface do usuário é incrível. A lista de plugins continua e continua (será compatível com qualquer sistema que você usar - rastreadores de bugs, sistemas de controle de origem, etc.). Você pode ter várias contas de usuário com permissões diferentes. Adicionar um projeto, ajustar configurações ou visualizar execuções anteriores é muito fácil de fazer através do navegador.
Você realmente só tem que tentar. Não se preocupe em configurar arquivos de texto como o Cruise Control exige; Hudson é uma diferença de noite e dia disso.
fonte
O CruiseControl.NET é uma boa opção que usamos internamente algumas vezes; é gratuito e vem com um aplicativo de desktop que mostra claramente quando as pessoas estão quebrando a compilação.
Há também o Pulse , que é extremamente bem-caracterizado e possui uma interface da web sofisticada. No entanto, ele tem um custo, pois você precisa de uma licença para executá-lo por servidor de compilação.
Usamos nossos servidores de IC para criar nosso código sempre que alguém faz uma confirmação, que é o caso de uso padrão - mas todos os nossos recursos de jogo são configurados para serem criados por nossos servidores de CI e estamos prestes a criar compilações diárias de disco , para que nossa equipe de controle de qualidade tenha uma versão ISO pronta para teste todas as manhãs.
Isso economiza muito tempo do programador (invariavelmente, é sempre um programador que faz essas coisas) ao ter que criar manualmente códigos / ativos / discos o tempo todo.
fonte
Cruzeiro (agora renomeado Go)
http://www.thoughtworks-studios.com/go-agile-release-management
O Cruise é possivelmente o melhor IC que eu usei porque compreende um pipeline de liberação, que permite configurar um conjunto de regras para mover uma construção em pacote específica de estágio para estágio e permite que as pessoas capturem artefatos de construção a qualquer momento. DESCANSAR. Ele também suporta a distribuição de trabalhos entre vários agentes em sua versão Pro.
Dito isto, o Cruise é DEFINIDO para desenvolvedores corporativos e, portanto, é caro. Eu pretendo conversar com eles sobre como alterar seu plano de preços para colocar as empresas de jogos em prática, mas até agora, sem sorte.
fonte
Buildbot
Conheço vários estúdios de jogos e efeitos visuais que usam o Buildbot .
Durante o ano passado, trabalhei com nosso sistema de construção para implementar uma estratégia de integração contínua para o estúdio. Somos um estúdio multiplataforma (win, lin, osx) com o qual o Buildbot pode lidar bem. Sou capaz de disparar escravos em várias caixas, executar e relatar de volta ao mestre para que ele possa exibir os resultados. Eu posso ver os logs de execução da caixa do mestre sempre que quiser. Eu posso me conectar com outros escravos, então, quando um escravo termina, dispara um sinal para outros escravos começarem.
Até agora, eu realmente gostei de usá-lo e ainda não sei se são recursos absolutos. Eu acho que a maior dor será configurada. Eu não estava envolvido em montar o estúdio no meu estúdio, mas parecia uma dor.
fonte