Jenkins Global 환경변수

twoStones·2022년 1월 19일
0

젠킨스

목록 보기
11/11
post-thumbnail

젠킨스의 어떤 Job에서 사용할 수 있는 변수들

환경변수들을 확인할 pipeline Job 생성

pipeline {
    agent any
    stages {
        stage('Example1') {
            steps {
                sh 'printenv'
            }
        }
    }
}
  • 빌드하고 로그 통해서 환경변수들 확인

Web UI로 등록해보기

  • Jenkins 관리 => 시스템 설정 => Global properties 항목
  • 새로 추가할 환경 변수 저장
  • 위에서 만든 Job으로 추가한 환경 변수들 확인

Scripted 에서 환경변수 추가하고 사용하기

  • 최상위 파이프라인 블록에 사용되는 environment directive는 파이프라인 내의 모든 단계에 적용
  • stage 내에 정의된 environment directive는 주어진 환경 변수를 stage 내에만 적용한다.
    예제
pipeline {
    agent any
    environment { 
        CC = 'clang'
    }
    stages {
        stage('Example1') {
            steps {
                echo "Running ${env.BUILD_ID} on ${env.JENKINS_URL}"
            }
        }
        
        stage('Example2') {
			environment { 
                DEBUG_FLAGS = '-g'
            }
            steps {
                sh 'printenv'
            }
        }
        
        stage('Example3') {
            steps {
                echo "${env.DEBUG_FLAGS}"
            }
        }
    }
}
  • 위에서 만든 Job의 pipeline을 변경하고 빌드한 후 로그로 확인

동적으로 환경변수 설정하기

기본 환경변수들

  • BUILD_ID : 현재 빌드 ID
  • BUILD_NUMBER : 현재 build number를 나타냄
  • BUILD_TAG : jenkins-JOBNAME{JOB_NAME}-{BUILD_NUMBER} 조합의 문자
  • BUILD_URL : http://server:port/jenkins/job/foo/15/와 같은 현재 build의 URL을 알려준다.
  • JOB_NAME : 현재 빌드중인 Job의 이름, JOB 생성 시 작성했던 이름
  • BRANCH_NAME : multibranch Job인 경우 사용 가능, 현재 빌드되고 있는 브랜치명을 알려줌
    깃허브 연동하고 Branches to build를 작성한 경우에 사용 가능
  • JENKINS_URL : http://server:port/jenkins/와 같은 jenkins의 URL을 알려줌
  • JOB_URL : http://server:port/jenkins/job/foo/와 같은 job의 URL을 알려준다

참고

profile
일단 작성

1개의 댓글

comment-user-thumbnail
2023년 10월 6일

Manage Jenkins 에서 환경변수(ex:G_VAL_TEST)를 등록하고, 하나의 Job에서 파라미터를 입력받아, 위의 G_VAL_TEST에 넣고 다른 Job에서 G_VAL_TEST를 echo 했을때 입력한 값이 아닌 초기값이 출력됩니다. 환경변수에 파라미터 값을 입력하는 방법이 있나요?

답글 달기