hudson操作

发布 2021-03-06 16:22:28 阅读 7583

hudson自动部署操作手册。

作者:王忠豪。

日期:2012-04-31

****:136***

hudson 是一个可扩展的持续集成引擎。所谓可持续集成,简单的说,就是能够帮助我们实现项目的自动部署、自动测试。我们这里只使用到hudson的自动部署功能,其它的不做介绍。

所谓自动部署就是能够根据我们在hudson中的配置,实现项目的自动更新、打包、发布。

要使用hudson就必须安装hudson。hudson有两种安装版本。一种是linux下的rpm包,另一种是war包。我们这里仅介绍war包的使用方法。

在**war包后,只需要将他部署到任意一个servlet容器中,并通过url访问即可。此处,我们以tomcat为例,端口8080。

将放到本地的tomcat/webapps目录下,然后启动tomcat。

打开浏览器,输入如下地址:http://localhost:8080/hudson/。如果出现如下界面,就说明hundson配置成功了。

和使用所有软件都需要配置默认参数一样,使用hudson也需要配置一些基本参数。由于hudson的许多参数都已经有了默认值,而且这些默认值完全能够满足我们的基本需求,所以下面只对一些尤为重要的配置参数进行说明。

点击页面左边的【系统管理】按钮,进入系统管理界面。

点击系统管理界面中的【系统设置】按钮,进入系统设置界面。

作为一个j**a工程,jdk环境是必备的。所以我们必须在hudson中配置jdk。

点击页面中的【新增jdk】按钮,并按下图方式配置jdk。

由于在部署时,hudson可能需要使用ant对项目进行编译、打包等操作,所以我们必须在hudson中配置ant运行环境。当然,在此之前,请确保系统中已经拥有ant的运行环境。

点击页面中的【新增ant】按钮,并按下图配置ant。

在自动部署的过程中,hundson需要从**管理器上获得最新的**,所以我们必须为hudson指定一种**管理器。这里我们使用svn作为默认**管理器,并给出相应的配置。请用户根据自己的实际情况作出必要的修改。

hudson为我们提供了邮件提醒功能,如果用户需要使用该功能,可以配置“邮件通知”模块。例子如下:

hudson是以任务的形式来管理用户的部署工作的。也就是说,每一个项目的部署工作,在hudson中就是一个任务(job)。下面我们就详细说明如何在hundson中创建一个任务。

点击hudson主页面左边的【新建任务】按钮,进入任务创建向导。

在任务向导中,为我们提供了四种创建方法。在这里我们选择第一项,第一项的意思就是,从头创建一个新的任务。

点击【ok】按钮,完成任务的创建,进入,任务设置界面。

在默认情况下,hudson会为我们保存所有的任务部署记录,但通常情况下,我们只需要最近几次的部署记录就可以了。此时,我们可以通过配置“discard old builds”属性进行控制。

hudson可以让我们按天或按次数保存之前的部署信息,这里我们设置为保存最近10次部署记录。

hudson在自动部署之前,通常需要去**管理器上将项目的最新**更新下来,所以我们需要将项目的**管理器地址告诉hudson。

这里我们以svn为例。

首先,我们需要输入项目的svn地址,也就是”repository url”。

其次,我们需要告诉hudson使用哪个账号去svn上更新**。点击【update credentials】链接,进入svn权限认证页面。选择用户名/密码方式认证。

然后输入正确的用户名、密码即可。

在“build trigger”中,hudson为我们提供了多种部署任务的触发器。这里我们选择定时部署。

所谓定时部署,也就是让hudson在指定的时间点去执行部署任务。这里任务的时间格式和linux中的crontab格式相同,如果用户有疑问可以查看crontab的相关介绍。

这一步是整个配置过程中最关键的一步,它决定了hudson部署的整个过程。包括如何编译、如何部署、部署地点等等。

hudson可以执行许多种不同的系统命令或脚本,比如:shell, bat, ant等等。

下面我们假设有如下一种网络情况,对此配置部署过程:

hudson在192.168.1.

1的机器上,hudson中有一个叫做test的任务,我们需要将这个任务打包成war包,并将他部署到192.168.1.

2的tomcat中。

tomcat路径是/opt/tomcat。

1. 编译文件。

这里我们选择使用ant脚本来编译文件。配置如下:

注意,如果用户不输入ant脚本的位置,那么hudson将默认使用任务所在工程中的进行编译。

2. 远程拷贝。

ant脚本编译后将生成一个包,我们需要将这个war包拷贝到192.168.1.2这台主机的tomcat中。命令如下:

scp root@192.168.1.2:/opt/tomcat/

3. 启动tomcat。

sshroot@192.168.1.2 'bash /opt/tomcat/bin/'

注意:使用scp,ssh等命令时,由于需要输入密码,所以在默认情况下,我们是无法通过hudson执行scp和ssh命令的。为了执行这两个命令,我们需要对linux进行适当的配置,具体配置请参看附录。

在linux系统中,ssh是远程登录的默认工具,因为该工具的协议使用了rsa/dsa的加密算法。该工具做linux系统的远程管理是非常安全的。telnet,因为其不安全性,在linux系统中被搁置使用了。

ssh有一套很有用的工具,其中的ssh-keygen可以用来生成private和public密钥。将生成的public密钥拷贝到远程机器后,可以使ssh到另外一台机器的登陆不用密码。具体方法如下。

1) 在本地机器/root中执行下命令(注意:此步骤是针对机器中第一次使用ssh-keygen命令的情况,如果已经执行过该命令,请直接执行第二步)

ssh-keygen -t dsa

默认将在/root/.ssh目录生成两个文件,id_dsa和id_

2) 将id_拷贝到远程机器,并且将id_的内容添加到目标主机的~/.ssh/authorized_keys中。

cat id_ >authorized_keys

注意:目录。ssh和文件authorized_keys的权限必须是600.

完成这些工作后,用户从本地机器到远程机器的登录就不用密码了。

物流操作员操作内容

3.3.3 系统信息。包括托运单据的填写,系统对接要求,信息提供方式等。3.3.3.1 托运单据的填写 不同的托运单位因为系统的要求不同,所以对托运单据的填写要求也是不一样的。航空运单的填写,主要注重的是 收货人,联系 体积,重量,货物品名等。收货人有一个字错误哪怕是多一个点都会造成提货提不出来的现...

操作操作系统大型作业

所在班级 0310401班。学生学号 031040109 学生姓名 李雨晴。题目 生产者和消费者问题 任课教师 李艳老师。完成日期 2012年12月2日 目录。操作系统课程设计 1 一 课程的地位 目标和任务 3 二 课程设计的基本要求 3 1.课程设计要求 3 2.学习要求 3 三 题目分析 3 ...

2023年实验操作考试操作步骤

实验一 测盐水密度 12分 1.将天平放在水平桌面,调节游码使游码左侧与游码标尺左端的零刻线对齐。调节平衡螺母 左偏右调,右偏左调 使指针指在分度盘的正 或是在 刻线两侧等幅度摆动 2.将倒有适量盐水的小烧杯置于左盘,在右盘加减砝码,必要时移动游码 直至天平平衡,测出 烧杯和盐水的总质量m1 g 此...