GitHub Actions ကိုင်တွယ်သူရှိ အားနည်းချက်တစ်ခုသည် Nixpkgs ရှိ ပက်ကေ့ဂျ်များကို အပေးအယူလုပ်ရန် ခွင့်ပြုထားသည်။

NixOS ဖြန့်ဖြူးမှုနှင့် Nix ပက်ကေ့ဂျ်မန်နေဂျာ ဂေဟစနစ်တွင် အသုံးပြုသည့် Nixpkgs ပက်ကေ့ချ်သိုလှောင်မှုသို့ ဆွဲယူတောင်းဆိုမှုများကို တင်သွင်းသည့်အခါတွင် အလိုအလျောက်တောင်းဆိုသည့် GitHub လုပ်ဆောင်ချက်များ ကိုင်တွယ်သူများရှိ အားနည်းချက်များကို ထုတ်ဖော်ခဲ့သည်။ အားနည်းချက်သည် ခွင့်ပြုချက်မရှိဘဲ အသုံးပြုသူတစ်ဦးအား Nixpkgs တွင် လက်ခံထားသော ပက်ကေ့ဂျ်အားလုံး၏ ရင်းမြစ်ကုဒ်သို့ ဝင်ရောက်ဖတ်ရှုပြီး စာရေးခွင့်ပြုသည့် တိုကင်တစ်ခုကို ထုတ်ယူခွင့်ပြုခဲ့သည်။ ဤတိုကင်သည် ပရောဂျက်၏ Git သိုလှောင်မှုမှတစ်ဆင့် မည်သည့်ပက်ကေ့ဂျ်မဆို တိုက်ရိုက်မွမ်းမံမှုကို ခွင့်ပြုခဲ့ပြီး ပြန်လည်သုံးသပ်ခြင်းနှင့် အတည်ပြုခြင်းလုပ်ငန်းစဉ်များကို ရှောင်လွှဲနိုင်သည်။

Nixpkgs ကို အပေးအယူလုပ်ပြီး စိတ်ကြိုက်ကုဒ်ကို မည်သည့်ပက်ကေ့ဂျ်တွင်မဆို ထည့်သွင်းနိုင်မှုကို လုံခြုံရေးသုတေသီများက ပြီးခဲ့သည့် အောက်တိုဘာလက NixCon ကွန်ဖရင့်တွင် သရုပ်ပြခဲ့ပြီး ပရောဂျက်၏ အခြေခံအဆောက်အအုံတွင် ချက်ချင်းပြင်ဆင်ခဲ့သည်။ သို့သော်လည်း တိုက်ခိုက်မှုအသေးစိတ်အချက်အလက်များကို တစ်နှစ်အကြာတွင် ထုတ်ပြန်ခဲ့သည်။ အဆိုပါပြဿနာသည် "pull_request_target" ဖြစ်ရပ်နှင့် ချိတ်ဆက်ထားသည့် Nixpkgs GitHub သိုလှောင်ခန်းရှိ GitHub လုပ်ဆောင်ချက်များကို ကိုင်တွယ်ဖြေရှင်းသူများ အသုံးပြုခြင်းနှင့် ဆက်စပ်နေပြီး၊ ဆွဲယူတောင်းဆိုမှုများအပေါ် အလိုအလျောက် စစ်ဆေးမှုများ လုပ်ဆောင်ပါသည်။

"pull_request" ဖြစ်ရပ်နှင့် မတူဘဲ၊ "pull_request_target" ရှိ ကိုင်တွယ်သူများကို တည်ဆောက်သည့် ပတ်ဝန်းကျင်သို့ ဖတ်ရှု/ရေးနိုင်ခွင့် ရရှိထားပြီး၊ ဆွဲယူတောင်းဆိုမှုတစ်ခုအတွင်း ဒေတာဖြင့် လုပ်ဆောင်သည့်အခါ အထူးဂရုစိုက်ရန်လိုအပ်ပါသည်။ "pull_request_target" နှင့် ချည်နှောင်ထားသော ကိုင်တွယ်သူတစ်ဦးက ဆွဲယူတောင်းဆိုမှုတွင် ပေးထားသည့် "OWNERS" ဖိုင်ကို အတည်ပြုပြီး codeowners-validator utility- အဆင့်များ- ခေါ်ဆိုခြင်း- အဆင့်များ-- အသုံးပြုမှုများ- actions/checkout@eef61447b9ff4aafe5dcd4e0bbf with- ref: ref: refs/build-pull:/$/$/ -ကုဒ်ပိုင်ရှင်များ မှန်ကန်သော ဆော့ဖ်ဝဲ- run- ရလဒ်/bin/codeowners-validator env- OWNERS_FILE- pr/ci/OWNERS

