摘要:簡介安裝完成后輸入開始初始化,生成默認(rèn)的配置文件命令的實(shí)現(xiàn)在文件中目錄則包含了初始化相關(guān)的模板命令類類繼承了的類,實(shí)現(xiàn)為一個命令行的命令構(gòu)造函數(shù)構(gòu)造函數(shù)主要初始化了的和兩個變量是一個包含了多個模板的初始化器具體實(shí)現(xiàn)就是下面將要分析的是初始化
0 簡介
Deployer安裝完成后1 InitCommand.php init命令 1 InitCommand類
輸入dep init開始初始化,生成默認(rèn)的配置文件deploy.php
init命令的實(shí)現(xiàn)在srcConsoleInitCommand.php文件中
scrInitializer目錄則包含了初始化相關(guān)的模板
class InitCommand extends Command{}
InitCommand類繼承了Symfony的Command類,2 __constrcut() 構(gòu)造函數(shù)
實(shí)現(xiàn)為一個命令行的命令
構(gòu)造函數(shù)主要初始化了InitCommand的initializer和availableTemplates兩個變量3 configure() 命令配置函數(shù)initalizer 是一個包含了多個模板的初始化器
具體實(shí)現(xiàn)就是下面將要分析的InitalizeravailableTemplates 是初始化器中已注冊的模板名數(shù)組
這里調(diào)用Symfony的command的setName(),setDescription(),addOption()配置了init命令4 execute() 命令執(zhí)行函數(shù)
setName("init") 命令名稱為initsetDescription() 設(shè)置了命令的描述信息,在輸入help時顯示
addOption() 添加了三個選項(xiàng)-template默認(rèn)初始化模板
-directory 配置文件deploy.php生成目錄 -filename 配置文件的名稱,默認(rèn)為deploy.php
首先獲取命令行輸入的選項(xiàng)參數(shù)$template $directory $file5 createInitializer() 創(chuàng)建初始化器
如果沒有輸入$template,則調(diào)用Symfony輸出模板選項(xiàng)信息提示用戶選擇一個模板
然后調(diào)用初始化器initializer的initalize()方法開始初始化配置文件
輸出提示信息 創(chuàng)建配置文件成功
在InitCommand的構(gòu)造函數(shù)中用來創(chuàng)建初始化器2 Initializer 模板初始化器 1 Initializer.php 初始化器 0 簡介
其中注冊了deployer自帶的模板
Initializer類是deployer用來管理配置模板的初始化器。1 addTemplate() 添加模板
添加模板到模板初始化器中2 getTemplateNames() 獲取已注冊模板名
返回已注冊的所有模板名數(shù)組3 initalize() 初始化配置模板
$template參數(shù) 模板類型4 checkDirectoryBeforeInitialize()
$directory參數(shù) 配置模板生成目錄
$file參數(shù) 配置模板文件名
$params參數(shù) 其他參數(shù)首先根據(jù)$template獲取對應(yīng)的注冊的模板類
然后創(chuàng)建模板文件
最后調(diào)用獲取的模板類的initalize()初始化模板文件
檢查初始化模板目錄并創(chuàng)建5 checkFileBeforeInitialize()
檢查初始化模板文件并創(chuàng)建2 Template 初始化模板 1 TemplateInterface.php 模板接口
聲明所有模板類需要實(shí)現(xiàn)initalize()方法2 Template.php 模板基類
用來初始化模板類的配置文件
initalize() 初始化模板文件3 CommonTemplate 基礎(chǔ)模板類 1 getTemplateContent()
首先合并參數(shù)信息到$params。
然后調(diào)用模板子類的getTemplateContent()獲取模板內(nèi)容。
寫入獲取的內(nèi)容到模板配置文件
獲取模板內(nèi)容4 FrameworkTemplate.php 框架模板基類 1 getTemplateContent() 1 getTemplateContent()
獲取簡單的模板內(nèi)容
獲取模板內(nèi)容2 getRecipe()
框架類模板的基礎(chǔ)內(nèi)容
然后調(diào)用getExtraContent()獲取特定框架的內(nèi)容信息
獲取模板食譜名3 getExtraContent()
獲取特定框架類的配置內(nèi)容5 LaravelTemplate Laravel配置模板類
這里的框架模板類以Laravel為例1 getRecipe()
獲取框架的食譜名稱,deployer為Laravel框架預(yù)設(shè)了部署流程 具體內(nèi)容在reciple目錄的laravel文件中2 getExtraContent()
這里的getRecipe()就是獲取文件名
獲取Laravel框架的特定內(nèi)容3 總結(jié)
這里主要注冊了deploy:symlink前執(zhí)行artisn:migrate命令
init 命令初始化deploy的配置文件deploy.php其中根據(jù)選項(xiàng)參數(shù)獲取template 初始化不同的模板。
-2018-4-5 18:58
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/28549.html
摘要:文件包含了基本的部署配置和任務(wù),且有明確的注釋,你可以根據(jù)注釋在適當(dāng)?shù)牡胤教砑优渲靡约叭蝿?wù)。自動部署到了這里,恭喜你,已經(jīng)可以愉快使用。 showImg(https://pigjian.com/storage/post_img/2017-04-09/deployer.jpg); 本文主要介紹 Deployer —— 一個具有模塊化、代碼回滾、并行任務(wù)等功能的 PHP 部署工具。 De...
摘要:開發(fā)完項(xiàng)目,免不了要部署上線。進(jìn)行部署的過程中,項(xiàng)目仍然能夠正常訪問。能十分方便地進(jìn)行回滾。線上測試與生產(chǎn)使用的是青云的云主機(jī),系統(tǒng)?;蛘呦朕k法設(shè)置實(shí)現(xiàn)免密碼登錄。 開發(fā)完項(xiàng)目,免不了要部署上線。純手動操作,登錄、拉代碼、改配置、清緩存、各種服務(wù)重啟等等一條龍下來,人生寶貴的幾分鐘就過去了。而且手動操作十分容易出錯,遺漏部分步驟都有可能產(chǎn)生一些邪門問題。所以我很早就開始尋求一種能輕松部...
摘要:博客的架構(gòu)先搞明白博客從搭建到自動發(fā)布的架構(gòu),才能更好的理解我們每一步進(jìn)行的操作。整個搭建流程第一部分服務(wù)器環(huán)境搭建,包括安裝配置創(chuàng)建用戶。在裸庫的文件夾中,新建文件。 1. 博客的架構(gòu) 先搞明白Hexo博客從搭建到自動發(fā)布的架構(gòu),才能更好的理解我們每一步進(jìn)行的操作。不然只跟著步驟過了一遍,卻不知道為什么這么做。 首先看這張架構(gòu)圖:showImg(https://segmentfaul...
摘要:后來網(wǎng)上看到了很多和搭建的靜態(tài)博客,由于編輯器的實(shí)用性,及,等代碼托管平臺的免費(fèi)特點(diǎn),讓很多人都轉(zhuǎn)向了和。于是我也花了兩三天的時間來研究搭建了自己的博客。 以前的博客(blog.duweibin.cn)是在學(xué)習(xí)thinkphp的時候自己做的一個小項(xiàng)目,模板也是網(wǎng)上找的,后臺是自己用thinkphp框架寫的,上一個博客搭建過程中讓自己學(xué)會了thinkphp對MVC操作,(M層還沒具體用過...
摘要:功能簡介實(shí)現(xiàn)的自動化部署的任務(wù)執(zhí)行工具項(xiàng)目地址代碼結(jié)構(gòu)命令行入口目錄命令行入口常用項(xiàng)目配置模板發(fā)布腳本核心實(shí)現(xiàn)安裝生成目錄常用項(xiàng)目配置模板目錄下包括一些常見框架部署配置模板相關(guān)命令當(dāng)前運(yùn)行服務(wù)器目錄信息當(dāng)前配置信息當(dāng)前服務(wù)器信息 0 功能簡介 php實(shí)現(xiàn)的自動化部署的任務(wù)執(zhí)行工具 1 項(xiàng)目地址 https://github.com/deployphp/... 2 代碼結(jié)構(gòu) deplo...
閱讀 2337·2023-04-26 01:57
閱讀 3347·2023-04-25 16:30
閱讀 2393·2021-11-17 09:38
閱讀 1152·2021-10-08 10:14
閱讀 1455·2021-09-23 11:21
閱讀 3771·2019-08-29 17:28
閱讀 3527·2019-08-29 15:27
閱讀 1007·2019-08-29 13:04