国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

圖解 Jenkins Pipeline 的前端自動化部署,用上后真香!

開發 前端
本文通過圖解+代碼的方式講解了前端自動化部署的步驟,文中的腳本針對前端的三個模塊進行打包,比較耗時,所以后續可以優化的地方是支持選擇部署前端的不同模塊。

一、Jenkins 前端部署思路

1.1 整體架構圖

圖片圖片

1.2 部署步驟

圖片圖片

二、Pipeline和自由風格對比

Jenkins是一個開源的自動化服務器,它可以幫助自動化各種任務,包括構建、測試和部署軟件。

上次我們講解了如何通過 Jenkins 的自由風格的軟件項目來配置前端的自動化部署,如下圖所示,如何選擇自由風格的軟件項目。優點就是簡單!

圖片圖片

這次我們將講解如何通過流水線(Pipeline)方式來部署前端項目。優點就是更加靈活!如下圖所示,就是選擇 Pipeline 方式。

圖片圖片

在Jenkins中,有兩種主要類型的任務:Pipeline任務和自由風格項目(Freestyle project)。

  1. Pipeline任務:

Pipeline任務是Jenkins 2.0引入的一個新特性,它使用Jenkinsfile來定義整個構建流程。

Jenkinsfile是一個文本文件,使用Groovy語言的DSL(領域特定語言),可以定義構建的各個階段和步驟。

Pipeline任務支持復雜的構建流程,包括多個階段和步驟,以及并行執行等高級功能。

Pipeline任務可以很容易地與源代碼管理系統集成,支持持續集成(CI)和持續交付(CD)。

  1. 自由風格項目:

自由風格項目是Jenkins早期版本中的主要任務類型,允許用戶通過Jenkins的Web界面配置構建步驟。

這種類型的項目沒有固定的構建流程定義方式,用戶可以手動添加構建步驟、配置插件和參數等。

自由風格項目適合快速設置簡單的構建任務,但對于復雜的構建流程,可能不如Pipeline任務靈活和強大。

兩者的主要區別包括:

定義方式:Pipeline任務通過Jenkinsfile定義,而自由風格項目通過Jenkins的Web界面配置。

靈活性和擴展性:Pipeline任務更加靈活,支持復雜的構建流程和高級功能,如并行執行和模板化。

集成度:Pipeline任務更容易與源代碼管理系統集成,實現自動化的CI/CD流程。

學習和使用難度:Pipeline任務可能需要用戶學習Jenkinsfile的語法和DSL,而自由風格項目則更直觀,易于上手。

提示:Pipeline 任務代表了Jenkins的未來方向,提供了更高級的自動化構建能力,而自由風格項目則適合快速設置簡單的構建任務。隨著Jenkins的發展,越來越多的用戶和組織傾向于使用Pipeline任務來實現更高效的自動化流程。

三、Pipeline 核心腳本

3.1 獲取 Git 代碼分支

3.1.1 Git 分支插件

用了一個插件 gitParameter,可以獲取 git 倉庫的分支,部署的時候,可以選擇分支。如下圖所示,Git 倉庫有 develop 和 master 分支,默認選中 develop 分支。

圖片圖片

圖片圖片

3.1.2 Git 環境變量

圖片圖片

3.1.3 獲取 Git 分支代碼

圖片圖片

這個步驟中有一一行關鍵的代碼,可以通過 Git 插件獲取選擇的 Git 分支。

圖片圖片

3.2 拷貝依賴包

因為 node_modules 不會上傳到 git 倉庫,所以我們需要提前準備好。

而我們項目我是先在有網的 Linux 服務器上用 npm install 命令下載的依賴包,然后手動壓縮拷貝到 jenkins 服務器的 passjava 目錄。

當執行部署的時候,會從 passjava 目錄將 node_modules 壓縮包拷貝并解壓到 jenkins 的當前工作目錄。

圖片圖片

3.3 編譯代碼

編譯前端代碼可以用 npm run build xx 命令,然后將編譯后的 dist 目錄壓縮。

圖片圖片

3.4 備份代碼

將 web 服務器上多個前端項目移動到備份目錄 web-bak 。

圖片圖片

3.5 上傳代碼

將編譯后的代碼包上傳到 web 服務器。

圖片圖片

3.6 更新代碼

將 dist 壓縮包解壓,然后將多個前端工程拷貝到 web 目錄。如 passjavabase, passjava-channel, project-contract 目錄拷貝到 passjava-web-micro 目錄。

圖片圖片

3.7 清理代碼

清理 web 服務器上備份的代碼。

