Puppet نىڭ exec بايلىقىدا environment خاسلىقى بار. Proxy قىممەتلىرىنى چۈشۈرگۈچنى چاقىرىدىغان بايلىققا قويۇڭ:

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

مىسال Wget بىلەن mv نىڭ شۇ يوللاردا دەپ پەرەز قىلىدۇ. مەغلۇپ بولغان يۆتكەش ۋاقىتلىق يول نامىنى قالدۇرىدۇ؛ ئاخىرقى يول نامى پەقەت Wget مۇۋەپپەقىيەت قازانغاندىن كېيىن ئورنىتىلىدۇ. ئاندىن creates قوغدىغۇچى تاماملانغان نەشرىلىك ھۆججەت مەۋجۇت بولغاندا كېيىنكى ئىجرالارنى ئاتلاپ كېتىدۇ.

مۇھىت تىزىملىكى Puppet بۇ بۇيرۇقنى ئىجرا قىلغاندا قىممەت بىلەن تەمىنلەيدۇ. HTTP proxy تىزىملىكىدىن HTTP تۈرى Wget دا سەپلەنگەن ياكى ساقلىنىپ قالغان proxy ئۇچۇرى يوق بولغاندا رۇخسەت قىلىنغان ئاممىۋى ئارتىفاكت چۈشۈرۈشى ئۈچۈن proxy URL نى تەمىنلەيالايدۇ. باشقا exec بايلىقى ئىجرا قىلغان ئېكسپورت پەقەت شۇ باشقا جەريان ۋە ئۇنىڭ ئەۋلادلىرىدا ئىناۋەتلىك. ئىككى بايلىقنى تەرتىپكە سېلىش بىرىنچىنىڭ shell مۇھىتىنى ئىككىنچىدە داۋاملاشتۇرمايدۇ.

بۇ بايلىقنىڭ مۇھىتىنى بايلىق بىلەن بىرگە ساقلاڭ. باشقا Puppet مەشغۇلاتلىرى ماشىنا دەرىجىلىك Wget باشلاش ھۆججىتىنى ئۆزگەرتمەي ئۆزىنىڭ سەپلەنگەن يوللىرىنى ئىشلىتەلەيدۇ.

مۇناسىۋەتلىك ماقالىلەر