언제나 잊어버리는..
~]# ifup eth0
~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=no -> yes
언제나 잊어버리는..
~]# ifup eth0
~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=no -> yes
jUnit으로 HTTP기반 테스트 케이스를 작성 후 성공여부를 모니터링 하고 싶었다...
#!/bin/sh LOG_FILE=../shell/TestCase2.log LOG_FILE_FINISH=../shell/log/TestCase2.log if [ -f $LOG_FILE ]; then echo "TestCase 현재 실행중임!" exit 1; fi java -classpath ...... org.junit.runner.JUnitCore com.test.TestCase2 > $LOG_FILE /bin/rm -f $LOG_FILE_FINISH FAILE_CNT_CNT=0 LOG_FILES=`cat $LOG_FILE` for log_file in $LOG_FILES do tempS=`echo $log_file | grep "FAILURES!!!"` if [ "$tempS" != "" ]; then FAILE_CNT=1 /bin/cp $LOG_FILE $LOG_FILE_FINISH$(date +%Y%m%d%H%M%S) /bin/cp $LOG_FILE $LOG_FILE_FINISH break fi done if [ $FAILE_CNT = 0 ]; then /bin/rm -f $LOG_FILE_FINISH fi /bin/rm -f $LOG_FILE # LOG_FILE_FINISH 경로에 파일이 존재 한다면 실패했다고 보면 됨...
[참고] http://dimdim.tistory.com/entry/openssl%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-Tomcat-HTTPS-%EC%84%A4%EC%A0%95-PKCS12-%ED%8F%AC%EB%A7%B7
Oracle에서 JDK를 다운로드 받으려면 라인센스 동의를 클릭하고 이루어진다.
그런데 Linux Console에서 받으려면 해당 이벤트를 발생시킬수 없으므로 어떻게 받아야 하나.. 미러 싸이트를 찾았는데 이런기능이 있군요.. ㅎㅎ
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com" "http://download.oracle.com/otn-pub/java/jdk/7u51-b13/jdk-7u51-linux-i586.tar.gz"
wget --no-cookies --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup-cookie; s_cc=true; s_nr=1401757717323; gpw_e24=no%20value; s_sq=%5B%5BB%5D%5D" "http://download.oracle.com/otn-pub/java/jdk/7u60-b19/jdk-7u60-linux-i586.tar.gz"
Cookie: 부분을 브라우저에서 다운받을때 생성되는 정보를 입력한다.
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
Order deny,allow Deny from all Allow from 1.1.1. # 1~255 활성
svn hook 기능을 이용하여 사용자별 커밋 리스트를 저장
post-commit 에 정의
#사용자 아이디를 구한다.(커밋정보=사용자, 시간 등)
INFO=$(svnlook info -r $REV $REPOS)
#IFS=-e "\n"
IFS=$"\n"
set -- $INFO
array=( $@ )
#현재 날짜를 구한다. YYYYMMDD
DATE_STRING=$(date +%Y%m%d)
#리비전 번호에 대한 커밋리스트를 구해 log파일에 Append한다.
svnlook changed -r $REV $REPOS >> "/home/svn/repos/hooks/svn_commit_${array[0]}_$DATE_STRING.log"
SVN 사용 중에.. "Head... 뭐라뭐라" 메시지 나오면서 커밋 등등 작동 안 하는 문제가 발생할때가 있다..(아주 간혹)
- 메시지를 적어놨어야 하는데.. 안 적어놨다..
이런 경우 최종 Commit 할때 무언가 꼬인 경우기 때문에 최종 이전 버전으로 되돌려 놓으면 해결 된다.
1. ../../"svn home"/"Repositories Name"/db/current - 현재 최종 버전 정보를 가지고 있는 설정 파일
2. ../../"svn home"/"Repositories Name"/db/revs - 하위 디렉토리에 Revision 정보들이 파일로 존재
2번 디렉토리에서 제일큰 Revision파일(가장 최근 파일)이 문제 시 되는 Revision 입니다.(예를 들어 227)
- 227 이라는 파일을 열어 보시면 대충 어디에서 커밋하다가 꼬인건지 파악 됩니다.
- 227 파일을 삭제(혹시 모르니 mv) 해놓으시고, 1번의 current 파일을 vi로 열어보시면 "227 ??? ???" 이런식으로 227이라는 문자열을 보실 수 있습니다.
이 227이라는 문자열을 그 이전 정보 226으로 고치고, SVN서버 재 시작 하시면 잘 될 것 입니다.