以下命令是查找并刪除指定路徑下超過7天未修改的目錄。

圖片圖片

這條命令會找到 /nfs-data/passjava/web-bak/ 目錄下所有超過7天未修改的子目錄,并將其打印出來,然后刪除這些目錄。

  1. 查找超過7天未修改的目錄:

-mindepth 1:確保查找從指定目錄的子目錄開始,不包括指定的根目錄。

-maxdepth 1:限制查找僅在指定目錄的第一層子目錄中進行。

-type d:只考慮目錄,不包括文件。“-type -f” 只考慮文件,不包括目錄。

-mtime +7:篩選出修改時間超過7天的目錄。

-print:打印出這些目錄的路徑。

  1. 刪除找到的目錄:

-exec rm -rf {} +:對找到的每個目錄執行 rm -rf 命令,遞歸且強制刪除該目錄及其內容。

該步驟的完整代碼如下:

圖片圖片

3.8 郵件通知

詳見筆者之前寫的一篇:持續集成:Jenkins Pipeline 郵件通知

四、總結

通過使用 Jenkins Pipeline 進行前端自動化部署,團隊可以更加高效地管理和部署前端應用程序,減少人為錯誤和手動操作帶來的風險,提升整體的開發和部署效率。

本文通過圖解+代碼的方式講解了前端自動化部署的步驟,文中的腳本針對前端的三個模塊進行打包,比較耗時,所以后續可以優化的地方是支持選擇部署前端的不同模塊。

責任編輯:武曉燕 來源: 悟空聊架構
相關推薦

2025-02-13 07:58:21

CI/CDJenkinsGitLab

2020-12-08 06:20:49

前端重構Vue

2020-10-14 10:30:07

前端Node代碼

2021-05-07 08:03:15

微服務JenkinsGitHub項目

2013-09-03 09:58:51

Web前端

2022-09-14 10:00:12

前端自動化測試

2015-02-04 09:17:38

亞馬遜AWS云自動化

2014-03-11 11:10:10

PowerShell自動化腳本

2024-12-16 07:10:00

DockerDrone開發

2023-09-14 15:15:36

2018-01-31 14:39:45

Data Pipeli數據分析數據工作

2021-06-30 19:48:21

前端自動化測試Vue 應用

2022-11-15 17:07:40

開發自動化前端

2024-09-13 15:32:18

2023-04-06 07:09:25

自動化部署Actions

2013-11-27 11:34:43

自動化部署Python

2017-01-06 10:54:03

AndroidiOSJenkins

2024-01-24 18:50:21

WebFTP服務器

2017-12-17 21:58:18

2022-10-09 11:07:40

物聯網如自動化
點贊
收藏

51CTO技術棧公眾號

