Preparar uma cache de repositório Bazel numa rota de download funcional
Obtenha as dependências necessárias numa cache escolhida, transfira-a para o ambiente bloqueado e utilize aí a mesma opção repository_cache.
Uma cache de repositório pode fornecer bytes de dependências aprovados quando o Bazel não os consegue obter através do proxy do ambiente de destino.
- Numa máquina com o acesso previsto, utilize o estado de projeto e a versão do Bazel necessários para obter numa cache escolhida:
bazel fetch --repository_cache=/path/to/repository-cache //... - Transfira a cache preparada através do processo de artefactos do projeto.
- Selecione o caminho no ambiente de destino com a mesma opção
--repository_cache. Uma cache construída para outro estado de projeto pode estar incompleta.
As soluções antigas usam --distdir, agora documentado como obsoleto. Esse mecanismo exige um arquivo cujo nome de ficheiro corresponda ao nome base do URL e cujo hash corresponda ao pedido de download declarado. Uma árvore de código-fonte não extraída não é um substituto, e remover o hash remove parte da seleção de artefactos.
Isto não fornece todos os pré-requisitos offline. Os metadados do registo Bzlmod, os repositórios Git e os comandos lançados pelas regras de repositório podem ter necessidades adicionais. Se o requisito for a obtenção em direto através do proxy, investigue o seu downloader e URL reais em vez de substituir a definição de dependência para ocultar a falha de ligação.