ပြဿနာမှာ OWNERS ဖိုင်ကို မှားယွင်းစွာဖော်မတ်မိပါက၊ codeowners-validator utility သည် ပုံစံမမှန်သော စာကြောင်း၏ အကြောင်းအရာများကို စံအဖြစ် အများသူငှာ ဝင်ရောက်ကြည့်ရှုနိုင်သော မှတ်တမ်းအဖြစ် ထုတ်လွှတ်မည်ဖြစ်သည်။ တိုက်ခိုက်မှုတွင် OWNERS ဟု အမည်ပေးထားသည့် သင်္ကေတလင့်ခ်ကို ဆွဲထုတ်ရန် တောင်းဆိုချက်တွင် ထည့်သွင်းထားသည့် ".credentials" ဖိုင်ကို ညွှန်ပြပြီး တည်ဆောက်သည့်ပတ်ဝန်းကျင်တွင် အထောက်အထားများကို သိမ်းဆည်းထားသည့် ".credentials" ဖိုင်ကို ညွှန်ပြခြင်းဖြစ်သည်။ ထို့ကြောင့်၊ ဤဖိုင်ကို စီမံဆောင်ရွက်ရာတွင် အမှားအယွင်းတစ်ခု ဖြစ်ပေါ်ပြီး သိုလှောင်အသုံးပြုခွင့် တိုကင်ပါရှိသော ပထမစာကြောင်းကို အများသူငှာ မှတ်တမ်းသို့ ထုတ်ပေးခဲ့သည်။

 GitHub Actions ကိုင်တွယ်သူရှိ အားနည်းချက်တစ်ခုသည် Nixpkgs ရှိ ပက်ကေ့ဂျ်များကို အပေးအယူလုပ်ရန် ခွင့်ပြုထားသည်။

ထို့အပြင်၊ တည်းဖြတ်ဖွဲ့စည်းမှုစည်းမျဉ်းများကို စစ်ဆေးသည့် ကိုင်တွယ်ကိရိယာတွင် အခြားအားနည်းချက်ကို တွေ့ရှိခဲ့သည်။ အဆင့်များ- — အမည်- PR run မှ ပြောင်းလဲထားသော ဖိုင်များစာရင်းကို ရယူပါ- gh api […] | jq [ … ] > «$HOME/changed_files» — အသုံးပြုမှုများ- actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 with- ref: refs/pull/$/merge — အမည်- တည်းဖြတ်မှုအစီအစဥ်ကို စစ်ဆေးနေသည်- cat «$HOME/changed_file» | xargs -r editorconfig-checker

ဤကိစ္စတွင်၊ ပြဿနာမှာ ဆွဲထုတ်တောင်းဆိုမှုတွင် ဖိုင်တစ်ခုစီနှင့် editorconfig-checker ကို run ရန် "xargs" utility ကိုအသုံးပြုခြင်းဖြစ်သည်။ ဖိုင်အမည်များကို တရားဝင်မစစ်ဆေးရသေးသောကြောင့်၊ တိုက်ခိုက်သူသည် တည်းဖြတ်မှုပြင်ဆင်မှု-စစ်ဆေးခြင်းလုပ်ဆောင်သည့်အခါ အမိန့်ပေးစာကြောင်းဆိုင်ရာ အကြောင်းပြချက်များအဖြစ် စီမံဆောင်ရွက်မည့် ဆွဲယူတောင်းဆိုမှုတွင် အထူးဇာတ်ကောင်များပါရှိသော ဖိုင်ကို ထည့်သွင်းနိုင်သည်။ ဥပမာအားဖြင့်၊ "--help" ဖိုင်ကို ဖန်တီးသောအခါတွင်၊ တည်းဖြတ်သူ config-checker သည် ရရှိနိုင်သော ရွေးချယ်စရာများအကြောင်း အရိပ်အမြွက်ပြလိမ့်မည်။

source: opennet.ru

မှတ်ချက် Add