跳至主要內容

〔Jenkins〕我失败的自动化构建

大林鸱大约 2 分钟DevOpsCI/CD自动化工具

作者当前的博客是自己在维护,虽然代码托管在 Gitee 上面,但是仍然是作者自己一个人维护。作者的需求是:手动启动部署在本机的 Jenkins 的构建命令,之后 Jenkins 负责替我 build 前端项目并上传到云服务器中,实现版本发布。

为什么会出现这种需求呢?

  • 我的云服务器使用的 CentOS7 操作系统,支持的 nodejs 最高版本只能到 18,而版本 18 不能够打包我的前端,它太低了,而升级它的代价太大了;
  • Gitee 的 WebHook 需要使用公网 IP 或域名,而我本机不具备这个条件;

提示

我耗费了两个小时,没有调通,放弃了!!!

我的步骤

  1. 在 windows10 上面生成 ssh
ssh-keygen
  1. 将生成的 id_rsa.pub 文件内容拷贝到云服务器的 authorized_keys 中

与服务器互换密钥后,ssh 已经能够免密登录到云服务器。问题是,不知道为什么,使用 scp 命令执行后不传输数据也不结束,一直是下图状态。

scp命令不传输不结束
scp命令不传输不结束
  1. 为 Jenkins 添加凭证

第二步骤操作没成功后,我尝试在 Jenkins 中执行 scp 命令,所以我将 ssh 凭证添加到 Jenkins,但是也是堵塞在 scp 步骤。以下是我的运行脚本,分为了三个 windows 批处理命令。

cd /d D:\workspace\--\02.code\++
yarn run docs:build
cd /d D:\workspace\--\02.code\++\src\
del dist.tar
tar -cvf dist.tar dist
cd /d D:\workspace\--\02.code\++g\src\
dir
scp ./dist.tar root@8.-.-.-:/opt

我的使用

本想用 Jenkins 解决持续构建持续部署,但是没有成功。我只能用我的笨方法了,我平常是使用 Beyond Compare + SecureCRT。

上次编辑于: