Uso offline de vcpkg

Este documento detalha dois métodos robustos para implantar o vcpkg em ambientes sem conectividade com a Internet ao vivo.

Método 1: Pré-construir e exportar pacotes

Este método usa o export comando para criar um pacote abrangente em um sistema conectado à Internet. O processo compila binários, cabeçalhos e todas as dependências transitivas em um pacote SDK autônomo adequado para implantação offline.

Introdução ao Tutorial de exportação – Criando um pacote SDK independente.

Prós e contras

Prós:

  • Todos os componentes necessários são agrupados em um único arquivo usando o export comando.
  • Fácil de começar.
  • Extremamente fiável.

Contras:

  • As atualizações e o desenvolvimento da fonte devem ser realizados em um sistema conectado.
  • Envolve manutenção adicional quando as bibliotecas são atualizadas.
  • Não é possível lidar com bibliotecas privadas somente offline.
  • Não se adapta bem a vários consumidores diversos - cada um precisa de um pacote separado.

Método 2: Redirecionar acesso a recursos externos

Essa estratégia permite o acesso controlado a recursos externos, combinando o redirecionamento de URL do Git com o cache de ativos. É uma alternativa eficaz onde um pacote offline completo não é essencial.

Git: Redirecionamento

Os Registros Git e algumas fontes de porta são buscados usando o protocolo git, que pode se referir a recursos fora do ambiente offline. A configuração do Git abaixo demonstra como redirecionar solicitações do repositório padrão para um espelho interno:

[url "https://internal/mirror/of/vcpkg"]
    insteadOf = https://github.com/microsoft/vcpkg

Esta configuração também pode ser aplicada através da linha de comando:

git config --global url."https://internal/mirror/of/vcpkg".insteadOf "https://github.com/microsoft/vcpkg"

Consulte Usar o redirecionamento de URLs do Git (insteadOf) na documentação oficial do Git para obter mais informações.

Cache de ativos

O cache de ativos armazena downloads localmente ou em uma solução de armazenamento remoto, melhorando o desempenho da compilação e aumentando a segurança da rede. Instruções detalhadas estão disponíveis no tutorial de cache de ativos e na referência de configuração de cache de ativos.

Prós e contras

Prós:

  • Acelera compilações reutilizando ativos armazenados em cache.
  • Remove a dependência da conectividade contínua com a Internet.
  • Permite a reconstrução offline, facilitando as alterações na cadeia de ferramentas ou no sinalizador.
  • Adapta-se bem a vários consumidores diversos com diferentes subconjuntos de bibliotecas.

Contras:

  • Envolve configuração adicional.
  • Requer manutenção de espelhos internos e infraestrutura de cache.

Conclusão

Implantar o vcpkg em um ambiente isolado pode ser feito através de:

  • Pré-criação e exportação de um pacote completo.
  • Configuração do redirecionamento Git combinado com cache de recursos para acesso externo controlado.

Escolha o método que melhor se alinha com seus requisitos de infraestrutura e implantação.

Recursos adicionais

  1. Comando Exportar
  2. Referência de configuração de cache de ativos
  3. Usando o redirecionamento de URL do Git (em vez de)