成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

gitlab + php自動部署

The question / 1669人閱讀

摘要:起因某種原因不能使用于是用寫了一個自動部署腳本項目介紹用寫的部署腳本可配置源代碼目錄目標目錄緩存目錄用來部署后刪除忽略目錄文件他們在本地的變化不會被部署支持可配置版本庫和分支支持一個同時往多個目錄部署支持手動在命令行觸發(fā)支持網(wǎng)頁界面操作

Summer-PHP-Deploy 起因

某種原因, 不能使用Jenkins, 于是用PHP寫了一個自動部署腳本

項目介紹

用PHP寫的部署腳本

可配置源代碼目錄, 目標目錄, 緩存目錄(用來部署后刪除), 忽略目錄/文件(他們在本地的變化不會被部署)

支持gitlab hook, 可配置版本庫和分支

支持一個push event, 同時往多個目錄部署

支持手動在命令行觸發(fā)

支持網(wǎng)頁界面操作

軟件架構(gòu) 準備

目錄A, 用來存放git分支

目錄B, 運行網(wǎng)站的代碼目錄

目錄C, 部署用的腳本目錄, C里邊的腳本用來把A里邊的代碼更新同步到B里邊

gitlab, 添加push hook, hook中指定的url可以執(zhí)行C中的代碼

文件說明:
文件名 作用
index_cli.php 入口1: 命令行部署
index_webhook.php 入口2: gitlab push hook觸發(fā)的部署
index_webui.php 入口3: 圖形化界面進行部署
Tool.php 工具類, 用來拉取最新代碼, 找出差異, 同步代碼到目標目錄
msg.log 用來存放部署過程中的輸出或錯誤信息
scripts/ 存放不同項目的部署腳本
目錄C中的腳本使用舉例:

如果存在 scripts/dev.php, 該腳本是為了把develop分支的代碼部署到dev環(huán)境, 那么可以這樣執(zhí)行部署命令: php index_cli.php -p=dev

同樣, 如果存在 scripts/pro.php, 該腳本是為了把master分支的代碼部署到pro環(huán)境, 那么可以這樣執(zhí)行部署命令: php index_cli.php -p=pro

如果要部署指定某兩次commit的變化 php index_cli.php -p=dev -v=1234567..7654321

命令參數(shù)說明:

命令 "index_cli.php -p=dev" 是指index_cli.php 調(diào)用scripts/dev.php 進行部署操作

scripts/dev.php里定義了部署用的路徑配置信息, 自己寫部署腳本時請參考dev.php中的寫法

項目地址

碼云 Summer-PHP-Deploy

待開發(fā)功能

部署前增量備份

增量回退

SQL部署

機器重啟

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/29515.html

相關文章

  • 一套基礎自動部署搭建過程

    摘要:問題背景公司初創(chuàng)技術(shù)團隊,沒有任何基礎設施的情況下,需要搭建一系列管理以及自動化部署等工具所以引發(fā)了下面一系列的部署過程,歷時兩天,中間也是碰到各種問題,但最終把基本工具全部搭建成功,耶,下面帶大家一起看下此次搭建過程。 問題背景 公司初創(chuàng)技術(shù)團隊,沒有任何基礎設施的情況下,需要搭建一系列code管理以及自動化部署等工具....所以引發(fā)了下面一系列的部署過程,歷時兩天,中間也是碰到各種...

    mzlogin 評論0 收藏0
  • GitLab [Webhooks] 實現(xiàn)自動化服務器部署

    摘要:簡介我們在部署我們的應用時我們一般會尋求一些云平臺服務器部署當然也可以直接在服務器里拉取遠程倉庫的代碼當然我們也可以實現(xiàn)通過鉤子來實現(xiàn)服務器與遠程倉庫代碼的同步這樣一來我們在本地提交功能分支到倉庫中倉庫也會同步到服務器這樣我們就無需自己手動 簡介 我們在部署我們的web應用時 我們一般會尋求一些云平臺服務器部署 當然也可以直接在服務器里拉取遠程倉庫的代碼 當然我們也可以實現(xiàn)通過Webh...

    roadtogeek 評論0 收藏0
  • 如何使用GitLab和Rancher構(gòu)建CI/CD流水線 – Part 2

    摘要:第一部分的內(nèi)容介紹了如何部署配置和確保在的運行。這一部分中,我們將介紹如何使用構(gòu)建容器,以及如何使用容器配置項目。除此之外,我們還將涉及如何用建立容器并部署到上。 這是我們使用GitLab和Rancher構(gòu)建CI/CD流水線系列教程的第二部分。第一部分的內(nèi)容介紹了如何部署、配置和確保GitLab在Rancher的運行。這一部分中,我們將介紹如何使用GitLab CI Multi-Run...

    maybe_009 評論0 收藏0
  • Cube完結(jié)篇:實踐指南之CD持續(xù)部署

    摘要:本期內(nèi)容是結(jié)合在的持續(xù)部署流程,實現(xiàn)從代碼至到部署應用至中全自動的持續(xù)部署。編寫自己的命令如果有困難,可以加群申請源代碼示例也可以等近期即將發(fā)布的,這樣更香。千呼萬喚始出來,Cube完結(jié)篇來了!今天的內(nèi)容,是持續(xù)部署至Cube掌握前3期教程內(nèi)容搭配第四期使用,你就是全場最靚的仔!朋友們,來咯!上一期我們用云游戲的演示網(wǎng)站介紹了Java應用如何做成鏡像部署至Cube。本期內(nèi)容是結(jié)合Cube A...

    Tecode 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<