Mae gan adnodd exec Puppet briodwedd environment. Rhowch werthoedd y procsi ar yr adnodd sy'n galw'r lawrlwythydd:

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

Mae'r enghraifft yn tybio bod Wget a mv ar y llwybrau hynny. Mae trosglwyddiad aflwyddiannus yn gadael yr enw llwybr dros dro; dim ond ar ôl i Wget lwyddo y gosodir yr enw terfynol. Yna mae'r gwarchodwr creates yn hepgor gweithrediadau diweddarach tra bo'r ffeil fersiynog gyflawn yn bodoli.

Mae'r arae amgylchedd yn darparu gwerthoedd pan fydd Puppet yn rhedeg y gorchymyn hwn. Gall cofnod HTTP o'r rhestr procsi HTTP ddarparu URL y procsi ar gyfer lawrlwythiad arteffact cyhoeddus a ganiateir pan nad oes gan Wget unrhyw gymwysterau procsi wedi'u ffurfweddu na'u cadw. Dim ond yn y broses arall honno a'i disgynyddion y mae allforyn a wneir gan adnodd exec arall yn ddilys. Nid yw trefnu dau adnodd yn gwneud amgylchedd cragen y cyntaf yn para i'r ail.

Cadwch amgylchedd yr adnodd hwn gyda'r adnodd. Gall gweithrediadau Puppet eraill ddefnyddio eu llwybrau ffurfweddedig eu hunain heb newid ffeil gychwyn Wget y peiriant cyfan.

Erthyglau cysylltiedig