Web နည်းပညာ၏စဉ်ဆက်မပြတ်ဆင့်ကဲပြောင်းလဲခြင်းဖြင့် PHP သည်နောက်ပိုင်းတွင်ဖွံ့ဖြိုးတိုးတက်မှုတွင်လျစ်လျူရှုမရသောအရေးကြီးသောဘာသာစကားတစ်ခုဖြစ်ဆဲဖြစ်သည်။ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဖြန့်ကျက်မှုဖြစ်စဉ်ကိုထိရောက်စွာလုပ်ဆောင်သည်ဖြစ်စေစီမံကိန်း၏အွန်လိုင်းထိရောက်မှုနှင့်တည်ငြိမ်မှုကိုတိုက်ရိုက်သက်ရောက်သည်။ ဤဆောင်းပါးသည်သင့်အားထိရောက်သောထိန်းချုပ်နိုင်သော PHP ဖြန့်ကျက်မှုလုပ်ငန်းစဉ်ကိုတည်ဆောက်ရန်အထောက်အကူပြုမည့်အလွန်ကောင်းမွန်သောအလိုအလျောက်ဖြန့်ကျက်ကိရိယာ - Deproller ကိုသိမ်းယူလိမ့်မည်။
ဖြန့်ကျက်သူသည်ရှုပ်ထွေးသောဖြန့်ကျက်မှုဖြစ်စဉ်များကိုရိုးရှင်းစေရန် PHP အခြေပြု open source deployment tool တစ်ခုဖြစ်သည်။ Configuration Logic ကိုရေးရန် PHP ကို အသုံးပြု. developer များက developer များကိုဖြန့်ကျက်မှုမဟာဗျူဟာများကိုပြောင်းလွယ်ပြင်လွယ်စွာထိန်းချုပ်ရန်နှင့်လျင်မြန်စွာပြီးပြည့်စုံသောစီမံကိန်းများကိုမြန်မြန်ဆန်ဆန်ဖြည့်စွက်ရန်ခွင့်ပြုသည်။
ဖြန့်ကျက်သူ၏အဓိကအားသာချက်များမှာ -
ပြောင်းလွယ်ပြင်လွယ် configuration : ဖြန့်ကျက်သော script ကိုယ်နှိုက်သည် PHP Code ဖြစ်သည်။
မျိုးစုံပတ် 0 န်းကျင်မျိုးစုံကိုထောက်ပံ့သည် ။
Parallel Deployment Capability - တစ်ချိန်တည်းတွင် Code ကိုဖြန့်ကျက်ထားရန်ကုဒ်ဖြန့်ကျက်မှုများကိုတစ်ချိန်တည်းတွင်ထောက်ပံ့သည်။
ဖြန့်ကျက်သူကိုအသုံးပြုခြင်းကိုအသုံးပြုသောအခါပုံမှန် PHP စီမံကိန်း၏လမ်းညွှန်တည်ဆောက်ပုံကိုဤတွင်ဖော်ပြထားသည်။
My-Project / ├──လက်ရှိ / ├──လွှတ်ပေးရန် / │├── 2022011_120000 / │└── 20220102_150000 / └──မျှဝေ / ├──မှတ်တမ်းများ / └──သိုလှောင်ခြင်း /
Project root directory တွင် Composer ကို အသုံးပြု. Composer ကိုအသုံးပြုပါ။
Composer သည် Deproller / Deployer လိုအပ်သည်
စီမံကိန်း root directory တွင် deploy.php
ဖိုင်မှတ်တမ်းတစ်ခုပြုလုပ်ရန်အဓိကဖြန့်ကျက်ထားသော configuration script အဖြစ်ဖန်တီးပါ။ ဒီနေရာမှာအခြေခံ configuration ဥပမာတစ်ခုပါ။
<?php require 'vendor/autoload.php'; // စီမံကိန်းနာမည် set('application', 'my-project'); // ကုဒ် repository လိပ်စာ set('repository', 'git@github.com:username/my-project.git'); // ကွက်ကွက်ကေျာင်း staging ပတ်ဝန်းကျင် host('staging') -> Hostname ('ဥပမာ.com') -> Set ('Depping_path', '/ var / www / staging'); // ထုတ်လုပ်မှုပတ် 0 န်းကျင် host ('ထုတ်လုပ်မှု' ကို configure) -> Hostname ('ဥပမာ .com') -> Set ('Deppathing_path', '/ var / www / ထုတ်လုပ်မှု'); // အဓိကဖြန့်ကျက်မှုလုပ်ငန်းတာဝန် ('ဖြန့်ကျက်ခြင်း', function () {{) // နောက်ဆုံးပေါ်ဗားရှင်း $ refathath = "{{{{{{{{{{{depathing_path}} / {{timestamp}}; Run ("Git Clone --Depth 1 {{repository} $ refathath"); // သင်္ကေတ link ကို run ("LN -SFN $ refathath {{deppathath}}} {ဖြန့်ကျက်}} / current"); // မှီခိုမှု run ကို install လုပ်ပါ ("CD {{{{{{{{{{{{{{{{{{{athath}}}}}}}}}}}}} /& composer install"), // run ၏ version အဟောင်းကိုသန့်ရှင်းရေး ("ls -dt {{{{{ဖြန့်ကျက် {{ဖြန့်ကျက် {{ဖြန့်ကျက်}} / * | အမြီး --n +6 | }); // Depining Deployment Task Task Task ('Staging', function ကိုသတ်မှတ်ခြင်း Set ('staging', 'staging'; Indoke ('ချထားပါ'); }) -> Onreoles ('staging'); // ထုတ်လုပ်မှုဖြန့်ကျက်မှုလုပ်ငန်းတာဝန် ('ထုတ်လုပ်မှု', function ကို (') {{) Set ('ဌာနခွဲ', 'ထုတ်လုပ်မှု', Indoke ('ချထားပါ'); }) -> outrolet ('ထုတ်လုပ်မှု');
ဤ configuration signe ်ဌာန်းချက်ဥပမာသည်အခြေခံအချက်အလက်များ, ပတ် 0 န်းကျင်ဆိုင်ရာအချက်အလက်များနှင့်ဖြန့်ကျက်မှုဆိုင်ရာသတင်းအချက်အလက်များကို task()
မှတဆင့်မည်သို့သတ်မှတ်မည်ကိုပြသသည်။ {{deploy_path}}
နှင့် {{timestamp}}
စသည့် variable များကိုအလိုအလျောက်နေရာချထားသည့်အခါအမှန်တကယ်တန်ဖိုးများဖြင့်အလိုအလျောက်အစားထိုးလိမ့်မည်။
command များဖြန့်ကျက်ခြင်းသည်အလွန်ရိုးရှင်းပါသည်, Terminal တွင်သူတို့ကို execute:
dep
ဖြန့်ကျက်သူသည်ဆာဗာသို့အလိုအလျောက်ချိတ်ဆက်ပြီး configure လုပ်ခြင်းလုပ်ငန်းစဉ်တစ်ခုလုံးကိုအလိုအလျောက်မွမ်းမံခြင်း,
ပြန်လည်နေရာချထားသူနှင့်အတူ PHP စီမံကိန်းများဖြန့်ကျက်မှုလုပ်ငန်းစဉ်သည်ရှုပ်ထွေးမှုမရှိတော့ပါ။ ၎င်းသည်စွမ်းဆောင်ရည်ကိုတိုးတက်စေသည်သာမကဖြန့်ကျက်မှုများ၏ထိန်းချုပ်မှုနှင့်ထိန်းသိမ်းခြင်းကိုလည်းပိုမိုကောင်းမွန်စေသည်။ သေးငယ်ပြီးအလတ်စားစီမံကိန်းများသို့မဟုတ် node များစွာရှိသောကြီးမားသောစနစ်များသို့မဟုတ်အကြီးစားစနစ်များဖြစ်စေ, သင်မကြိုးစားခဲ့ပါကသင်၏နောက်စီမံကိန်းကိုကောင်းစွာမိတ်ဆက်ပေးပြီးဖြန့်ကျက်သောအလိုအလျောက်ဖြန့်ကျက်ခြင်းဖြင့်ဖြစ်ပေါ်လာသောအပြောင်းအလဲများကိုတွေ့ကြုံခံစားနိုင်သည်။