일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- STREAM
- Linux
- post
- 허브
- Java
- JPA
- container
- AOP
- tomcat
- gradle
- 라우터
- 소켓
- Pipeline
- cloud
- mybatis
- LAN어댑터
- sonarQube
- 액세스회선
- 방화벽
- map
- Collection
- Set
- jdk
- IntelliJ
- 캐시서버
- DevOps
- ansible
- docker
- Jenkins
- Spring
- Today
- Total
목록Jenkins (27)
거북이-https://velog.io/@violet_evgadn 이전완료
GitHub에 저장된 작업물을 가져와 Build 1. Jenkins 관리 > Gloabl Tool Configuration > Maven Section 확인 여기에서 중요한 것은 "Name"으로 지정한 값이다. 우리는 Build를 위해 Maven을 활용하므로 어떤 Maven을 활용하여 Build 과정을 수행해야 할지 명시해줘야 한다. 애초에 Jenkins 실행 환경에 Maven이 설치되어 있다면 문제 없지만 Maven 설치가 되지 않은 환경에서도 정상적으로 빌드 가능하게 만들기 위해선 이 설정을 해주는 것이 좋다. 2. 새로운 Item 생성후 Script 입력 이후 Pipeline Section에 가서 아래 구문을 입력한다. pipeline{ agent any tools { maven 'Maven3.8...
1. 새로운 Item > Pipeline Section 선택하여 Item 생성 2. Pipeline Section 기입 Definition : Pipeline script 선택 Script : 이전 Section에서 배웠던 Jenkins Declarative Script Syntax 활용 pipeline { agent any stages { stage('Compile') { steps { echo "Compiled successfully!"; } } stage('JUnit') { steps { echo "JUnit passed successfully!"; } } stage('Code Analysis') { steps { echo "Code Analysis completed successfully!"; }..
여기에 정리한 내용은 https://www.jenkins.io/doc/book/pipeline/syntax/ 를 기반으로 작성되었음을 알린다. 그림으로 한눈에 보는 Pipeline Script 활용 진한 글씨로 되어 있는 구문은 필수 구문, 연한 글씨는 사용 여부를 선택할 수 있는 구문이다. 위 사진에서 볼 수 있듯 "step"이라는 구문 안에는 DSL, 즉 Declarative Script 고유 문법의 문장이 들어가게 된다. 이 문법을 다 외워 DSL 문을 직접 생성하게 하는 것은 난이도가 너무 높고 활용성이 떨어진다. 따라서 Jenkins 측에서는 "Pipeline Syntax"라는 기능을 통해 원하는 Step 작업에 대한 DSL 문을 자동 생성해주는 기능을 제공한다. 이 Pipeline Syntax..
Jenkins Pipeline이란? Jenkins Pipeline이란 연속적인 작업들을 Jenkins에서 1개의 Pipeline으로 묶어 관리할 수 있게 만들어주는 Plugin이다. Jenkins의 기본 작업 단위를 Item이라고 했는데, 이 Item을 연쇄적으로 수행시킴으로써 전체적인 1개의 CI/CD 흐름을 생성 및 관리해주는 Plugin이라고 생각하면 된다. 간단히 말하자면 여러 개의 Item을 하나로 묶어 관리할 수 있게 하는 것이 Jenkins Pipeline이다. 이 과정에서 의문이 생긴다. 굳이 Pipeline을 활용해아할까? 이전까지 우리는 1개의 Item을 가지고서도 충분히 Build 및 배포 과정을 수행할 수 있었다. Item 1개만으로도 자동화된 CI/CD 과정을 구축할 수 있는데 굳..
1. Jenkins 관리 > 시스템 설정 > Publish over SSH에 Ansible-Server 추가 이전 Docker Server를 설정한 것과 동일한 방식으로 설정한다. 필자는 이전과 마찬가지로 Windows에 Jenkins를 설치하였기 때문에 Username은 localhost, Port는 20022로 지정하도록 하겠다. 2. Ansible Project(새 Item) 생성 https://turtlewalk.tistory.com/96 SSH Server에 Build 결과물 넘기기 1. 3번째 프로젝트 Copy 해서 새 Item 생성 https://turtlewalk.tistory.com/91 설치 가능에서 deploy to 검색 & " data-og-host="turtlewalk.tistor..
VM으로 Ansible 만들기 필자는 Docker Image를 활용해 Ansible-Server를 생성할 것이다. 하지만 이전에 SSH Server를 VM을 통해 만들 수 있었듯 Ansible Server도 VM 환경에서 생성할 수 있다. 간단히 Ansible Server 생성 방법에 대해 알아보고 넘어가자 ◎ Ansible 설치 yum install ansible Ansible Server 생성이 완료되었다! 너무 간단해서 허탈할지 모르겠으나 이는 Linux 상에서 Ansible Server를 만들었을 때 유효하다는 것을 알아두자. 이전 Section에서 말했듯 Ansible은 Python을 통해 Server와 Node 사이 통신이 수행되기 때문에 만약 Windows를 Ansible Server로 만들..
1. 3번째 프로젝트 Copy 해서 새 Item 생성 https://turtlewalk.tistory.com/91 Jenkins Maven Project와 Tomcat 연동 먼저 이전 Section에서 시행했던 Tomcat에 대한 설정을 모두 했다고 생각하고 과정을 진행하도록 하겠다. (당연히 Tomcat은 구동되고 있는 상태여야 한다) 1. Plugin Manager > 설치 가능에서 deploy to 검색 & turtlewalk.tistory.com 위 사이트에서 만든 Item을 복사하여 새로 만든다. 2. 설정 변경 빌드 유발 > Poll SCM 비활성화 확인 과정은 위 링크에서 수행했으므로 이제 비활성화시키자 빌드 후 조치 추가 > Deploy war/ear to a container 삭제 원래라..
우리는 이전에 Maven Project를 동작하고 있는 Local 컴퓨터의 Tomcat에 WAR 파일을 배포하여 웹 프로그램을 실행시켰다. 그런데 이때 귀찮은 점이 있었을 것이다. 무조건 Local 컴퓨터에서 Tomcat이 기동 되고 있어야 한다는 점! 이렇게 되면 Local 컴퓨터가 켜져 있고 Tomcat이 항상 동작되어야 하는데 만약 서비스를 24시간 제공하고 싶다면 Data Center가 필요해질 것이다. 하지만 MSA 및 CI/CD를 활용할 때는 Cloud를 활용함으로써 Data Center를 직접 운영하지 않고 끊임없는 서비스를 제공할 수 있다는 장점을 가진다. 따라서 우리는 Cloud를 통해 서버를 구성하고 동작하고 있는 Cloud 서버에 WAR 파일을 배포시킴으로써 24시간 서비스를 제공할 ..
PollSCM이란? Build 자동화 방법에 앞서 PollSCM이라는 단어부터 알고 가자. PollSCM이란 Git Polling 작업을 주기적으로 수행할 수 있게 하는 방법을 의미한다. 그렇다면 Git Polling은 무엇일까? Git Pooling이란 일정 시간마다 Git 변경 사항을 확인하고 만약 지정한 Branch에 Push 상태가 발생했을 경우 Push 된 코드를 가지고 와 Build 시켜 재배포하는 것을 의미한다. 즉, Poll SCM을 통해 Git Branch에서 Push 과정이 발생했을 경우 일정 시간마다(Scheduling) 이를 확인하고 Push된 코드로 SW를 자동으로 빌드하여 재배포하도록 설정하는 것을 의미한다. Poll SCM은 cron job을 통해 Scheduling을 수행한다..
먼저 이전 Section에서 시행했던 Tomcat에 대한 설정을 모두 했다고 생각하고 과정을 진행하도록 하겠다. (당연히 Tomcat은 구동되고 있는 상태여야 한다) 1. Plugin Manager > 설치 가능에서 deploy to 검색 & Deploy to container Plugin 설치 2. 새로운 Item 생성 당연히 Maven Project로 생성해야 한다. 아래에 "Copy from"이라는 Section이 존재하는데, 이전에 생성했던 Item 설정을 그대로 가지고 오고 싶다면 이전 Item의 이름을 입력하면 된다. 이번 Item은 두 번째 Maven Project Item에서 Build 과정까지는 동일하고 Tomcat에 패키징 한 WAR 파일을 구동시키는 과정만 추가된 것이므로 두 번째 I..