Integração do TeamCity com o VCS GitHub

O TeamCity oferece integração completa com o GitHub.com e o GitHub Enterprise, permitindo que você verifique a qualidade de cada commit ao mesmo tempo em que mantém um workflow de desenvolvimento simplificado. Esteja você trabalhando de maneira privada em branches de recursos ou convidando colaboradores da comunidade para fazer o forking do seu repositório e o upstream de suas alterações, você pode usar o TeamCity para fazer o build e teste de novos códigos automaticamente.

Adaptado ao seu workflow

Como uma poderosa plataforma de CI/CD, o TeamCity tem flexibilidade para se adaptar aos seus processos. Esteja você trabalhando com branches de recursos ou marcando candidatos a releases, hospedando tudo no GitHub ou dividido em vários sistemas de controle de versão, é possível configurar pipelines automatizados que atendem às suas necessidades.

Leia sobre a personalização do TeamCity abaixo.

Todas as informações de que você precisa, exatamente onde você precisa delas

Verificar o status das suas alterações de código mais recentes deveria ser simples. Ao integrar sua plataforma de CI/CD com o GitHub, você poderá visualizar detalhes dos commits e issues relacionados ao GitHub no TeamCity ou verificar o status do build e resultados de testes no GitHub. A escolha é sua.

Leia sobre os recursos de relatórios do TeamCity abaixo.

Insights de teste acionáveis

Issues das etapas de build, teste e implantação podem ser inevitáveis, mas longos atrasos antes que o pipeline possa ser reiniciado não são. Quando ocorrem falhas, o TeamCity fornece as informações necessárias para começar a depurar o issue, para que você possa imediatamente começar a trabalhar na sua correção.

Leia sobre a inteligência de testes do TeamCity abaixo.

Aumente sua produtividade com CI/CD avançado para o GitHub

Não importa o tamanho do seu projeto, verificar suas alterações enquanto você trabalha torna a experiência do desenvolvedor mais produtiva e agradável. Quanto menor o ciclo de feedback, melhor, e é por isso que um processo automatizado de CI/CD é um componente essencial de qualquer projeto de desenvolvimento de software.

O TeamCity acelera o processo de desenvolvimento de várias maneiras:

  • Ao otimizar o pipeline e reutilizar artefatos de builds anteriores, ele executa apenas as etapas mínimas necessárias nos pipelines e garante que você não perca tempo recompilando tudo do zero.
  • A paralelização de testes inteligente permite reduzir o tempo necessário para executar testes automatizados.
  • Relatórios e notificações em tempo real permitem que você fique sabendo de problemas no seu código sem precisar esperar que o build termine.
  • Análises de falha inteligentes ajudam você a descobrir o autor e exatamente qual foi o commit que quebrou o build rapidamente, para que você possa acelerar suas iterações.
  • O histórico de teste oferece uma compreensão de nível superior de locais problemáticos no seu projeto e permite que você analise tendências e identifique comportamentos incomuns no seu código.

Com a flexibilidade de configurar pipelines personalizados para complementar seu workflow de desenvolvimento de software, o TeamCity permite que equipes, indivíduos e projetos comunitários implementem as melhores práticas de DevOps e colham os benefícios da integração e da entrega contínuas automatizadas.

Pronto para acelerar seu desenvolvimento baseado no GitHub?

Nossa integração de CI/CD para o GitHub está disponível tanto nas versões locais do TeamCity como nas versões na nuvem, oferecendo a você a flexibilidade de gerenciar a localização dos seus agentes de build ou de descarregar considerações de infraestrutura e concentrar-se na criação de um excelente software.

Principais recursos de integração com o GitHub

Autenticação perfeita

Tanto o TeamCity On-Premises quanto o TeamCity Cloud oferecem controle total sobre a autenticação no GitHub. Você pode criar automaticamente uma nova conta quando uma pessoa entrar no GitHub, restringir o acesso a membros da sua organização, gerenciar as permissões de usuários do TeamCity independentemente das funções do GitHub e muito mais.

Suporte nativo a solicitações pull

O TeamCity detecta quando uma solicitação pull do GitHub é aberta e pode acionar verificações de CI/CD com base em vários critérios:

  • Nomes de branches de origem e destino.
  • Autor da solicitação pull e sua função na sua organização.
  • Alterações em arquivos e diretórios específicos.
  • Texto da mensagem de commit.

