Skip to content

自动化部署

提示

此内容还未完结,更新ing...

待完成:加上配图

一、配置服务器

1.1. 腾讯云购买轻量云服务器

.png

1.2. 腾讯云注册域名

.png

二、安装Jenkins

后续添加,暂时不表。

三、配置Jenkins

3.1. 插件安装

前往Dashboard-->系统管理-->插件管理中-->Available plugins中搜索Gitee插件进行安装,点击Download now and install after restart下载之后重启Jenkins。

3.2. 添加Gitee链接配置

1、前往Dashboard-->系统管理-->系统配置中的Gitee中进行配置

2、在 链接名 中输入你想要的名字;

3、Gitee 域名 URL 中输入Gitee完整 URL地址: https://gitee.com

4、证书令牌中配置Gitee APIV5 私人令牌,点击添加-->Jenkins

​ a)Domain 选择 全局凭据

​ b)类型 选择 Gitee API 令牌

​ c)范围 选择你需要的范围,这里我选择的是全局

​ d)Gitee APIV5 私人令牌 输入你的Gitee私人令牌,获取地址:https://gitee.com/profile/personal_access_tokens

​ e)ID, 描述 中输入你想要的 ID 和描述即可。

5、证书令牌 选择配置好的 Gitee API 令牌

6、点击 高级 ,可配置是否忽略 SSL 错误(视您的Jenkins环境是否支持),并可设置链接测超时时间(视您的网络环境而定)

7、点击 测试链接 测试链接是否成功,如失败请检查以上 3,5,6 步骤。

3.3. 新建构建任务

Dashboard-->新建任务,在任务名中输入名称,我这里输入的是wangmt-notes,然后点击下方构建一个自由风格的软件项目,之后点击确定即可。

3.4. 任务Gitee链接配置

新建任务完成后,前往构建的任务中,点击配置进入任务配置页面,在General中选择刚刚配置好的Gitee链接。

3.5. 源码管理配置

新建任务完成后,前往构建的任务中,点击配置进入任务配置页面,在源码管理中点击Git

1、然后在Repository-->Repository URL中输入你的仓库地址。

2、在Repository-->Credentials添加Git仓库对对应的凭据,可选择Username with password凭据,也可选择ssh对应的SSH Username with private key凭据,我这里选择的是SSH Username with private key,需要Username可素以起,然后点击Enter directly ,之后点击add增加ssh私钥。

3、然后在Repository-->高级按钮下配置Nameorigin,配置Refspec+refs/heads/*:refs/remotes/origin/*

4、在Branches to build中添加origin/${giteeSourceBranch}

3.6. 触发器配置

新建任务完成后,前往构建的任务中,点击配置进入任务配置页面,在构建触发器中选择Gitee webhook 触发构建

勾选Gitee 触发构建策略-->推送代码Gitee 触发构建策略-->新建 Pull Request

勾选构建指令过滤-->无

勾选PR不要求必须测试过滤构建

勾选Forced build when delete branch or tag

勾选过滤已经构建的 Commit 版本

勾选允许触发构建的分支-->允许所有分支构建触发

补充Gitee WebHook 密码,密码获取可查看四、配置Gitee项目中的WebHooks

3.7. 构建后步骤配置

新建任务完成后,前往构建的任务中,点击配置进入任务配置页面,在构建后操作中增加构建后操作步骤

增加将构建状态评论到 Gitee Pull Request 中,可将仅为构建失败发表评论为构建成功自定义评论内容为构建失败自定义评论内容为构建中断自定义评论内容为构建不稳定自定义评论内容均勾选上。

增加当构建成功自动合并GiteePull Request

四、配置Gitee项目中的WebHooks

进入源码管理配置中设置的Gitee项目中,进入管理-->WebHooks

点击添加 WebHook, URL 填写 [3.6. 触发器配置](#3.6. 触发器配置)中Gitee webhook 触发构建,需要在 Gitee webhook 中填写 URL: http://post.dom:port/gitee/notes 中所示 URL.

密码填写:触发器配置[3.6. 触发器配置](#3.6. 触发器配置)的 WebHook密码,不设密码可以不填

勾选 PUSH, Pull Request

五、安装nodejs

5.1. 插件安装

前往Dashboard-->系统管理-->插件管理中-->Available plugins中搜索nodejs插件进行安装,点击Download now and install after restart下载之后重启Jenkins。

5.2. 配置全局nodejs

前往DashBoard-->系统管理-->全局工具配置NodeJS-->新增NodeJS

NodeJS别名添加为:v16.15.1,因为我要安装v16.15.1,所以取名为v16.15.1方便后续选择

选中自动安装,然后在 Install from nodejs.org-->版本中下拉选择v16.15.1,点击保存

5.3. 配置任务中构建环境

前往构建的任务中,点击配置进入任务配置页面,在构建缓环境中勾选Provide Node & npm bin/ folder to PATH选项。

NodeJS Installation下拉选择之在全局增加的NodeJS,其余选项保持默认即可。

六、配置Jenkins打包之后nodejs操作

新建任务完成后,前往构建的任务中,点击配置进入任务配置页面,在Build Steps中选择增加构建步骤,输入命令

shell
npm index set registry https://registry.npmmirror.com
npm install pnpm@8 -g
pnpm install
pnpm docs:build
# 打包 build 后的文件
cd ./.vitepress/dist/
tar -zcvf dist.tar.gz *
# 移动 build 后的压缩包到 nginx 托管目录下。
sudo mv dist.tar.gz /http/wangmt/notes
# 删除 build 后的文件
cd ../../
rm -rf .vitepress/dist/
# 进入托管目录下
cd /http/wangmt/notes
# 解压
sudo tar -zxvf dist.tar.gz
# 删除压缩包
sudo rm -rf dist.tar.gz