国产一区二区三区视频免费| 国产久一道中文一区| 在线视频手机国产| 日韩高清在线不卡| 久久这里只有精品99| 在线的色视频| 久久久蜜臀国产一区二区| 久草热久草热线频97精品| 国产成人福利av| 精品视频中文字幕| 黄视频在线观看免费| 国产精品欧美久久久久无广告| 色女孩综合网| 色琪琪久久se色| 欧美精品videosex牲欧美| free性欧美| 欧美主播一区二区三区| 激情五月色综合亚洲小说| 国产精品996| 欧美精品123| 亚洲最新av| 国产精品久久久久久久久久久久久久 | 亚洲男人都懂的网站| 国产午夜精品一区二区三区视频 | 男人天堂亚洲天堂| 色狠狠色狠狠综合| 香蕉视频色版| 亚洲乱码精品一二三四区日韩在线| 国产妇女馒头高清泬20p多| 免费人成精品欧美精品| 日本高清视频一区二区三区 | 色综合91久久精品中文字幕 | 成人免费视频一区| 亚洲小视频在线播放| 麻豆精品国产传媒mv男同| 欧美日韩国产精品一区二区| 亚洲欧洲午夜| 狠狠综合久久av| 99视频一区| 日韩国产伦理| 久久99精品久久久久久| 亚洲欧美日韩精品综合在线观看| 免费永久网站黄欧美| 久久国产精品一区二区三区四区| 国产精品国码视频| 国产精品综合久久久久久| 亚洲经典三级| 欧美亚洲免费高清在线观看| 日本亚洲天堂网| gogogo免费高清日本写真| 国内成人精品2018免费看| 女女百合国产免费网站| 国产精品69毛片高清亚洲| 日日碰狠狠添天天爽超碰97| 久久久久久久久久久久久夜| 台湾十八成人网| 午夜精品一区二区三区电影天堂 | 欧美电影三区| 亚洲一区二区三区在线免费观看| 最新国产精品| 欧美日韩一区二区视频在线观看| 久久精品二区亚洲w码| www.成年人视频| 国产欧美1区2区3区| 黄页网站在线播放| 欧美一区中文字幕| 欧美亚洲大片| 日本最新高清不卡中文字幕| 国产精品久久久久一区二区三区厕所 | 伊人久久在线观看| 国产亚洲欧美日韩在线一区| 中国动漫在线观看完整版免费| 在线电影一区二区三区| 欧美日韩视频免费观看| 久久久视频在线| 好看不卡的中文字幕| 国产精品jizz在线观看老狼| 国产午夜精品久久久久久免费视| 日本aa大片在线播放免费看| 欧美日韩欧美一区二区| 成人做爰免费视频免费看| 国产精品电影观看| 麻豆一区二区三| 成人伊人222| 日韩片之四级片| 动漫一区二区三区| 97人人模人人爽人人少妇| 精品亚洲欧美一区| 婷婷丁香六月天| 日韩经典中文字幕在线观看| 最新精品国偷自产在线| 日韩在线三级| 一区二区三区不卡视频| 久草在线视频资源| 欧美最猛性xxxxx(亚洲精品)| 亚洲一区二区三区四区五区午夜| 日韩精品xxxx| 欧美二区三区91| 欧美调教在线| 一区视频二区视频| 亚洲小说欧美激情另类| 亚洲性受xxx喷奶水| 成人做爽爽免费视频| 国产成人精品亚洲日本在线桃色| 国产超碰精品在线观看| 国产午夜精品一区二区三区| 中文无码久久精品| 97公开免费视频| 精品久久久久久久久久久久包黑料| 国产一区二区三区亚洲| 精品一区二区成人免费视频| 亚洲aⅴ怡春院| 粉嫩av国产一区二区三区| 欧美12av| 亚洲成年人影院| 日本少妇精品亚洲第一区| 亚洲不卡1区| 91久久精品一区二区三| 另类春色校园亚洲| 草b视频在线观看| 精品久久久久av影院| 欧美99久久| 国产精品粉嫩av| 久久手机精品视频| 国产伦精品一区二区三区在线观看| 国产福利在线看| 国产中文字幕亚洲| 亚洲欧美国产77777| 粉嫩av国产一区二区三区| 亚洲美女搞黄| 91精品国产手机| 欧美天堂亚洲电影院在线观看| 7878视频在线观看| 九九热这里只有精品6| 成人免费av网站| 日韩欧美精品一区二区三区| 看欧美日韩国产| 欧美日韩综合在线免费观看| 久久精品国产www456c0m| 8x8x8x视频在线观看| 国产69精品久久久久99| 99热在这里有精品免费| 黄瓜视频成人app免费| 一级全黄肉体裸体全过程| 精品国产麻豆免费人成网站| 一本色道久久综合一区 | 538国产精品一区二区免费视频| 成人福利视频在线看| 日本三级一区| 一区二区三区四区五区精品| 日韩一区二区三区高清免费看看| 午夜国产欧美理论在线播放| 在线观看免费网站| 91久久久久久久久久久| 亚洲成人一区二区| 亚洲成人99| av在线三区| 欧美在线日韩精品| 亚洲国产精品免费| 国产精品资源网站| 成人噜噜噜噜| 在线观看免费播放网址成人| 欧美专区中文字幕| 精品国产91久久久久久| 亚洲精品国产偷自在线观看| av高清不卡在线| 国产精品女同互慰在线看| 澳门精品久久国产| 素人啪啪色综合| a在线免费观看| а√天堂8资源中文在线| 在线观看黄av| 成人性生交大片免费看网站 | 国产女主播在线| 亚洲乱码国产乱码精品天美传媒| 国产精品99久久久久久白浆小说| 91久久久亚洲精品| 97免费视频观看| 校园春色 亚洲色图| 午夜在线免费观看视频| 一区二区三区四区视频免费观看| 三级电影一区| 国产一区二区h| 亚洲国产精品久久人人爱| 欧美sm美女调教| 一区二区三区视频免费| 欧美一区二区免费视频| 色婷婷精品大在线视频 | 国产精品日本一区二区不卡视频 | 网友自拍视频在线| 欧美亚洲另类色图| 欧美黑人3p| 精品欧美日韩在线| 好吊色欧美一区二区三区视频| 国产日韩精品一区二区| 国产欧美亚洲精品| 久久久99久久精品女同性| 欧美大成色www永久网站婷| 欧美一区二区三区四区在线观看| 久久精品视频在线免费观看|