Puppet-ի exec ռեսուրսն ունի environment հատկանիշ։ Տեղադրեք վստահված սերվերի արժեքները ներբեռնիչը կանչող ռեսուրսի վրա՝

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 գրառումը HTTP վստահված սերվերների ցանկից կարող է տրամադրել վստահված սերվերի URL-ը թույլատրված հանրային արտեֆակտի ներբեռնման համար, երբ Wget-ը չունի կարգավորված կամ պահված վստահված սերվերի հավատարմագրեր։ Մեկ այլ exec ռեսուրսի կատարած արտահանումը գործում է միայն այդ այլ գործընթացում և նրա ժառանգներում։ Երկու ռեսուրսների հերթականությունը առաջինի shell միջավայրը երկրորդում մշտական չի դարձնում։

Պահեք այս ռեսուրսի միջավայրը ռեսուրսի հետ։ Puppet-ի այլ գործողություններ կարող են օգտագործել իրենց կարգավորված ուղիները՝ չփոխելով մեքենայի ընդհանուր Wget մեկնարկային ֆայլը։

Առնչվող հոդվածներ