Jenkins2.2 不顯示測試報告解決辦法(重啟后依然生效)
2024-06-28 16:02:51
供稿:網友
系統版本:Centos7.2Jenkins版本:2.3注:本文參考官方文檔 https://wiki.jenkins-ci.org/display/JENKINS/Configuring+Content+Security+Policy搜索了下目前關于Firefox和Chrome不顯示測試報告的解決方案,大部分都通過“腳本命令行”實現。這種方式的好處是即時生效,無需進行重啟Jenkins服務操作。但一旦服務器維護重啟,又需要再次通過“腳本命令行”進行配置,容易遺漏。故整理了永久修改CSP的方法,以便于重啟Jenkins后,配置依然生效。步驟如下:1. 通過systemctl status jenkins 查看jenkins的啟動腳本文件位置[root@develop02 ~]# systemctl status jenkins● jenkins.service - LSB: Jenkins Continuous Integration ServerLoaded: loaded (/etc/rc.d/init.d/jenkins; bad; vendor PReset: disabled)Active: active (running) since Tue 2017-02-07 15:25:23 CST; 1h 4min agoDocs: man:systemd-sysv-generator(8)Process: 936 ExecStart=/etc/rc.d/init.d/jenkins start (code=exited, status=0/SUCCESS)CGroup: /system.slice/jenkins.service└─1616 /etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -Dhudson.model.Direc...2. 進入后查看jenkins的啟動文件,可以查到jenkins配置文件所在位置。vim /etc/rc.d/init.d/jenkins/JENKINS_CONFIG3. 進入配置文件所在位置vim /etc/sysconfig/jenkins進入后增加環境變量HUDSON_OPTIONS="-Dhudson.model.DirectoryBrowserSupport.CSP=/"sandbox; default-src 'unsafe-inline';/""4. 再次進入jenkins啟動文件,修改代碼,增加HUDSON_OPTIONS變量vim /etc/rc.d/init.d/jenkinsJAVA_CMD="$JENKINS_JAVA_CMD $JENKINS_JAVA_OPTIONS -DJENKINS_HOME=$JENKINS_HOME$HUDSON_OPTIONS -jar $JENKINS_WAR"PARAMS="--logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon"5. 重啟Jenkins服務,使配置生效。systemctl restart jenkins6. 查看jenkins服啟動參數,配置已生效/etc/alternatives/java -Dcom.sun.akuma.Daemon=daemonized -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins-Dhudson.model.DirectoryBrowserSupport.CSP="script-src 'unsafe-inline'" -jar /usr/lib/jenkins/jenkins.war --logfile=/var/log/jenkins/jenkins.log --webroot=/var/cache/jenkins/war --daemon --httpPort=8080 --debug=5 --handlerCountMax=100 --handlerCountMaxIdle=207.進入到jenkins的系統管理->腳本命令行,輸入命令查看系統屬性System.getProperty("hudson.model.DirectoryBrowserSupport.CSP")8. 可看到配置已修改成功