Burimi exec i Puppet ka një atribut environment. Vendosni vlerat e proxy-t te burimi që thërret shkarkuesin:

file { '/var/cache/myapp':
  ensure => directory,
}

exec { 'fetch-artifact':
  provider    => shell,
  command     => '/usr/bin/wget --tries=1 --timeout=20 -O /var/cache/myapp/artifact.part https://downloads.example.net/artifact-v1.bin && /usr/bin/mv /var/cache/myapp/artifact.part /var/cache/myapp/artifact-v1.bin',
  environment => [
    'http_proxy=http://proxy.example.net:8080',
    'https_proxy=http://proxy.example.net:8080',
  ],
  creates     => '/var/cache/myapp/artifact-v1.bin',
  require     => File['/var/cache/myapp'],
}

Shembulli supozon se Wget dhe mv janë në ato shtigje. Një transferim i dështuar lë emrin e shtegut të përkohshëm; emri përfundimtar instalohet vetëm pasi Wget të ketë sukses. Më pas mbrojtësi creates anashkalon ekzekutimet e mëvonshme për sa kohë ekziston skedari i versionuar i përfunduar.

Vargu i mjedisit siguron vlera kur Puppet ekzekuton këtë komandë. Një zë HTTP nga lista e proxy-ve HTTP mund të sigurojë URL-në e proxy-t për një shkarkim të lejuar të një artefakti publik kur Wget nuk ka kredenciale proxy të konfiguruara ose të ruajtura. Një eksport i kryer nga një burim tjetër exec vlen vetëm në atë proces tjetër dhe pasardhësit e tij. Renditja e dy burimeve nuk e bën mjedisin e shell-it të të parit të vazhdueshëm në të dytin.

Mbajeni mjedisin e këtij burimi bashkë me burimin. Operacione të tjera të Puppet mund të përdorin rrugët e tyre të konfiguruara pa ndryshuar skedarin e nisjes së Wget për të gjithë makinën.

Artikuj të ngjashëm