인증 정상으로 됐으나 에러 날때 vi ~/.bashrc 에서 실행되는 항목 있는지 체크

우선 agent 설치 전에 주석

 

[] Launch failed - cleaning up connection
[] [SSH] Connection closed.

 

빌드가 끝난 후 Finished: "SUCCESS" 나 "FAILURE" 둘 중 하나만 받을 수 있었다.


빌드 스크립트 상에서 System.exit(1) 을 만나거나 Exception을 만나게 되면 무조건 "FAILURE" 메시지가 떨어진다.

하지만 상황에 따라 경고성 메시지가 필요했다.


예를 들어 빌드/배포 실패 시 롤백 JOB를 호출 해야 하는 상황인데 빌드/배포 시 

유효성 검사 및 기타 작업 시점에 Exception이 발생하면 "경고",

원격지 배포 중간이라면 "에러" 발생 후 롤백 JOB을 호출 해야 했다.


유효성 검사 시점에 Exception이라도 "SUCCESS" 를 떨어뜨려 해결 했더니 배포 History 가 뭔가 깔끔치 않아 "경고" 성 메시지가 필요 했다.


빌드 후 조치 에 "Trigger parameterized build on ohter projects" 에 "Trigger when build is" 옵션에 "Failed" 이외에 값들이 있는데 어떻게 이용하는지 방법을 못 찾았다.

경고 성일때는 "Unstable" 떨어 뜨리면 OK 일텐데..



새롭게 찾은 방법은 https://wiki.jenkins-ci.org/display/JENKINS/Text-finder+Plugin 을 이용한다.

스크립트 상에서 "Failed" 이외 "Unstable" 로 떨어뜨러야 할 경우

System.exit(1) 하지 말고 정상 종료 시키고, println "UNSTABLE" 출력한다.

"UNSTABLE" 의 경우 스크립트 상과 Jenkins Text-finder Plugin 과 약속이다.(다른 문자열로 해도 된다.)


그런 후 Jenkins 에서 아래와 같이 셋팅한다.


그럼 에러와 경로를 나울 수 있고, 각각의 상황에 따라 분기 하면 될듯하다.




간단한 방법이 있는데 어렵게 돌아가는게 아닌가 싶다..ㅡㅡ;;



Tomcat 7.x + Jenkins ver. 1.500


[Maven tomcat plugin을 이용하여 deploy -> reload 방법]

tomcat/conf/tomcat-users.xml







pom.xml


	org.codehaus.mojo
	tomcat-maven-plugin
	1.1
	
		UTF-8
		war
		http://localhost/manager/text
		
		admin
		admin
	



젠킨스 프로젝트 설정 Build 부분 명령어에 tomcat:redeploy tomcat:reload


[Shell 실행하여 Tomcat 재시작 방법]


jenkins에서 빌드 스크립트 종료 후 아래 shell 실행하면 정상 start 후 Process를 종료해버려서 기껏 올라간 Tomcat이 종료되는 문제가 발생한다.

그럴 경우 해당 프로젝트 설정에서 "This build is parameterized" 체크 하고, "Add Parameter" 에서 BUILD_ID 에다가 아무 값이나 셋팅!!

#!/bin/bash

echo "Shutdown tomcat now...."
bash /usr/local/tomcat/bin/shutdown.sh
echo "tomcat is now terminated..."
sleep 10
if [ -z "`ps -eaf | grep java | grep /usr/local/tomcat/bin`" ]; then
        echo "Tomcat was terminated successfully."
else
        ps -eaf | grep java | grep /usr/local/tomcat/bin | awk '{print $2}' |
        while read PID
                do
                echo "Killing $PID... "
                kill -9 $PID
                echo "Tomcat is being shutdowned"
                done
fi

echo "tomcat restart now"
/usr/local/tomcat/bin/./startup.sh
AA=`ps -eaf | grep java | grep /usr/local/tomcat/bin`
echo "AA: $AA"
if [ -z "`ps -eaf | grep java | grep /usr/local/tomcat/bin`" ]; then
        echo "Error!!! Cannot start tomcat server."
else
        echo "Tomcat restart succcessfully. "
fi
echo "Job finished"

[참조 shell] http://ausgang.egloos.com/2947190

startup.sh

#!/bin/sh


. ./env.sh

export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-8.0.9
export CATALINA_BASE=/usr/local/tomcat/domains/$PROJECT_NM
export JAVA_OPTS="-Djava.awt.headless=true -server -Xms512m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:+DisableExplicitGC"
export CATALINA_OPTS=$CATALINA_OPTS" -Dfile.encoding=UTF-8"

cd $CATALINA_HOME/bin

./startup.sh


AA=`ps -eaf | grep java | grep $WAS_PATH`
echo "AA: $AA"
if [ -z "`ps -eaf | grep java | grep $WAS_PATH`" ]; then
        echo "Error!!! Cannot start tomcat server."
fi

while [ `netstat -an | grep :$WAS_PORT | grep LISTEN | wc | awk '{print $1}'` != 1 ]; do
        echo -ne "."
        sleep 1
done

echo "Check WAS Context Ready http://localhost:$WAS_PORT ..."

until [ "`curl --silent --show-error --connect-timeout 1 -I http://localhost:$WAS_PORT | grep 'Coyote'`" != "" ];
do
        echo -ne "."
        sleep 1
done

echo "Start WAS And Context $PROJECT_NM Tomcat Succcess"

shutdown.sh

#!/bin/sh


. ./env.sh

export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-8.0.9
export CATALINA_BASE=/usr/local/tomcat/domains/$PROJECT_NM

$CATALINA_HOME/bin/./shutdown.sh

I=0

until [ "`ps -eaf | grep java | grep $WAS_PATH`" == "" ];
do
        if [ $I == 5 ]; then
		ps -ef | grep java | grep "$WAS_PATH " | awk {'print "kill -9 " $2'} | sh -x
                break;
        fi

        let I=$I+1

        echo Stop WAS Finish? Sleeping for 2 seconds
        sleep 2
done

+ Recent posts