Jenkins
-
[Jenkins] 역할 기반 액세스 - Role-based Authorization Strategy PluginCICD 2023. 1. 29. 17:41
Role-based Authorization Strategy 플러그인 보안 및 권한 부여에 대해 보다 세분화된 접근 방식을 사용하려는 경우 역할 기반 액세스 제어를 가능하게 해주는 플러그인입니다. 원하는 권한을 가진 역할 생성 및 특정 역할 삭제가 가능합니다.사용자 및 사용자 그룹에 권한을 할당, 회수하는 것이 가능합니다. 역할 유형 글로벌 역할 작업, 실행 및 SCM 같은 권한이 있는 프로젝트 전체에 걸친 역할 프로젝트 역할 특정 프로젝트에 대한 작업 또는 실행에 권한이 있는 역할 슬레이브 역할 노드를 관리할 권한이 있는 역할 참고 역할패턴은 개체 이름을 기준으로 일치하도록 설계된 정규식입니다. 예를 들어 East로 시작하는 프로젝트가 있는 경우 여기에서 East* 패턴을 사용하여 선택할 수 있습니다...
-
[Jenkins] 사후 처리 - try-catch-finally , catchError , postCICD 2023. 1. 29. 15:22
사후처리( Post-Processing ) 파이프라인 진행중에 작업이 완료되고 작업의 성공 여부와 상관없이 작업 종료 후 항상 또는 조건에 따라 실행되는 작업을 추가합니다. 스크립팅 파이프라인 #1 try - catch - finally try구문에서 실행되는 작업이 실패할 경우 catch구문이 실행되고 finally의 작업은 성공 실패와 상관없이 try가 완료되면 실행됩니다. def err = null try { // pipeline code node ('node-name') { stage ('first stage') { ... } // end of last stage } } catch (err) { currentBuild.result = "FAILURE" } finally { (currentBuild..
-
[Jenkins] 조건부 실행CICD 2023. 1. 28. 22:06
조건부 실행 특정 조건이 참일 때 단일 또는 여러 빌드 단계를 실행하도록 설정할 수 있습니다. 스크립팅 파이프라인 스크립팅 파이프라인의 경우 매개변수 , if문 , 피연산자 조합해서 조건부 실행을 구현할 수 있습니다. node ('worker_node1') { def responses = null stage('selection') { responses = input message: 'Enter branch and select build type', parameters:[string(defaultValue: '', description: '', name: 'BRANCH_NAME'),choice(choices: 'DEBUG\nRELEASE\nTEST', description: '', name: 'BUILD_..
-
[Jenkins] stash , unstash - 나중에 빌드에서 사용할 일부 파일을 보관, preserveStashes , failFastCICD 2023. 1. 28. 15:50
stash 동일한 파이프라인의 실행의 모든 노드 및 agent에서 나중에 사용할 수 있도록 파일 세트를 저장합니다. unstash stash를 통해 저장한 파일 세트를 현재 작업 공간으로 복원합니다. stash, unstash가 필요한 경우는 빌드를 진행한 agent와 빌드된 파일의 테스트를 진행하는 agent가 다를 때 테스트 담당 agent에서 빌드된 파일에 접근하지 못하는 상황이 발생되는데 이러한 경우 stash, unstash를 이용하여 빌드된 파일에 원활하게 접근할 수 있도록 설정 가능합니다. stages { stage('Source') { git branch: 'test', url: '...' stash name: 'test-source', includes: 'build.gradle,src/t..
-
[Jenkins] 파이프라인의 스크립트와 Jenkins 시스템 종류CICD 2023. 1. 26. 15:33
스크립트 종류 스크립팅 파이프라인( Scripted Pipelines ) 'node'을 시작으로 스크립트 작성 시작 장점 적은 섹션으로 작성 가능 비교적 절차적인 코드로 작성 가능 프로그래머에게 친화적인 구조 Jenkins의 이전 버전에 사용된 스크립트와 호환 가능 사용자 지정 작업을 수행할 수 있음 단점 일반적으로 더 많은 프로그래밍이 필요 Groovy 언어 및 환경으로 제한된 구문 검사 워크플로우를 표현하기 위해 비교적 더 복잡함 선언적 파이프라인( Declarative Pipelines ) 'pipeline'을 시작으로 스크립트 작성 시작 장점 Jenkins 웹 양식의 기존 섹션과 비슷한 구조 선언하는 기능 -> 가독성이 높음 Blue Ocean을 통해 생성 가능 알림과 같은 친숙한 Jenkins ..
-
[Jenkins] 몇몇 요소들CICD 2023. 1. 25. 22:50
참고 DSL은 Domain-Specific Language 약어로 Jenkins의 프로그래밍 언어입니다. Groovy 기반이며 Jenkins 관련 기능을 캡슐화하는 용어와 구성을 포함하고 있습니다. Jenkinsfile Jenkins에 파이프라인을 정의할 때 사용하는 파일입니다 구버전 Jenkins에서는 파이프라인의 정의가 Jenkins 서버의 홈 디렉터리에 파일이 생성되고 관리되었는데 최신의 Jenkins는 웹 인터페이스에서 DSL 스크립트 및 Jenkins 서버 외부의 텍스트파일에 작성된 DSL 스크립트(Jenkinsfile)로 관리가 가능합니다. Jenkinsfile은 파이프라인에 사용되는 프로젝트를 인식하는 마커로서의 역할을 할 수 있습니다. 파이프라인을 관리에 대한 권한을 가진 Jenkinsfi..