Skip to content

파이프라인 Build Job 생성 시 Git Repository URL을 미입력 하는 경우 파이프라인 목록 조회 페이지에서 무한 로딩 발생 #21

Description

@chwj7700

개요

숭실대 스파르탄 SW교육원에서 진행하는 'Co-op 클라우드트랙' 강의에서 실습 진행 중 이슈 발견하여 등록합니다.
컨테이너 플랫폼 파이프라인에서 Build Job 생성 시 Git Repository URL을 입력하지 않고 생성하면, 파이프라인 조회 페이지에서 무한 로딩이 발생합니다.

재현 절차

  1. 컨테이너 플랫폼 파이프라인에 로그인
  2. 파이프라인 생성
  3. 해당 파이프라인 내에서 Build Job 생성 시 Git Repository URL을 입력하지 않고 생성 버튼 클릭
  4. 파이프라인 목록 페이지로 이동 -> 무한 로딩

원인 확인

Git Repository URL이 비어있을 경우 필수 값 검증이 누락되어 있습니다. 추가 필요합니다.

  • 프론트엔드 필수값 검증 누락 (UI)

    • jobCreate.jsp의 createBuildJob() 함수에서 repositoryUrl에 대한 빈값 검증 없음
  • NullPointerException 발생 (API)

    • JobService.java: repositoryBranch가 null인 채로 JobCommonTemplate에 전달되어 .startsWith() 호출 시 NPE 발생
    • RepositoryService.java: getRepositoryInfo()에서 repositoryUrl이 null일 때 NPE 발생
    • Job 생성 도중 예외 발생으로 Jenkins Job과 DB 레코드가 비정상 상태로 남음

수정 필요한 위치

  • ap-pipeline-ui
    • src/main/webapp/WEB-INF/jsp/job/jobCreate.jsp
      • createBuildJob() 함수에 repositoryUrl 빈값 검증 추가

비고

  • cp-pipeline repo가 공개되어 있지 않아 ap-pipeline 기준으로 분석하였습니다.
  • ap-pipeline-ui repo에 PR 올려두었습니다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions