Jenkins REST API in JAVA 특정 시기마다 대략 20개 정도의 배치를 Jenkins 에서 수동 재기동해야 하는 일이 있다. 가끔씩? 종종? sometimes.. 있는 일이긴 하지만 너무나 귀찮은 일이다. 한 번의 어떠한 동작으로 이 귀찮은 일을 처리할 수 있는 방법을 떠올리다 Jenkins API 를 활용해 보자는 생각이 들었다. . 이제 하나의 API 호출만으로 20개 정도의 배치가 Jenkins 에서 실행되도록 해보자. 참고로, jenkins-rest 라이브러리를 활용할 수도 있지만 REST API 호출을 적용해볼 예정이다. API Token REST API 사용을 위해 먼저 사용자 API Token 이 필요하다. 아래 경로에서 토큰을 추가할 수 있다. 설정 경로 Jenkins 메인 ..
Spring Batch Test Spring Batch를 테스트해 보는 시간을 가져보려고 한다. Spring Batch와 아직 어색어색하니까..😬 조금씩 친해지면서 테스트 관련 내용을 업데이트할 예정이다.🙄 준비 배치 테스트를 위해 spring-batch-test 의존성이 필요 testImplementation("org.springframework.batch:spring-batch-test") 통합 테스트 통합 테스트에 필요한 어노테이션들을 먼저 간략히 살펴보면, 일반 스프링 테스트 코드를 작성하면서 많이 보았던 익숙한 어노테이선들도 있을 것이다. @Slf4j 로깅을 위해 선언 @ExtendWith(SpringExtension.class) Junit5의 라이프사이클에 Test에서 사용할 기능 확장을 위해..
Spring Batch 향로님 Spring Batch 가이드 보고 따라하기 jojoldu/spring-batch-in-action 배치 기능 활성화 보통 실시간 처리가 어려운 대용량 데이터나 대규모 데이터일 경우 배치를 활용 배치기능 활성화를 위해 프로젝트 Application 클래스에 @EnableBatchProcessing 를 추가해주자. @EnableBatchProcessing @SpringBootApplication public class SpringBatchTestApplication { public static void main(String[] args) { SpringApplication.run(SpringBatchTestApplication.class, args); } } Job 생성하기 ..
Java Quartz Scheduler Java의 Scheduling Library를 활용해서 일정 시간마다 코드를 실행시켜보자. Quartz Quartz는 다중 Thread Architecture기반 Thread 환경 관리를 위해 ThreadPool 에 의존 주요 Interface Scheduler – scheduler 와 상호작용하는 기본 API Job – 실제 작업을 수행하는 개체 JobDetail – Job instances 정의에 사용 Trigger – 주어진 작업(Job)이 수행될 조건 결정 (특정시간, 횟수, 반복주기 등) JobBuilder – Job의 instances 정의하는 JobDetail instances 빌드에 사용 TriggerBuilder – Trigger instances ..