Pular para o conteúdo
Latchkey
Comece grátis
Menu da documentação

Migre dos runners hospedados pelo GitHub

O guia completo de migração: o que realmente muda, os três caminhos de migração, o mapeamento exato de rótulos que a ferramenta Migrate Runners aplica, o que os PRs contêm, verificação e rollback.

Migrar para os runners do Latchkey é uma mudança de roteamento, não uma reescrita. O rótulo runs-on: é a única coisa que decide qual runner pega um job, então é a única coisa que uma migração toca. Todo o resto continua funcionando exatamente como antes: as actions que você chama, os segredos que o GitHub injeta, seus environments e regras de proteção, e os caches do lado do GitHub. E os rótulos hospedados pelo GitHub continuam funcionando lado a lado com os rótulos latchkey-*, então nada força uma virada completa.

$0.0025
por minuto
preço inicial, até 70% abaixo do preço de tabela dos hospedados pelo GitHub
~10s
início a frio
30-60s é o típico para os hospedados pelo GitHub
1 linha
de YAML por job
o rótulo runs-on: é tudo o que muda

O que muda e o que continua funcionando#

O que muda

  • O rótulo runs-on: de cada job que você migra

O que continua funcionando sem mudanças

  • Actions do Marketplace e personalizadas
  • Segredos de repositório, de environment e de organização
  • Environments e suas regras de proteção
  • Caches armazenados do lado do GitHub, incluindo actions/cache

Antes de começar#

Pré-requisitos

Três formas de migrar#

Os três caminhos se compõem: a maioria das equipes edita um workflow à mão como piloto, migra em massa com a ferramenta e recorre ao AI Scan no punhado de repositórios que merecem uma imagem própria.

CaminhoMelhor para
Ferramenta Migrate RunnersMigração em massa: até 20 repositórios monitorados por passagem, um PR revisável para cada
Editar runs-on: à mãoUm único workflow, um job piloto ou rótulos que a ferramenta não reconhece
AI ScanRepositórios que merecem uma imagem personalizada sob medida em vez de um preset

Caminho 1: a ferramenta Migrate Runners#

O modal Migrate runners
O modal Migrate runners: escolha até 20 repos monitorados e abra um PR de migração por repositório.

A ferramenta tem dois pontos de entrada, e ambos abrem o mesmo modal: o item Migrate Runners na barra lateral do dashboard e o CTA no rodapé do cartão Runner Types na página de Runners. Abrir PRs de migração requer um papel de owner ou admin.

01Escolha repositóriosAté 20 repos monitorados por passagem, acompanhados pelo contador de N/20 selecionados
02Abra PRs de migraçãoUm clique em Open migration PRs; o Latchkey abre um pull request por repositório
03Revise e faça merge"Opened N pull requests. Merge each on your schedule."

Nada em um repositório muda até sua equipe fazer merge do pull request dele. Se um repositório já tiver um PR de migração aberto, a ferramenta o vincula em vez de abrir um duplicado; se não sobrar nada para trocar, ela mostra um estado Nothing to migrate. Com mais de 20 repositórios para mover, migre em passagens.

O mapeamento exato que a ferramenta aplica#

No seu workflowO que o PR faz
ubuntu-latest, ubuntu-24.04, ubuntu-22.04Trocado para latchkey-small, o tamanho de menor custo
Outras especificações de tamanho LinuxTrocadas para o menor tamanho do Latchkey que atenda à sua CPU e memória
Jobs Windows e macOSDeixados intocados
Rótulos self-hosted que a ferramenta não reconheceDeixados intocados
Qualquer linha contendo uma expressão ${{ }}, como ${{ matrix.os }}Deixada intocada

As linhas intocadas são deliberadas: jobs que a ferramenta não consegue rotear com confiança continuam rodando exatamente onde rodam hoje, então você pode migrar sua frota Linux agora e deixar workflows de SO misto intactos com segurança. Qualquer coisa que a ferramenta pule ainda pode ser movida à mão quando você estiver pronto.

O que cada pull request contém#

