ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Jenkins自由风格项目构建

2022-09-13 08:02:06  阅读:315  来源: 互联网

标签:容器 构建 etc python apk 风格 jenkins Jenkins


一、创建job

在Dashboard中新建job:

输入任务名:

 下面可以选择其中的一种用来构建项目比如第一个自由风格的软件项目。

二、项目配置

当选择第一个自由风格构建项目后,构建项目分成下面几部分:

  • General
  • 源码管理
  • 构建触发器
  • 构建环境
  • 构建
  • 构建后操作

1、General

包含很多项目的基本信息,比如项目描述等,那么常用的如丢弃旧的构建就是随着构建项目的增多,可以适当的丢弃掉过时的构建,有两种策略:

  • 保持构建的天数
  • 保持构建的最大个数

 2、源码管理

源码一般是从git仓库拉取,所以需要完成以下

  • 创建凭证(如:gitlab的账号密码)
  • 仓库地址
  • 指定分支
  • jenkins服务器上安装git

如果没有凭证就添加一个全局的凭证,注意写上描述,后期可能有很多,以便于区分;对于指定分支,默认是master,修改为指定分支;另外就是jenkins服务器上需要安装git,因为是通过git clone的方式同步源码。

3、构建触发器

当第二步完成后我们可以进行手动构建,这样就会拉取代码,但是这样需要人工干预,那么如何实现自动化呢?此时需要构建触发器,也就是何时执行这个任务,它的方式也有很多:

  • 其他工程构建后触发 
  • 定时构建
  • GitHub hook trigger for GITScm polling
 比如采用定时构建,通过日程表的方式:分、时、日、月、周
# 每天的12点47分执行这个任务的构建
47 12 * * *

但是需要注意的是容器中的时间一定要与宿主机上的时间保持一致,所以:

# 进入容器
docker exec -it ef59 bash

# 容器中创建Asia时区文件
echo Asia/Shanghai >/etc/timezone

# 将宿主机中的localtime拷贝到容器中
docker cp /usr/share/zoneinfo/Asia/Shanghai ef59215fc5b6:/etc/localtime

# 重启服务
docker restart ef59

另外最好就是在jenkins个人设置中将时区进行设置,它是默认的。

4、构建

上面的过程就是定时将代码从git仓库同步过来,这一步是执行仓库中的代码,它也有很多选项:

显然同步的代码在Linux服务器上,所以选择执行shell,那么执行的目录就是当前同步项目的根目录下,即:

那么我们可以执行main.py文件,这个python解释器使用的就是运行脚本所在服务器的解释器,比如当前我是在jenkins服务器的容器中运行,所以容器中必须有python的环境,那么在构建时可以进入容器然后安装python,构建脚本:

  • 手动构建

需要先在宿主机上手动进入到容器然后进行安装:

# 进入容器
docker exec -it  `docker ps | awk '{print $1}' | xargs | awk '{print $2}'` bash

# 注意容器系统,apk安装python
echo "https://mirrors.ustc.edu.cn/alpine/v3.6/main/" > /etc/repositories
echo "https://mirrors.ustc.edu.cn/alpine/v3.6/community/" >> /etc/apk/repositories
apk update
apk add python3

# 执行仓库程序
python3 main.py
  • 自动构建

在构建时就是在容器中运行的,所以直接安装python,然后运行程序即可:

# 注意容器系统,apk安装python
echo "https://mirrors.ustc.edu.cn/alpine/v3.6/main/" > /etc/apk/repositories
echo "https://mirrors.ustc.edu.cn/alpine/v3.6/community/" >> /etc/apk/repositories
apk update
apk add python3

# 执行仓库程序
python3 main.py

 5、构建后操作

当构建完成后需要做的一些动作,比如发送邮件通知等:

 但是这是jenkins自带的不可编辑的邮件通知,所以最好的时安装一个可编辑的邮件通知插件,在插件中选择 Email Extension 进行安装:

接着就是需要在系统管理-->系统配置中进行邮件服务器、发送者信息信息,然后在job中配置发件人(与系统配置中的的发送者邮箱一致)即可,注意的时发送这邮箱配置成管理员邮箱,在jenkins中邮箱有且只有一个。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

标签:容器,构建,etc,python,apk,风格,jenkins,Jenkins
来源: https://www.cnblogs.com/shenjianping/p/16686223.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有