Pular para o conteúdo principal

Cloud Runs no VS Code

O Cloud Runs executa um run do agente de código no servidor do Imaginne — dentro de um pod dedicado e "quente" (warm) só seu — em vez de rodar no seu computador. É pensado para tarefas mais pesadas: um ambiente consistente e isolado que não prende a sua máquina, com o pod ficando quente e sendo reusado entre os seus runs seguidos.

O recurso é opt-in e vem desligado por padrão. Sem você ligar, tudo continua rodando local, como sempre — veja Execução local.

Cloud Runs é a exceção, não a regra

No dia a dia a extensão roda o agente na sua máquina (veja Usar no VS Code). O Cloud Runs é um caminho alternativo e explícito: só entra em cena quando a sua organização habilita, você tem a permissão e você liga o setting. Enquanto qualquer um desses faltar, nada é enviado ao servidor.

Pré-requisitos​

São três, e todos precisam estar presentes ao mesmo tempo:

#Pré-requisitoQuem faz
1A organização habilita o Cloud Runs no /app (card "VSCode Dev Studio" em governança).Admin da org — veja Cloud Runs (admin).
2Você recebe a role cloud_run_user (ou cloud_run_admin).Admin da org.
3Você liga o setting imaginne.cloudRuns.enabled.Você (padrão: false).

Se qualquer um faltar, o Cloud Runs permanece indisponível — e o card reflete exatamente qual peça está faltando (veja abaixo).

O setting é o kill switch​

O imaginne.cloudRuns.enabled (padrão false) é a chave-geral do lado do cliente:

  • com false (padrão), a extensão nunca dispara para o servidor: zero requisição de cloud, tudo roda local como sempre;
  • só com true a extensão pode disparar um run na nuvem — e ainda assim apenas se os outros pré-requisitos e as guardas passarem.
Ligar o setting não força nada

Colocar imaginne.cloudRuns.enabled=true apenas permite o disparo. Se a organização não habilitou ou você não tem a role, continua não rodando nada no servidor. O setting é o seu interruptor pessoal, não uma liberação.

Confirmação antes de disparar​

Se a organização exige confirmação (o padrão), a extensão mostra um modal de confirmação antes de disparar o run — um aviso claro de que a execução vai acontecer no servidor. Se você cancelar, nada é enviado.

O card Cloud Runs (painel Dev Studio)​

O Cloud Runs aparece como um card no painel Dev Studio, aberto pelo comando Imaginne: Cloud Runs (imaginne.platform.cloudRuns). O card reflete o estado e nunca libera além do que o servidor permite — o servidor é a autoridade final:

EstadoO que significa
disabled_by_policyA organização não habilitou o Cloud Runs.
role_requiredFalta a role (cloud_run_user / cloud_run_admin).
confirmation_requiredFalta confirmar o modal antes de disparar.
readyTudo pronto — dá para disparar um run cloud.
running / warmUm run está ativo / o seu pod está quente.
runner_unavailableO backend de execução está indisponível no momento.

Warm pod e reuso​

Quando o seu run cloud termina, o pod não é destruído na hora — ele fica quente por 30 min de ociosidade (default, ajustável pela org). Isso significa que:

  • os seus runs seguintes reusam o mesmo pod, sem esperar um ambiente novo subir;
  • o pod é isolado e exclusivamente seu — nunca é compartilhado com outro usuário;
  • passado o tempo de ociosidade (ou a duração máxima), o pod é recolhido (reaped) automaticamente, e o próximo run sobe um pod novo.

O pod é da classe "power" (1 vCPU / 2 GB).

Limites (definidos pela organização)​

Os limites são configurados pela sua organização. Os valores default:

LimiteDefaultComportamento
Duração máxima por run60 minÉ um teto real: passado o máximo (mais uma pequena folga), o run é encerrado, mesmo em andamento.
Runs paralelos por usuário1Um 2º run em paralelo é negado por quota enquanto o 1º estiver ativo.
Teto por organização(definido pela org)Um limite agregado para toda a organização.
Fail-closed

Nenhum pod nasce a menos que tudo passe junto: organização habilitada + role + confirmação + quota + workspace/repo permitidos. Qualquer negativa em qualquer ponto = nada roda no servidor.

Fluxo passo a passo​

  1. O admin da org habilita o Cloud Runs e te concede a role (cloud_run_user / cloud_run_admin).
  2. Você liga o setting imaginne.cloudRuns.enabled (true).
  3. Você abre o card Cloud Runs (comando Imaginne: Cloud Runs) e dispara um run na nuvem.
  4. A extensão mostra o modal de confirmação — você confirma.
  5. O run executa no seu pod quente, no servidor.
  6. Você acompanha o estado pelo card (running / warm).
  7. O pod é reusado nos seus próximos runs e, passada a ociosidade (ou o teto de duração), é recolhido automaticamente.
Local continua o padrão

O Cloud Runs é opt-in. Sem ligar o setting, tudo roda na sua máquina — veja Execução local. Use a nuvem quando quiser um ambiente isolado e consistente para tarefas mais pesadas, sem prender o seu computador.

Veja também​