Jenkins 学习

Jenkins install

https://jenkins.io/zh/doc/book/installing/

为了简单使用,同时也为了保持与保持与linux下的一致性。我在自己的win10机器上使用了Docker安装Jenkins.

docker run ^
  -u root ^
  --rm ^
  -d ^
  -p 8080:8080 ^
  -p 50000:50000 ^
  -v jenkins-data:/var/jenkins_home ^
  -v /var/run/docker.sock:/var/run/docker.sock ^
  --name jenkins-blueocean ^
  jenkinsci/blueocean

一个命令 Jenkins就安装好了。

下面就要开始初始配置了。

https://jenkins.io/zh/doc/book/installing/#setup-wizard

访问 http://localhost:8080

在页面中输入日志中输出的密码。
如果是 docker 的版本可以使用 docker logs 命令来看。

解锁后,系统会要求创建一个系统管理员账号。 按照指示创建好后。 Jekins的安装就完成了。

创建第一条Pipeline

https://jenkins.io/zh/doc/pipeline/tour/hello-world/

这里整个步骤很简单,难点在于在添加 pipeline 的时候,要选择对应的源代码管理仓库, 这里要做好对应的配置。 这里我选用 github .

在Github的配置中会要求写入 Credentials , 这里要在Github中创建一个 Personal access token。

Setting --> Developer Setting
在这里插入图片描述

Jenkinsfile 实战

https://jenkins.io/zh/doc/pipeline/tour/hello-world/

在github对应的项目中创建 Jenkinsfile , commit 后可以使用 Jenkins 关联后运行。

用pyinstall 构建 python 应用

https://jenkins.io/zh/doc/tutorials/build-a-python-app-with-pyinstaller/

这里要求使用如下的命令运行 Jenkins 镜像。

docker run \
  --rm \
  -u root \
  -p 8080:8080 \
  -v jenkins-data:/var/jenkins_home \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v "$HOME":/home \
  jenkinsci/blueocean

这里与我们以前运行的 Jenkins 不同的是少了 -v "$HOME":/home 这个参数。
动态在已经运行的容器上加载volume比较复杂,大家可以自行搜索。 这边直接停下容器重新用新的参数启动。

docker run --rm -d -u root -p 8080:8080 -p 50000:50000 -v jenkins-data:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock -v C:\N-20HEPF167W1B-Data\bghuang:/home  --name jenkins-blueocean jenkinsci/blueocean

这里注意一个问题就是我遇到上面的命令运行成功没有任何错误,但实际上目录没有链接上。 登到容器中你会发现/home目录是空的。

经过搜索后我发现这个问题是由于我改过系统用户的密码造成。
相关文章:

https://blog.csdn.net/ap10062kai/article/details/79232582

重置后登进容器我们就可以看到目录正常attech了。

在这里插入图片描述

按照帮助文档上的步骤执行,Test cases的结果可以从Blue Ocean的界面中的 tests tab中看到, 而生成的可执行文件在 Artifacts tab中可以看到。

这个case中用了 python 的 unittest. 具体使用方法可以参考如下链接。

https://docs.pytest.org/en/latest/unittest.html

pytest supports running Python unittest-based tests out of the box. It’s meant for leveraging existing unittest-based test suites to use pytest as a test runner and also allow to incrementally adapt the test suite to take full advantage of pytest’s features.

https://blog.csdn.net/yyang3121/article/details/80624168

https://blog.csdn.net/u013378642/article/details/82386226

https://blog.csdn.net/xiaoquantouer/article/details/75089200

https://www.liaoxuefeng.com/wiki/1016959663602400/1017604210683936

https://www.cnblogs.com/xiaoxiaolvdou/p/9503090.html

https://www.jianshu.com/p/932a4d9f78f8

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值