Cada PR reescreve as linhas runs-on: e nada mais; como o próprio corpo do PR coloca, "Only runs-on: lines were touched. Every other line in each file is byte-identical." A única exceção: quando a migração também injeta passos de cache do Latchkey, esses passos são as únicas adições além das linhas runs-on, e o corpo diz isso. Uma tabela de mapeamento antes e depois para cada arquivo mostra exatamente o que mudou, então a revisão leva minutos, não dias.

Caminho 2: edite um único workflow à mão#

Para um workflow, a mudança é uma linha por job, e ambas as formas de rótulo roteiam de forma idêntica:

yaml
jobs:
  test:
    runs-on: latchkey-small
yaml
jobs:
  test:
    runs-on: [self-hosted, latchkey-small]

A versão passo a passo deste caminho, incluindo verificar a primeira execução e escolher um tamanho, é Execute seu primeiro job.

Caminho 3: AI Scan, para repos que merecem uma imagem própria#

Alguns repositórios valem mais do que uma troca de rótulo. O AI Scan lê os workflows que um repositório realmente executa e propõe uma configuração de runner personalizada com um formato sob medida e uma imagem que pré-instala a cadeia de ferramentas do repo, então os jobs pulam seus passos de setup por completo. Se isso soa como um dos seus, comece em Runners personalizados com AI Scan e migre esse repositório para o rótulo personalizado dele em vez de um preset.

Uma estratégia incremental#

Você não precisa de uma migração de uma só vez, e sugerimos evitá-la. Comece com um repositório de baixo risco, idealmente um instável ou lento, onde minutos mais baratos, captação mais rápida e autorreparo são mais visíveis, e deixe-o rodar por uma semana antes de comprometer a frota.

01PilotoMigre à mão um workflow de baixo risco: uma linha de YAML
02Acompanhe por uma semanaCompare duração, tempo de captação, custo e reparos na página de Runners
03Migre em massaAbra PRs de migração para o restante da frota, até 20 repos por passagem

Jobs que precisam de GPU, Windows, macOS ou hosts arm64 permanecem nos hospedados pelo GitHub ou em outros runners, e isso é normal indefinidamente: o runs-on é decidido por job, então um workflow pode misturar jobs do Latchkey e hospedados pelo GitHub livremente.

Verifique após o merge#

Confira onde o job rodou

Na visualização de execução do GitHub, o nome do runner do job confirma que uma máquina do Latchkey o pegou, em vez de uma hospedada pelo GitHub. Espere um nome novo a cada execução: os runners são de uso único por design.

Veja os minutos chegarem

Os minutos dos jobs migrados são acumulados contra o nível gratuito do seu plano. O modal de cobrança mostra o progresso do nível gratuito e o custo estimado até agora, e a página de Análise de custo acompanha o gasto com runners do Latchkey ao lado do seu gasto com o GitHub; detalhes em Uso de runner e minutos gratuitos.

Revertendo#

O rollback é a mesma mudança de uma linha ao contrário: reverta o PR de migração e os jobs voltam a ser roteados para os runners hospedados pelo GitHub imediatamente. Não há mais nada para desfazer, nenhum agente para desinstalar e nenhuma configuração para limpar, e o repositório permanece monitorado, então suas análises continuam de qualquer forma.

Perguntas comuns#

Preciso mudar meus segredos?

Não. O GitHub injeta seus segredos do Actions no job em tempo de execução nos runners do Latchkey exatamente como faz nos hospedados pelo GitHub. Nada é reconfigurado, e o Latchkey nunca lê os valores deles.

O actions/cache continua funcionando?

Sim, sem mudanças. Para saves e restores mais rápidos nos runners do Latchkey, a action de cache do Latchkey (latchkey-dev/cache-action@v1) é um upgrade de troca direta; veja Cache de dependências.

Posso misturar runners do Latchkey e hospedados pelo GitHub?

Sim, livremente e por tempo indeterminado. O runs-on é decidido por job, então cada job em um workflow pode rodar onde encaixar melhor.

References