အင်တာနက်နည်းပညာ၏စဉ်ဆက်မပြတ်ဖွံ့ဖြိုးတိုးတက်မှုနှင့်စီမံကိန်းစကေးနှင့်ရှုပ်ထွေးမှုများကိုစဉ်ဆက်မပြတ်တိုးတက်မှုများနှင့်အတူစီမံကိန်းများစွာဖြန့်ကျက်ခြင်းနည်းလမ်းသည်လျင်မြန်စွာကြားဖြတ်၏လိုအပ်ချက်များကိုဖြန့်ချိခြင်းနှင့်တွေ့ဆုံခြင်းမရှိတော့ပါ။ ထိရောက်မှုကိုတိုးတက်စေရန်နှင့်လူ့အမှားများကိုလျှော့ချရန်အလိုအလျောက်ဖြန့်ကျက်မှုကိရိယာများသည်တဖြည်းဖြည်းဖွံ့ဖြိုးရေးလုပ်ငန်းစဉ်၏မရှိမဖြစ်လိုအပ်သောအစိတ်အပိုင်းတစ်ခုဖြစ်လာသည်။ ဤဆောင်းပါးသည် PHP စီမံကိန်းများကိုပြန်လည်နေရာချထားသူမှတစ်ဆင့် PHP စီမံကိန်းများကိုအလိုအလျောက်မည်သို့ဖြန့်ချိနိုင်မည်ကိုမိတ်ဆက်ပေးလိမ့်မည်။
ဖြန့်ကျက်သူသည် PHP ကို အခြေခံ. ပွင့်လင်းသောအရင်းအမြစ်အလိုအလျောက်ဖြန့်ကျက်မှုကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည် Git, FTP, SFTP, SFTP စသည်ဖြင့်ဖြန့်ကျက်သောနည်းလမ်းအမျိုးမျိုးကိုထောက်ပံ့ပေးပြီး plug-ins မှတဆင့်တိုးချဲ့နိုင်သည်။
မစတင်မီသင်၏ဒေသပတ် 0 န်းကျင်တွင်ပြန်လည်နေရာချထားသူကိုသင်တပ်ဆင်ရန်လိုအပ်သည်။ installation နည်းလမ်းသည်အလွန်ရိုးရှင်းပါသည်, ၎င်းသည်စီမံကိန်းတစ်ခုမှီခိုမှုအဖြစ်တပ်ဆင်ရန်တေးရေးဆရာကိုသုံးနိုင်သည်။
composer require deployer/deployer --dev
တပ်ဆင်မှုပြီးစီးပြီးနောက်ဖြန့်ကျက်ထားသော configuration script ကိုရေးရန်စီမံကိန်း root directory တွင် deploy.php အမည်ရှိဖိုင်တစ်ခုကိုဖန်တီးပါ။
အောက်ပါဥပမာသည်အခြေခံကျသောဖြန့်ကျက်ထားသော configuration file တစ်ခုကိုပြသသည်။
require 'recipe/common.php';
// စီမံကိန်းအမည်
set('application', 'my_project');
// Project Warehouse လိပ်စာ
set('repository', 'git@github.com:username/my_project.git');
// ပစ်မှတ် server ကိုဖြန့်ကျက်
server('production', 'production_server_ip')
->user('username')
->identityFile('~/.ssh/id_rsa')
->set('deploy_path', '/var/www/my_project');
// ဖြန့်ကျက်ပြီးနောက်ကွပ်မျက်ခံရဖို့လိုအပ်တဲ့အလုပ်များ
task('deploy:custom_task', function () {
run('php artisan migrate');
});
// ဖြန့်ကျက်ပြီးနောက်ဝန်ဆောင်မှုကိုပြန်လည်စတင်ပါ
after('deploy', 'deploy:restart');
// ထုတ်ဝေသောဖိုင်များနှင့်လမ်းညွှန်များကိုပြင်ဆင်ပါ
set('shared_files', ['.env']);
set('shared_dirs', ['storage']);
// ဖယ်ထုတ်ရန်ဖိုင်များနှင့်လမ်းညွှန်များကို configure လုပ်ပါ
set('exclude', ['.git', 'node_modules', 'tests']);
// ပတ် 0 န်းကျင် variable တွေကိုသတ်မှတ်ပါ
set('env', [
'APP_ENV' => 'production',
'APP_DEBUG' => 'false',
]);
// ဆက်လက်ထားရှိရန်ထုတ်ပြန်ချက်အရေအတွက်ကို configure
set('keep_releases', 5);
အထက်ဖော်ပြပါပြင်ဆင်မှုတွင်စီမံကိန်း၏အခြေခံအချက်အလက်များ, ဂိုဒေါင်လိပ်စာ, ပစ်မှတ်ထားဆာဗာနှင့်ဖြန့်ကျက်မှုလုပ်ငန်းစဉ်အတွင်းလုပ်ဆောင်ရန်လိုအပ်သည့်လုပ်ငန်းများကိုကျွန်ုပ်တို့သတ်မှတ်သည်။ ဤပြင်ဆင်မှုများမှတစ်ဆင့်ဖြန့်ကျက်သူသည် code pull ကို Code Prouse မှ 0 န်ဆောင်မှုကိုပြန်လည်စတင်ရန်အလိုအလျောက်ဖြည့်ဆည်းပေးနိုင်သည်။
configuration file ကိုအဆင်သင့်ဖြစ်လျှင်, ဖြန့်ကျက်သူမှပေးထားသော command line tools များကိုသင်အသုံးပြုနိုင်သည်။ ဥပမာအားဖြင့်:
# စီမံကိန်းကိုပစ်မှတ်ဆာဗာသို့ဖြန့်ဝေပါ
dep deploy production
# ယခင်ဖြန့်ချိဗားရှင်းသို့ပြန်သွားပါ
dep rollback production
# သက်တမ်းကုန်ဆုံးထုတ်ပေး
dep cleanup
ဤအမိန့်များကနောက်ဆုံးပေါ်ကုဒ်များကိုထုတ်လုပ်ခြင်း, နောက်ဆုံးပေါ်ကုဒ်များကိုထုတ်ဝေခြင်း,
Deployer မှတစ်ဆင့် PHP စီမံကိန်းများ၏အလိုအလျောက်ဖြန့်ကျက်ခြင်းနှင့်ဖြန့်ချိခြင်းလုပ်ငန်းများကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။ ၎င်းသည်သိသိသာသာဖြန့်ကျက်ချိန်ကိုသိသိသာသာလျော့နည်းစေရုံသာမကလက်စွဲစစ်ဆင်ရေးများမှယူဆောင်လာသည့်အန္တရာယ်များကိုလည်းလျော့နည်းစေသည်။ ဖြန့်ကျက်သူသည်မကြာခဏဆိုသလိုမွမ်းမံမှုများနှင့်ထုတ်လွှတ်မှုလိုအပ်သည့်စီမံကိန်းများအတွက်ထိရောက်သောတည်ငြိမ်သောဖြေရှင်းနည်းတစ်ခုပြုလုပ်နိုင်သည်မှာသေချာသည်။ Developer များကအဖွဲ့၏ဖွံ့ဖြိုးတိုးတက်မှုနှင့်လုပ်ငန်းလည်ပတ်မှုနှင့်ပြုပြင်ထိန်းသိမ်းမှုပိုမိုတိုးတက်စေရန်အမှန်တကယ်စီမံကိန်းများတွင်ပြန်လည်နေရာချထားသူများကိုအသုံးပြုရန်ကြိုးစားရန်အကြံပြုသည်။