我在 Jenkins 上使用scp插件将我的项目的 WAR 传送到远程主机。
手动,我会将该 WAR 复制到该主机上的我的用户,然后自己去那里,获取 root (sudo) 并将 WAR 复制到/var/lib/tomcat6/webapps 中,Tomcat 会立即部署它。
但是,由于用户tomcat6没有可发现的密码,因此我找不到将tomcat6用作scp用户的方法,因此我无法告诉 Jenkins 如何在没有键盘交互的情况下执行此操作——使用 Jenkins 进行连续渲染部署没用。
我在 Precise 服务器上运行 Jenkins,要部署 WAR 的远程服务器也在运行 Precise。
感谢任何阅读这个问题的人,并非常感谢任何可以让我直接了解实现这一目标的聪明方法的人。
这是詹金斯的相关输出(失败):
BUILD SUCCESSFUL
Total time: 29 seconds
[SCP] Connecting to app-1.site
[SCP] uploading file: '/var/lib/tomcat6/webapps/myapp.war'
ERROR: Failed to upload files
3: Permission denied
at com.jcraft.jsch.ChannelSftp.throwStatusError(ChannelSftp.java:2289)
at com.jcraft.jsch.ChannelSftp._put(ChannelSftp.java:485)
at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:439)
at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:406)
at be.certipost.hudson.plugin.SCPSite.upload(SCPSite.java:239)
at be.certipost.hudson.plugin.SCPRepositoryPublisher.perform(SCPRepositoryPublisher.java:211)
at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:36)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:804)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:776)
at …Run Code Online (Sandbox Code Playgroud) 我正试图通过jenkins工作中的capistrano 3部署到服务器.
"cap environment deploy"完全可以从我的mac中获得我的信誉,但在jenkins下,使用部署信誉,我遇到了一个问题.
最奇怪的是前几个git命令成功,但是当capistrano进入"git remote update"时,服务器挂起时出现"未授权"错误.我通过ssh'ing到服务器并从/ var/www/repo运行'git remote update'来验证这一点.
我有密钥转发设置 - 下面是我的詹金斯工作:
eval $(ssh-agent)
ssh-add ~/.ssh/keyname.pem
cap staging deploy
Run Code Online (Sandbox Code Playgroud)
我不知道capistrano中发生了什么会导致第一个git命令成功('git ls-remote'),但"git remote update"失败.是的,密钥已在github上作为部署密钥添加到repo中,并且在deploy.rb和〜/ .ssh/config中启用了密钥转发.
下面是来自'cap staging deploy'的失败日志示例,在Jenkins框上以Jenkins用户身份运行:
INFO [d3e19149] Running /usr/bin/env mkdir -p /tmp/project/ on server.xxxxxyyyy.com
DEBUG [d3e19149] Command: /usr/bin/env mkdir -p /tmp/project/
INFO [d3e19149] Finished in 0.943 seconds with exit status 0 (successful).
DEBUG Uploading /tmp/project/git-ssh.sh 0.0%
INFO Uploading /tmp/project/git-ssh.sh 100.0%
INFO [43533553] Running /usr/bin/env chmod +x /tmp/project/git-ssh.sh on server.xxxxxyyyy.com
DEBUG [43533553] Command: /usr/bin/env chmod +x /tmp/project/git-ssh.sh …Run Code Online (Sandbox Code Playgroud) 构建我的maven项目时出现此错误:
[FATAL] Non-readable settings C:\MAVEN 3.2.2\conf: C:\MAVEN 3.2.2\conf (access denied) @ C:\MAVEN 3.2.2\conf
at hudson.maven.MavenEmbedder.<init>(MavenEmbedder.java:128)
at hudson.maven.MavenEmbedder.<init>(MavenEmbedder.java:109)
at hudson.maven.MavenEmbedder.<init>(MavenEmbedder.java:136)
at hudson.maven.MavenUtil.createEmbedder(MavenUtil.java:212)
at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:1288)
at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:1091)
at hudson.FilePath.act(FilePath.java:920)
at hudson.FilePath.act(FilePath.java:893)
at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.parsePoms(MavenModuleSetBuild.java:953)
at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:681)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:535)
at hudson.model.Run.execute(Run.java:1732)
at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:529)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:234)
Caused by: hudson.maven.MavenEmbedderException: 1 problem was encountered while building the effective settings
[FATAL] Non-readable settings C:\MAVEN 3.2.2\conf: C:\MAVEN 3.2.2\conf (access denied) @ C:\MAVEN 3.2.2\conf
at hudson.maven.MavenEmbedder.getSettings(MavenEmbedder.java:261)
at hudson.maven.MavenEmbedder.buildMavenExecutionRequest(MavenEmbedder.java:157)
at hudson.maven.MavenEmbedder.<init>(MavenEmbedder.java:120)
... 14 more
Caused by: org.apache.maven.settings.building.SettingsBuildingException: 1 …Run Code Online (Sandbox Code Playgroud) Jenkins接缝忽略来自/ etc/environment或/etc/profile.d/jdk.sh的系统CLASSPATH参数.我尝试在Scriptler中运行Groovy脚本,但是我收到此错误:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321
Run Code Online (Sandbox Code Playgroud)
我已经在Jenkins中安装了MySQL数据库插件(https://wiki.jenkins-ci.org/display/JENKINS/MySQL+Database+Plugin),但仍然无法通过在Jenkins控制台和Scriptler中找到的MySQL驱动程序加载:
import groovy.sql.Sql
Sql.newInstance("jdbc:mysql://HOST:3306/DB", "USER", "PASS", "com.mysql.jdbc.Driver")
Run Code Online (Sandbox Code Playgroud)
在我将Jenkis"全局属性">"环境变量"下的CLASSPATH设置为
Name CLASSPATH
Value .:/var/lib/jenkins/plugins/database-mysql/WEB-INF/lib/mysql-connector-java-5.1.21.jar
Run Code Online (Sandbox Code Playgroud)
Jenkins能够运行Jobs,但Jenkins Script Console/Scriptler仍无法找到jar文件.
我在特定路径下有一个可执行的jar文件,例如/home/admin/apps。我正在通过jenkins构建jar文件,并将jar文件复制到/home/admin/apps目录。复制之后,我还有另一个运行的shell脚本(从jenkins调用)nohup java -jar myjar.jar。但是在运行jar文件之前,我想停止早期的运行过程。我怎样才能做到这一点?我想通过詹金斯来完成所有这些工作,而无需人工。
我正在使用jenkins rest API通过作业递归,然后重新配置这一作业。除一种方法外,所有方法均有效。他是我的代码:
def get_server_instance():
jenkins_url = 'xxxx'
#server = Jenkins(jenkins_url, username = '', password = '')
# Connect to instance - username and password are optional
server = jenkins.Jenkins(jenkins_url, username = '', password = '')
return server
def get_job_details():
# Refer Example #1 for definition of function 'get_server_instance'
server = get_server_instance()
for job in server.get_jobs_list():
if job == "GithubMigration":
configuration = server.get_job(job).get_config().encode('utf-8')
#server.reconfig_job(job, configuration)
if server.has_job("GithubMigration"):
server.reconfig_job('GithubMigration', config_xml)
Run Code Online (Sandbox Code Playgroud)
它获取我的configuration.xml,也找到了工作,但在server.reconfig_job('GithubMigration',config_xml)上失败并显示错误AttributeError:'Jenkins'对象没有属性'reconfig_job'
当显然此功能存在于jenkins rest API中并且是的时候,我正在从jenkinsapi.jenkins import Jenkins导入jenkins。
编辑1-我卸载了Jenkinsapi,只有python-jenkins模块,现在即使在说之前它也失败了
AttributeError:'module'对象没有属性'Jenkins'到行:AttributeError:'module'对象没有属性'Jenkins' …
我是架构迁移的新手,所以我有点迷茫:
LiquiBase:模式迁移,Maven:构建自动化,Jenkins:持续集成.我正在使用bitBucket进行源代码控制.
我可以通过命令行,Maven或Jenkins运行LiquiBase.
如果Jenkins没有构建自动化2.我可以使用pom.xml中的LiquiBase Maven插件连接LiquiBase和Maven.然后使用Jenkins Maven插件或任何其他方式将其连接到Jenkins?
build-automation continuous-integration liquibase maven jenkins
在工作中,我继承了Jenkins的两个实例.一个在Java 1.5上运行遗留作业.另一个在Java 1.6上运行更新的项目.
我被要求将两个实例升级到Java 1.8.
这将涉及升级:
题:
我开始升级时应该注意什么?(例如从JDK6升级到JDK8的风险)
这些版本之间是否存在已知的兼容性错误?
我是Jenkins CI的新手,我试图通过构建步骤来在工作中获取SVN更新(myFolder)。我想明确地将某些文件复制到Web根目录,因为我无法将它们包含在解决方案中。
我需要执行的构建步骤。
直到发布为止都可以正常工作。尝试将myFolder复制/更新到Web根目录时出现问题。 MyFolder位于项目解决方案文件夹之外,因为我无法将其放在解决方案文件夹中。
注意:该myFolder已序列化下一步需要同步的项目/对象,应按顺序复制到Web根目录以进行同步。并且此文件夹已提交给SVN。
在我的本地CMD中,以下批处理文件可以正常工作,但是当我在Jenkins中执行Execute Windows Batch Command时,它会停在
-从SVN更新源代码-正在 运行更新...
@echo off
cls
echo -- Initiating system instance variables...
echo. -- Setting the variables...
:: Here you need to make some changes to suit your system.
set SOURCE=C:\inetpub\wwwroot\Test\Website\App_Data\myFolder\
set SVN=C:\Program Files\TortoiseSVN\bin
:: Unless you want to modify the script, this is enough.
echo. %SOURCE%
echo. %SVN%
echo. ++ Done setting variables. …Run Code Online (Sandbox Code Playgroud) 我有一个Java maven项目,我使用它部署到Bluemix cf push.奇迹般有效.它有这样的表现:
applications:
- services:
- Monitoring and Analytics-gm
- somedb
disk_quota: 1024M
hosts:
- someapp
name: someapp
path: target/someapp-0.0.2.war
domain: mybluemix.net
instances: 1
memory: 512M
Run Code Online (Sandbox Code Playgroud)
但是,当我将我的存储库推送到hub.jazz.net并启动构建和部署时,部署步骤将失败.我检查了构建步骤中的工件,并创建了war文件.
错误消息是:
Server error, status code: 400, error code: 170004, message: App staging failed in the buildpack compile phase
我错过了什么?
[INFO] Packaging webapp
[INFO] Assembling webapp [someapp] in [/home/jenkins/workspace/8c791c21-d195-9b03-f3ab-1c2cb5a8a9b4/0d82aa76-8fb2-463b-b1d6-6ec80a763706/target/someapp-0.0.2]
[INFO] Processing war project
[INFO] Copying webapp resources [/home/jenkins/workspace/8c791c21-d195-9b03-f3ab-1c2cb5a8a9b4/0d82aa76-8fb2-463b-b1d6-6ec80a763706/src/main/webapp]
[INFO] Webapp assembled in [56 msecs]
[INFO] Building war: /home/jenkins/workspace/8c791c21-d195-9b03-f3ab-1c2cb5a8a9b4/0d82aa76-8fb2-463b-b1d6-6ec80a763706/target/someapp-0.0.2.war
[INFO] …Run Code Online (Sandbox Code Playgroud) jenkins ×10
maven ×2
batch-file ×1
capistrano ×1
deployment ×1
git ×1
glassfish ×1
groovy ×1
ibm-cloud ×1
java ×1
jenkins-cli ×1
linux ×1
liquibase ×1
mysql ×1
powershell ×1
python ×1
python-2.7 ×1
python-3.x ×1
ssh ×1
tomcat ×1
upgrade ×1