1. 자동화 목표
문제 보고부터 시작해서 소프트웨어를 수정하고 JAR 파일을 테스트 위치로 보내기까지의 과정을 아래의 여섯 단계로 나눌 수 있습니다.
-
문제 보고
-
Git 저장소 복제
cd WORKING_DIR \path\to\repo-scripts\clone-and-cd-PROJECT_NAME.bat
-
IntelliJ에서 프로젝트 임포트하여 열기
.\scripts\launch-idea.bat
-
문제 해결을 위한 소스 수정
-
Maven으로 프로젝트 빌드
.\scripts\clean-and-build.bat
-
JAR 파일을 테스트 위치로 보내기
.\scripts\upload-jar.bat
위의 1번, 4번 과정을 제외한 나머지 과정들에 대해서 자동화 스크립트를 작성하고자 합니다.
2. 개발 환경
이 문서를 작성하기 위하여 사용한 개발 환경은 아래와 같습니다.
- 시스템 정보
- Windows 10
- 개발 도구
- JDK 1.8
- Maven 3.8.6
- IntelliJ 2021.2.2
- PuTTY 0.77 (원격 접속 및 파일 업로드 도구)
개발 도구의 실행 파일이 있는 경로들을 시스템 환경 변수 PATH
에 등록합니다.
3. 스크립트 작성
3.1. Git 저장소 복제
-
clone-and-cd-PROJECT_NAME.bat
파일의 내용을 아래와 같이 작성합니다.@echo off git clone https://YOUR_NAME@github.com/ACCOUNT_NAME/REPOSITORY_NAME.git cd REPOSITORY_NAME\PROJECT_NAME
3.2. IntelliJ에서 프로젝트 임포트하여 열기
-
launch-idea.bat
파일의 내용을 아래와 같이 작성합니다.@echo off idea64.exe pom.xml
3.3. Maven으로 프로젝트 빌드
-
clean-and-build.bat
파일의 내용을 아래와 같이 작성합니다.@echo off call mvn clean call mvn install
3.4. JAR 파일을 테스트 위치로 보내기
보안을 위해서는 비밀번호를 스크립트에 직접 지정하는 방식보다는 공개키 인증 방식을 권장합니다.
3.4.1. 비밀번호 직접 지정 방식
-
upload-jar.bat
파일의 내용을 아래와 같이 작성합니다.@echo off psftp.exe USER@HOST -P PORT -pw PASSWORD -b upload-jar-batch.txt
-
upload-jar-batch.txt
파일의 내용을 아래와 같이 작성합니다.cd JAR_INSTALL_DIR put target/JAR_FILE
3.4.2. 공개키 인증 방식
공개키 인증 방식을 사용할 때 비밀번호 입력 과정 없이 진행하기 위해서는 PC에서 생성한 공개키를 테스트 서버에 등록해 두어야 합니다. 이에 대한 안내는 SSH로 암호 입력하지 않고 로그인하기 자료에서 제공하고 있습니다.
-
upload-jar.bat
파일의 내용을 아래와 같이 작성합니다.@echo off psftp.exe USER@HOST -P PORT -i \PATH\TO\YOUR.ppk -b upload-jar-batch.txt
psftp.exe
가 사용하는*.ppk
파일을 만드는 과정은 Using PuTTYgen, the PuTTY key generator 자료에서 설명하고 있습니다.참고로 OpenSSH의
sftp.exe
의 경우 명령 줄에서 비밀번호를 지정하는 옵션을 제공하지 않기 때문에 비밀번호 직접 지정 방식으로는 자동화가 안되지만 공개키 인증 방식을 사용할 경우에는 아래와 같이 스크립트를 작성하여 자동화할 수 있습니다.@echo off sftp.exe -P PORT -b upload-jar-batch.txt USER@HOST
-
upload-jar-batch.txt
파일의 내용을 아래와 같이 작성합니다.cd JAR_INSTALL_DIR put target/JAR_FILE
4. 기타
4.1. SSH 터미널 열고 연결하기
4.1.1. 비밀번호 직접 지정 방식
-
open-ssh.bat
파일의 내용을 아래와 같이 작성합니다.@echo off start putty.exe -ssh USER@HOST -P PORT -pw PASSWORD
4.1.2. 공개키 인증 방식
-
open-ssh.bat
파일의 내용을 아래와 같이 작성합니다.@echo off start putty.exe -ssh USER@HOST -P PORT -i \PATH\TO\YOUR.ppk
5. 참고 자료
- Using public key authentication with PSFTP
- Using PuTTYgen, the PuTTY key generator
- The PuTTY command line
- SSH로 암호 입력하지 않고 로그인하기
Written with StackEdit.
댓글 없음:
댓글 쓰기