sudo ip link set vboxnet0 up

https://github.com/mitchellh/vagrant/issues/5751

 디렉토리 생성

sudo mkdir -p /mnt/rhel6

sudo mkdir -p /mnt/rhel7

sudo mkdir -p /mnt/centos6

sudo mkdir -p /mnt/centos7트


 ISO 이미지 마운트

sudo mount -t iso9660 -o loop /data/_ISO_/rhel-server-6.9-x86_64-dvd.iso /mnt/rhel6

sudo mount -t iso9660 -o loop /data/_ISO_/rhel-server-7.3-x86_64-dvd.iso /mnt/rhel7

sudo mount -t iso9660 -o loop /data/_ISO_/CentOS-6.9-x86_64-bin-DVD1.iso /mnt/centos6

sudo mount -t iso9660 -o loop /data/_ISO_/CentOS-7-x86_64-DVD-1611.iso /mnt/centos7


 httpd 일때 설정

Alias /rhel6 "/mnt/rhel6"

<Directory /mnt/rhel6/>

    Options +Indexes

    AllowOverride none

    Require all granted

</Directory>


Alias /rhel7 "/mnt/rhel7"

<Directory /mnt/rhel7/>

    Options +Indexes

    AllowOverride none

    Require all granted

</Directory>


Alias /centos6 "/mnt/centos6"

<Directory /mnt/centos6/>

    Options +Indexes

    AllowOverride none

    Require all granted

</Directory>


Alias /centos7 "/mnt/centos7"

<Directory /mnt/centos7/>

    Options +Indexes

    AllowOverride none

    Require all granted

</Directory>


NGINX 일때 설정

server {

location /rhel7/ {

            alias   D:/data/yum/rhel7/;

autoindex       on;

allow all;

        }

location /rhel6/ {

            alias   D:/data/yum/rhel6/;

autoindex       on;

allow all;

        }

location /centos6/ {

            alias   D:/data/yum/centos6/;

autoindex       on;

allow all;

        }

location /centos7/ {

            alias   D:/data/yum/centos7/;

autoindex       on;

allow all;

        }

}


yum repo 설정

# /etc/yum.repos.d/local-rhel6.repo

[local-rhel6]

name=local-rhel6

baseurl=http://192.168.56.1/rhel6/Server/

enabled=1

gpgcheck=0


# /etc/yum.repos.d/local-rhel7.repo

[local-rhel7]

name=local-rhel7

baseurl=http://192.168.56.1/rhel7/

enabled=1

gpgcheck=0


# /etc/yum.repos.d/local-centos6.repo

[local-centos6]

name=local-centos6

baseurl=http://192.168.56.1/centos6/

enabled=1

gpgcheck=0


# /etc/yum.repos.d/local-centos7.repo

[local-centos7]

name=local-centos7

baseurl=http://192.168.56.1/centos7/

enabled=1

gpgcheck=0



Fedora Linux 에서 동영상 캡쳐 시 별도의 소프트웨어를 설치 하지 않고도, 캡쳐 가능

Ctrl + Alt + Shift + R


Fedora 31 - cinnamon

PC에 로그인된 원래 세션으로 원격 접속 하기

sudo dnf install xrdp x11vnc

sudo vi /etc/xrdp/xrdp.ini
[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=5900

sudo vi /usr/lib/systemd/system/x11vnc.service
[Unit]
Description=Start x11vnc at startup.
After=multi-user.target

[Service]
Type=simple
#ExecStart=/usr/sbin/runuser -l ddakker `/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/ddakker/.vnc/passwd -rfbport 5900 -shared`
ExecStart=/usr/bin/x11vnc -auth guess -forever -loop -noxdamage -repeat -rfbauth /home/ddakker/.vnc/passwd -rfbport 5900 -shared

[Install]
WantedBy=multi-user.target

sudo systemctl daemon-reload
sudo systemctl enable x11vnc.service

sudo systemctl enable xrdp.service

윈도우 컴퓨터에서 "원격 데스크톱 연결" 프로그램으로 연결

---------------------------------------------------------------------
  • VNC Server
    • Fedora 24 GUI
      • TightVNC version 1.3.10
  • VNC Viewer
    • Windows 10
      • TigerVNC
Viewer 는 Tiger 이 내 상황에서는 가장 최적인듯.
창 사이즈 늘림/줄임 및 최대화면에 따라 Fedora 해상도가 자동으로 변경


Gradle 3.2.1



위 "test-ear-dir" 디렉토리와 같이 ear 구조로 배치되어 있는 상태에서 gradle + ant 를 활용해 패키징 한다. 


task dirEar {
doLast {
println 'aa'
ant.ear(destfile: 'build/test.ear',
appxml: 'build/test-ear-dir/META-INF/application.xml') {
fileset (dir: 'build/test-ear-dir')
}
}
}


VirtualBox 5.0.30

Fedora 23/24/25 모두 해봄 (VirtualBox 4 버전에서 Fedora 25 버전은 잘 안되서 VirtualBox 5 버전으로 업그레이드 함)


yum update    
yum install kernel-devel-$(uname -r)
yum install gcc make

shutdown -r now

cd /var/run/media/root/VBOXADDITIONS_4.3.40_110317/
./VBoxLinuxAdditions.run 

shutdown -r now

Plugin

  1. Lombok - Settings > Build, Excuting, Deployment > Compiler > Annotaton Processors > Enable annotation processing 체크
  2. Grep Console
  3. Jrebel
  4. Presentation Assistant
  5. Lombok
  6. AsciiDoc
  7. CamelCase
  8. Docusaurus
  9. GitToolBox
  10. Korean Language Pack
  11. Power Mode II
  12. Translation (https://plugins.jetbrains.com/plugin/8579-translation)

 

Live Templates 설정

  1. addlog - Applicable in Java: declaration
    Edit Template Variables - Name=CLASSNAME, Expression=className()
  2. private static org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger($CLASSNAME$.class);
  3. dlog - Applicable in Java: expression
    Edit Template Variables - Name=VAR, Expression=completeSmart()
  4. logger.debug("===== $END$: {}", $VAR$);
  5. addtest - use static import if posible 체크
  6. @org.junit.Test
    public void test$EXPR$() {
    $END$
    org.junit.Assert.assertThat("업무", 1, org.hamcrest.Matchers.is(1));
    }

 

Windows Batch Script 심오하군...


특정 Tomcat Instance 찾아 KILL

@echo off
setlocal enableDelayedExpansion

# Command 에서는...
wmic process where "Name='java.exe' AND commandLine like '%test-app%'" delete

# Batch Script 에서는 "%" 변수에대한 접두사라서 LIKE 검색이 안되니 두개로... 그 안에 변수라면 아래와 같이 
wmic process where "Name='java.exe' AND commandLine like '%%%HTTPD_WORKER_NM%%%'" delete

Tomcat 기동여부 확인 - 해당 포트가 떠 있나 확인 후 있으면 PID 및 실행 문자열 출력

@echo off
setlocal enableDelayedExpansion

netstat -na | find "LISTENING" | find /C ":%AJP_PORT%" > tmpFile
set /P result=<tmpFile
del tmpFile

REM echo !result!
if !result!==0 (
	echo ===== TOMCAT IS STOPED =====
) else (
	echo ===== TOMCAT IS RUNNING =====
	wmic process where "Name='java.exe' AND commandLine like '%%%HTTPD_WORKER_NM%%%'" get commandLine, processid
)


빌드가 끝난 후 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 에서 아래와 같이 셋팅한다.


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




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



+ Recent posts