대머리개발자

[jenkins] 스프링 jar 파일 배포 본문

개발이야기/오픈소스 설치

[jenkins] 스프링 jar 파일 배포

대머리개발자 2023. 8. 18. 16:04
728x90

 

매번 반복적인 작업들이 진행된다. 삶을 지치게 하는 요소들 날려 버리자. ㅠ

 

1. Local 환경에서 개발을 한다.

2. Dev 환경에 반영 후 테스트를 한다.

3. QA 환경에 반영 후 테스트를 한다.

4. Prod 환경에 반영 후 테스트를 한다.

 

빌드&배포/ 어플리케이션 실행에 까지 반복적인 작업이 계속 존재한다.

 

해당 부분을 젠킨스를 통해서 자동화를 할 수 있다.

 

커다란 줄기는 아래와 같다. 

 

1.젠킨스를 통해서 빌드를 하고 (기본 기능)

2.빌드된 jar 파일을 target 서버에에 배포한다. (플러그인 설치 필요)

3.그리고 실행을 한다. (2번과 같은 플러그인을 통해서 진행)

 

2/3 단계에서 필요한 Publicsh Over SSH 플러그인을 설치해야한다.
※  "Jenkins 관리 - 플러그인 관리"에서 해당 플러그인을 찾아서 설치한다. 

 

!!!! 자동화 해보자!! (디테일한 부분은 생략)

 

1.빌드할 소스코들 즉, Git 주소를 등록한다.

2. 적용된 빌드 도구를 설정한다. 

: "Jenkins 관리 - Global Tool Configuration" 에서 해당 빌드 도구를 미리 설정해 두고 사용.

3. 배포할 서버 정보와 배포 이후 스크립트 설정한다.

: "Jenkins 관리 - 시스템설 정보" 에서 ssh 정보를 등록해 두고 사용.

 

~~~ 생략 ~~~
> Task :classes
> Task :bootJarMainClassName
> Task :bootJar
> Task :jar
> Task :assemble
> Task :extractIncludeTestProto
> Task :extractTestProto
> Task :generateTestProto NO-SOURCE
> Task :compileTestJava
> Task :processTestResources NO-SOURCE
> Task :testClasses
> Task :test
> Task :check
> Task :build

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.6/userguide/command_line_interface.html#sec:command_line_warnings

Execution optimizations have been disabled for 1 invalid unit(s) of work during this build to ensure correctness.
Please consult deprecation warnings for more details.

BUILD SUCCESSFUL in 29s
13 actionable tasks: 13 executed
Build step 'Invoke Gradle script' changed build result to SUCCESS
SSH: Connecting from host [kbid-d-krc-dh-cd-jkins-vm-001]
SSH: Connecting with configuration [oauth-qa] ...
SSH: EXEC: completed after 2,201 ms
SSH: Disconnecting configuration [oauth-qa] ...
SSH: Transferred 1 file(s)
Finished: SUCCESS

 

모든 것이 좋았다.

 

728x90