É possível visualizar o progresso e os resultados das verificações automatizadas dentro da interface do usuário do GitHub e fazer com que o TeamCity faça merge das solicitações pull automaticamente quando todas as verificações forem concluídas com sucesso.

Relatórios de status

O TeamCity fornece feedback em todos os lugares onde você espera recebê-lo. Dentro da interface do usuário do TeamCity, é possível ver atualizações de progresso dos builts, testes e implantações exibidas em tempo real. Ele também envia a respectiva informação ao GitHub, permitindo que você sempre saiba o estado do seu commit ou solicitação pull.

Para fornecer notificações ainda mais rápidas, o TeamCity oferece suporte integrado para o Slack, IDE, navegador e alertas de e-mail, enquanto os plug-ins do TeamCity fornecem uma série de opções adicionais, desde o Telegram até o Discord.

Automação de pipelines de CI/CD de qualquer complexidade e escala

Personalização e controle incomparáveis

O TeamCity foi projetado para se integrar facilmente ao workflow de desenvolvimento de cada equipe e torná-lo mais eficiente. Branches de recursos, branches de lançamento, solicitações pull, monorepositórios ou vários VCSs de tipos diferentes: seja qual for o processo que você usa para lançar novos recursos, nossa solução pode deixá-lo mais rápido e agradável.

O TeamCity oferece suporte a todas as linguagens de programação, funciona em todas as plataformas e se integra a todas as frameworks populares de build e teste. Ele permite que você automatize seu CI/CD com o uso de múltiplos gatilhos de diferentes tipos e personalize dinamicamente as etapas de build, teste e implantação com base nos parâmetros definidos pelos gatilhos ou definidos em qualquer ponto dentro do próprio pipeline.

Após a conclusão do build, o TeamCity pode automaticamente fazer o merge das alterações no branch alvo, registrar números de build como tags do Git, atualizar o status do commit ou da solicitação pull no GitHub, publicar artefatos de build num registro de containers e muito mais. Não importa no que você esteja trabalhando, o TeamCity pode construir!

Insights de teste acionáveis

O TeamCity entende seus testes como nenhuma outra ferramenta de CI/CD:

  • Se um teste falhar, o TeamCity identificará automaticamente os commits que originaram a falha e o usuário do GitHub responsável.
  • É possível visualizar detalhes de testes com falha, incluindo logs de build, rastreamentos de pilha, artefatos de build e capturas de tela, permitindo que você comece a depurar mais cedo.
  • O histórico de testes ajuda a identificar testes inconsistentes, ver que tipo de alterações geralmente interrompem o processo de build, detectar diferenças na duração dos testes e encontrar o momento exato em que um teste específico começou a falhar.
  • É possível atribuir a investigação de testes não confiáveis a indivíduos e silenciar a falha enquanto isso.
  • A cobertura de código e a análise estática ajudam você a ver possíveis problemas com o seu código.

O melhor de tudo é que esses recursos estão disponíveis mesmo que seus testes sejam executados no Docker.

Perguntas frequentes: Integração contínua com o TeamCity e o GitHub

O TeamCity pode ajudar na migração para o GitHub a partir de outros VCSs?

O TeamCity não é a ferramenta certa para fazer a migração em si, mas é capaz de fornecer uma experiência de CI/CD ininterrupta durante a migração. Ao adicionar todos os repositórios ao VCS Roots do TeamCity, você disponibilizará todo o código para o processo de build, independentemente de ele ainda estar no antigo VCS, no novo VCS ou em algum lugar entre eles.

O TeamCity é melhor que o GitHub?

O TeamCity e o GitHub servem a propósitos diferentes, então não é certo dizer que um é melhor que o outro. O TeamCity está focado no pipeline de CI/CD e tem muito mais recursos do que o GitHub Actions, mas não tem os recursos de controle de versão, revisão de código ou gerenciamento de projetos do GitHub.

A integração do TeamCity com o GitHub é um recurso gratuito?

Sim, a integração do TeamCity com o GitHub é um recurso gratuito. A versão on-premises gratuita, o TeamCity Professional, pode ser usada para fins comerciais sem limitações.

Posso testar meu código no TeamCity sem precisar fazer o commit dele no GitHub?

Sim, é possível testar o código no TeamCity sem precisar fazer o commit dele para ao GitHub. Para isso, você pode criar um patch do Git, carregá-lo no TeamCity e, em seguida, executar um build pessoal ou usar um plug-in de IDE.