Tilföngin exec í Puppet hafa environment eigindi. Setjið proxygildin á tilföngin sem kalla á niðurhalsforritið:

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'],
}

Dæmið gerir ráð fyrir að Wget og mv séu á þessum slóðum. Misheppnaður flutningur skilur eftir tímabundið slóðarheiti; endanlega slóðarheitið er aðeins sett eftir að Wget tekst. Þá sleppir creates vörðurinn síðari keyrslum á meðan fullkláraða útgáfumerkta skráin er til.

Umhverfisfylkið veitir gildi þegar Puppet keyrir þessa skipun. HTTP-færsla úr HTTP-proxylistanum getur veitt proxy-slóð fyrir leyft niðurhal á opinberu gagnabroti þegar Wget hefur engar stilltar eða varðveittar proxyskírteini. Útflutningur sem annað exec-tilfang gerir gildir aðeins í því öðru ferli og afkomendum þess. Röðun tveggja tilfanga gerir skeljarumhverfi hins fyrra ekki varanlegt í hinu síðara.

Haldið umhverfi þessara tilfanga með tilföngunum. Aðrar Puppet-aðgerðir geta notað eigin stilltar leiðir án þess að breyta Wget-ræsingarskránni fyrir alla vélina.

Tengdir greinar