Executar um gerenciador de pacotes e outras ferramentas em um servidor de proxy - AWS CodeBuild

Executar um gerenciador de pacotes e outras ferramentas em um servidor de proxy

Use os procedimentos a seguir para executar um gerenciador de pacotes e outras ferramentas em um servidor proxy.

Como executar uma ferramenta, como um gerenciador de pacotes, em um servidor proxy
  1. Adicione a ferramenta à lista de permissões em seu servidor de proxy incluindo instruções em seu arquivo squid.conf.

  2. Adicione uma linha ao arquivo buildspec para que indique o endpoint privado do seu servidor de proxy.

Os exemplos a seguir demonstram como fazer isso para apt-get, curl e maven. Se você usar uma ferramenta diferente, os mesmos princípios são aplicáveis. Inclua-a em a uma lista de permissões no arquivo squid.conf e adicione um comando ao arquivo buildspec para que o CodeBuild reconheça o endpoint do servidor proxy.

Para executar apt-get em um servidor proxy
  1. Adicione as instruções a seguir ao arquivo squid.conf para incluir apt-get na lista de permissões do seu servidor de proxy. As três primeiras linhas permitem que o apt-get seja executado no ambiente de compilação.

    acl allowed_sites dstdomain ppa.launchpad.net # Required for apt-get to run in the build environment acl apt_get dstdom_regex .*\.launchpad.net # Required for CodeBuild to run apt-get in the build environment acl apt_get dstdom_regex .*\.ubuntu.com # Required for CodeBuild to run apt-get in the build environment http_access allow localnet allowed_sites http_access allow localnet apt_get
  2. Adicione a instrução a seguir no seu arquivo buildspec para que os comandos apt-get procurem a configuração de proxy em /etc/apt/apt.conf.d/00proxy.

    echo 'Acquire::http::Proxy "http://<private-ip-of-proxy-server>:3128"; Acquire::https::Proxy "http://<private-ip-of-proxy-server>:3128"; Acquire::ftp::Proxy "http://<private-ip-of-proxy-server>:3128";' > /etc/apt/apt.conf.d/00proxy
Para executar curl em um servidor proxy
  1. Adicione o seguinte ao arquivo squid.conf para incluir curl em uma lista de permissões no ambiente de compilação.

    acl allowed_sites dstdomain ppa.launchpad.net # Required to run apt-get in the build environment acl allowed_sites dstdomain google.com # Required for access to a webiste. This example uses www.google.com. http_access allow localnet allowed_sites http_access allow localnet apt_get
  2. Adicione a instrução a seguir no seu arquivo buildspec para que o curl use o servidor de proxy privado para acessar o site que você adicionou a squid.conf. Nesse exemplo, o site é google.com.

    curl -x <private-ip-of-proxy-server>:3128 https://www.google.com
Para executar maven em um servidor proxy
  1. Adicione o seguinte ao arquivo squid.conf para incluir maven em uma lista de permissões no ambiente de compilação.

    acl allowed_sites dstdomain ppa.launchpad.net # Required to run apt-get in the build environment acl maven dstdom_regex .*\.maven.org # Allows access to the maven repository in the build environment http_access allow localnet allowed_sites http_access allow localnet maven
  2. Adicione a seguinte instrução ao seu arquivo buildspec.

    maven clean install -DproxySet=true -DproxyHost=<private-ip-of-proxy-server> -DproxyPort=3128