DEVOPS技术实践_02:jenkins自动构建项目
一、用户名密码错误
打开jenkins发现用户名密码错误,解决
1.1 找到config.xml文件
[root@jenkins-master ~]# ll -a
drwxr-xr-x. root root Apr : .jenkins
[root@jenkins-master ~]# cd .jenkins/
[root@jenkins-master .jenkins]# ll
-rw-r--r--. root root Apr : config.xml #找到这个文件
-rw-r--r--. root root Apr : hudson.model.UpdateCenter.xml
-rw-r--r--. root root Apr : hudson.plugins.emailext.ExtendedEmailPublisher.xml
-rw-r--r--. root root Apr : hudson.plugins.git.GitTool.xml
-rw-------. root root Apr : identity.key.enc
-rw-r--r--. root root Apr : jenkins.CLI.xml
-rw-r--r--. root root Apr : jenkins.install.InstallUtil.lastExecVersion
-rw-r--r--. root root Apr : jenkins.install.UpgradeWizard.state
-rw-r--r--. root root Apr : jenkins.model.DownloadSettings.xml
-rw-r--r--. root root Apr : jenkins.model.JenkinsLocationConfiguration.xml
-rw-r--r--. root root Apr : jenkins.security.apitoken.ApiTokenPropertyConfiguration.xml
-rw-r--r--. root root Apr : jenkins.security.QueueItemAuthenticatorConfiguration.xml
-rw-r--r--. root root Apr : jenkins.security.UpdateSiteWarningsConfiguration.xml
-rw-r--r--. root root Apr : jenkins.telemetry.Correlator.xml
drwxr-xr-x. root root Apr : jobs
drwxr-xr-x. root root Apr : logs
-rw-r--r--. root root Apr : nodeMonitors.xml
drwxr-xr-x. root root Apr : nodes
drwxr-xr-x. root root Apr : plugins
-rw-r--r--. root root Apr : secret.key
-rw-r--r--. root root Apr : secret.key.not-so-secret
drwx------. root root Apr : secrets
drwxr-xr-x. root root Apr : updates
drwxr-xr-x. root root Apr : userContent
drwxr-xr-x. root root Apr : users
drwxr-xr-x. root root Apr : war
drwxr-xr-x. root root Apr : workflow-libs
1.2 备份修改文件
[root@jenkins-master .jenkins]# cp config.xml config.xml.bak
[root@jenkins-master .jenkins]# vim config.xml
<?xml version='1.1' encoding='UTF-8'?>
<hudson>
<disabledAdministrativeMonitors/>
<version>2.164.</version>
<installStateName>RUNNING</installStateName>
<numExecutors></numExecutors>
<mode>NORMAL</mode>
<useSecurity>true</useSecurity> #删除
<authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy">
<denyAnonymousReadAccess>true</denyAnonymousReadAccess>
</authorizationStrategy>
<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
<disableSignup>true</disableSignup>
<enableCaptcha>false</enableCaptcha>
</securityRealm>
<disableRememberMe>false</disableRememberMe>
<projectNamingStrategy class="jenkins.model.ProjectNamingStrategy$DefaultProjectNamingStrategy"/>
<workspaceDir>${JENKINS_HOME}/workspace/${ITEM_FULL_NAME}</workspaceDir>
<buildsDir>${ITEM_ROOTDIR}/builds</buildsDir>
<markupFormatter class="hudson.markup.EscapedMarkupFormatter"/>
<jdks/>
<viewsTabBar class="hudson.views.DefaultViewsTabBar"/>
<myViewsTabBar class="hudson.views.DefaultMyViewsTabBar"/>
<clouds/>
<scmCheckoutRetryCount></scmCheckoutRetryCount>
<views>
<hudson.model.AllView>
<owner class="hudson" reference="../../.."/>
<name>all</name>
<filterExecutors>false</filterExecutors>
<filterQueue>false</filterQueue>
<properties class="hudson.model.View$PropertyList"/>
</hudson.model.AllView>
</views>
<primaryView>all</primaryView>
<slaveAgentPort></slaveAgentPort>
<enabledAgentProtocols>
<string>JNLP-connect</string>
<string>JNLP2-connect</string>
<string>JNLP3-connect</string>
</enabledAgentProtocols>
<label></label>
<crumbIssuer class="hudson.security.csrf.DefaultCrumbIssuer">
<excludeClientIPFromCrumb>false</excludeClientIPFromCrumb>
</crumbIssuer>
<nodeProperties/>
<globalNodeProperties/>
</hudson>
1.3 重启jenkins
[root@jenkins-master .jenkins]# ps -ef |grep jenkins
[root@jenkins-master .jenkins]# kill -9 105823
[root@jenkins-master ~]# cd /usr/local/src/
[root@jenkins-master src]# nohup java -jar /usr/local/src/jenkins.war --httpPort=9000 &
1.4 修改安全配置
进入首页>“系统管理”>全局安全配置>启用安全>Jenkins专有用户数据库>保存,如下图:
重新点击首页-系统管理-管理用户
1.5 重新设置密码
登陆成功
二、jenkins自动构建
2.1 创建一个任务
选择保存后填下面信息
使用git,地址要填准确,同时在jenkins的服务器上要安装git,否则会报错
2.2 构建项目
构建完成,点击立即构建
点击#1,打开控制台,看输出消息
2.3 配置Mzven
选择系统管理>全局工具配置>新增Maven
[root@node5 ~]# echo $M2_HOME
/usr/local/maven/apache-maven-3.6.
2.4 在重新构建测试
Started by user unknown or anonymous
Building remotely on slave1 in workspace /var/jenkins/workspace/diy-maven_TEST #构建的机器和构建的位置
No credentials specified
Cloning the remote Git repository
Cloning repository http://172.25.254.131/tester/mvn-test01.git
> git init /var/jenkins/workspace/diy-maven_TEST # timeout=
Fetching upstream changes from http://172.25.254.131/tester/mvn-test01.git
> git --version # timeout=
> git fetch --tags --progress http://172.25.254.131/tester/mvn-test01.git +refs/heads/*:refs/remotes/origin/*
> git config remote.origin.url http://172.25.254.131/tester/mvn-test01.git # timeout=10
> git config --add remote.origin.fetch +refs/heads/*:refs/remotes/origin/* # timeout=10
> git config remote.origin.url http://172.25.254.131/tester/mvn-test01.git # timeout=10
Fetching upstream changes from http://172.25.254.131/tester/mvn-test01.git
> git fetch --tags --progress http://172.25.254.131/tester/mvn-test01.git +refs/heads/*:refs/remotes/origin/*
> git rev-parse refs/remotes/origin/master^{commit} # timeout=10
> git rev-parse refs/remotes/origin/origin/master^{commit} # timeout=10
Checking out Revision 026cbb9df8efcfc15ff98a27f0fa0c255716bc6a (refs/remotes/origin/master)
> git config core.sparsecheckout # timeout=10
> git checkout -f 026cbb9df8efcfc15ff98a27f0fa0c255716bc6a
Commit message: "test"
First time build. Skipping changelog.
Parsing POMs
Discovered a new module com.example.app:maven-app maven-app
Modules changed, recalculating dependency graph
Established TCP socket on 42398
Copied maven35-agent.jar
Copied maven35-interceptor.jar
Copied maven3-interceptor-commons.jar
[diy-maven_TEST] $ java -cp /var/jenkins/maven35-agent.jar:/usr/local/maven/apache-maven-3.6.1/boot/plexus-classworlds-2.6.0.jar:/usr/local/maven/apache-maven-3.6.1/conf/logging jenkins.maven3.agent.Maven35Main /usr/local/maven/apache-maven-3.6.1 /usr/local/jenkins-slave/agent.jar /var/jenkins/maven35-interceptor.jar /var/jenkins/maven3-interceptor-commons.jar 42398
<===[JENKINS REMOTING CAPACITY]===>channel started
Executing Maven: -B -f /var/jenkins/workspace/diy-maven_TEST/pom.xml clean install
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------------< com.example.app:maven-app >----------------------
[INFO] Building maven-app 1.3-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ maven-app ---
[INFO] Deleting /var/jenkins/workspace/diy-maven_TEST/target
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ maven-app ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /var/jenkins/workspace/diy-maven_TEST/src/main/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ maven-app ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent!
[INFO] Compiling 1 source file to /var/jenkins/workspace/diy-maven_TEST/target/classes
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ maven-app ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /var/jenkins/workspace/diy-maven_TEST/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ maven-app ---
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding UTF-8, i.e. build is platform dependent!
[INFO] Compiling 1 source file to /var/jenkins/workspace/diy-maven_TEST/target/test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ maven-app ---
[INFO] Surefire report directory: /var/jenkins/workspace/diy-maven_TEST/target/surefire-reports
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running com.example.app.AppTest
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.016 sec Results : Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 [JENKINS] Recording test results
[WARNING] Attempt to (de-)serialize anonymous class hudson.maven.reporters.SurefireArchiver$2; see: https://jenkins.io/redirect/serialization-of-anonymous-classes/
[WARNING] Attempt to (de-)serialize anonymous class hudson.maven.reporters.BuildInfoRecorder$1; see: https://jenkins.io/redirect/serialization-of-anonymous-classes/
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ maven-app ---
[INFO] Building jar: /var/jenkins/workspace/diy-maven_TEST/target/maven-app-1.3-SNAPSHOT.jar
[INFO]
[INFO] --- maven-install-plugin:2.4:install (default-install) @ maven-app ---
[INFO] Installing /var/jenkins/workspace/diy-maven_TEST/target/maven-app-1.3-SNAPSHOT.jar to /root/.m2/repository/com/example/app/maven-app/1.3-SNAPSHOT/maven-app-1.3-SNAPSHOT.jar
[INFO] Installing /var/jenkins/workspace/diy-maven_TEST/pom.xml to /root/.m2/repository/com/example/app/maven-app/1.3-SNAPSHOT/maven-app-1.3-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 14.790 s
[INFO] Finished at: 2019-04-11T03:56:43+08:00
[INFO] ------------------------------------------------------------------------
Waiting for Jenkins to finish collecting data
[JENKINS] Archiving /var/jenkins/workspace/diy-maven_TEST/pom.xml to com.example.app/maven-app/1.3-SNAPSHOT/maven-app-1.3-SNAPSHOT.pom
[JENKINS] Archiving /var/jenkins/workspace/diy-maven_TEST/target/maven-app-1.3-SNAPSHOT.jar to com.example.app/maven-app/1.3-SNAPSHOT/maven-app-1.3-SNAPSHOT.jar
channel stopped
Finished: SUCCESS
2.5 去构建机器验证
[root@node5 ~]# cd /var/jenkins/workspace/diy-maven_TEST
[root@node5 diy-maven_TEST]# ls
-rw-r--r--. root root Apr : pom.xml
drwxr-xr-x. root root Apr : src
drwxr-xr-x. root root Apr : target
[root@node5 diy-maven_TEST]# cd target/
[root@node5 target]# ll
drwxr-xr-x. root root Apr : classes
-rw-r--r--. root root Apr : maven-app-1.3-SNAPSHOT.jar
drwxr-xr-x. root root Apr : maven-archiver
drwxr-xr-x. root root Apr : maven-status
drwxr-xr-x. root root Apr : surefire-reports
drwxr-xr-x. root root Apr : test-classes
基本构建完成
DEVOPS技术实践_02:jenkins自动构建项目的更多相关文章
- DEVOPS技术实践_18:Jenkins的Pinpeline对于参数的使用
因为最近使用Pipeline声明式语法构建项目,但是最近项目的参数设置较多,特地的来学习一下关于参数的调用和测试,主要式从一个大神那里学习的,结尾回贴上大神的博客链接 1 构建一个pipeline项目 ...
- DEVOPS技术实践_01:jenkins集成平台
一.准备环境 准备三台机器 角色 IP地址 用户名 密码 jenkins-master 172.25.254.130 admin meiyoumima gitlab 172.25.254 ...
- DEVOPS技术实践_17:Jenkins使用扩展邮件功能发送邮件
一 环境准备 1.1 安装插件Email Extension 系统管理-管理插件-安装Email Extension插件 1.2 配置 配置jenkins邮箱的全局配置:系统管理-系统设置-完成邮箱配 ...
- DEVOPS技术实践_09:Jenkins多分支管道
简介 多分支的管道是在jenkins2.x中新增的功能 . 多分支管道允许你针对分布式的控制器的每个分支创建一个管道. 下图是对它的一个描述.使用jenkinsfile去创建多分支的管道,jenkin ...
- DEVOPS技术实践_07:Jenkins 管道工作
一 简介 由于在公司构建很多工作,都是使用的maven工作构建的,这种构建方式很大缺点就是所有的工作都需要一步一步的配置,当项目较多,需求变动时,需要很大的精力去修改配置,很费劲 Pipeline即为 ...
- DEVOPS技术实践_11:Jenkins集成Sonar
前言 前面已经有介绍sonar的安装,简单应用,下面在简答的研究一下sonar和jenkins集成的简单使用,对于sonar的安装不做介绍 一 sonar的简单介绍 持续检查避免了低质量的代码,比如S ...
- 小伙伴想学Jenkins自动构建发布项目,我:安排上了!!
写在前面 趁着十一长假,很多小伙伴都在悄悄学习,有些是为了能够顺利通过面试,进入大厂升职加薪.有些则是为了进一步巩固和提高自己的专业技能,希望有朝一日能过成为互联网架构师乃至技术专家.这不,就有小伙伴 ...
- Gitlab源码库里代码提交后,如何触发jenkins自动构建?
版本库里代码提交后,如何触发jenkins自动构建?这是一个面试题,感觉自己回答的并不好,因为并没有用过这个功能,之前公司实际项目用的是svn版本管理,一般都用立刻构建,和定时任务构建(不管代码是否有 ...
- 使用Docker+Jenkins自动构建部署
环境 Windows 10 Docker Version 18.06.1-ce-win73 (19507) 运行jenkins 运行jenkins 容器 docker run -d --name ln ...
随机推荐
- iOS 9 适配系列教程
http://www.cocoachina.com/ios/20150703/12392.html 本文是投稿文章,作者:ChenYilong(https://github.com/ChenYilon ...
- LeetCode81 Search in Rotated Sorted Array II
题目: Follow up for "Search in Rotated Sorted Array":What if duplicates are allowed? Would t ...
- 《C语言深度解剖》学习笔记之内存管理
第5章 内存管理 1.野指针 定义指针变量的同时最好初始化为NULL,用完指针后也将变量的值设置为NULL.也就是说除了使用时,别的时间都把它设置为NULL 2.堆,栈和静态区 堆:由malloc系列 ...
- C++:只用初始化列表初始化变量的几种情况
1.类成员函数中const变量的初始化(也就是第一点) 有几个容易混淆的地方: (1)const 的变量只能通过构造函数的初始化列表进行初始化:(貌似在C++11中可以正常编译) (2)static ...
- es6 默认参数、rest参数、扩展运算符
1.默认值 现在可以在定义函数的时候指定参数的默认值了,而不用像以前那样通过逻辑或操作符来达到目的了. function sayHello(name){ //传统的指定默认参数的方式 var name ...
- oracle函数 log(x,y)
[功能]返回以x为底的y的对数 [参数]x,y,数字型表达式, [条件]x,y都必须大于0 [返回]数字 [示例] select power(4,2),log(16,2),1/log(16,4) fr ...
- Vue6——v-model实现数据双向绑定
博客地址 :https://www.cnblogs.com/sandraryan/ v-model 用于input标签,用于实现双向绑定,及时把数据的变化渲染在页面 双向绑定及原理 举个双向绑定的简单 ...
- hdu 2410 Barbara Bennett's Wild Numbers
Problem - 2410 挺好玩的一道题目.这道题的意思是给出一个模糊值以及一个确定值,要求求出模糊值中大于确定值的个数有多少. 这题我是直接用dfs的方法搜索的,对于每一位如果之前位置的形成的数 ...
- linux自动挂载NTFS格式移动硬盘
转自:http://blog.163.com/cmh_lj/blog/static/100812304201252522119264/ 由于移动硬盘还有不少的资料,刚插入移动硬盘的时候发现只能自动挂载 ...
- OP_REQUIRES failed at conv_ops.cc:386 : Resource exhausted: OOM when allocating tensor with shape..
tensorflow-gpu验证准确率是报错如上: 解决办法: 1. 加入os.environ['CUDA_VISIBLE_DEVICES']='2' 强制使用CPU验证-----慢 2.'batch ...