Window 환경에서 Jenkins 환경변수 미적용 문제

hanana·2024년 4월 27일
0

간단한 Jenkins파일을 생성하고
Webhook 이벤트를 통해서 프로젝트 빌드를 실시하려고 하였다.

pipeline {
    agent any
    stages {
        stage('1') {
            steps {
                echo "Hello world11"
                bat 'npm run build'
            }
        }
    }
}

그런데

명령어를 찾을 수 없다고 나온다!


환경변수 설정하기

Dashboard > Jenkins관리 > System > Global properties
에서 환경변수를 지정해주었다.

맨끝에 npm 파일 대신 폴더위치 까지만 지정해보고
젠킨스를 재실행해보고
서버를 껏다 켜봐도 동일한 문제가 반복되었다...


찾아보니 의외로 많은 사람들이 겪었고,
원래 뭔가 잘 안되는 설정인거 같았다!
https://gall.dcinside.com/board/view/?id=programming&no=816292


[해결] Jenkinsfile 수정

젠킨스 배치파일의 environment 영역에 Path를 재지정 해주었다.

pipeline {
    environment {
        PATH = "C:\\WINDOWS\\SYSTEM32;%PATH%;C:\\Users\\UserName\\AppData\\Roaming\\nvm\\version"
    }

    agent any

    stages {
        stage('1') {
            steps {
                script {
                    try {
                        bat 'npm run build'
                    }catch (Exception err) {
                        // return되는 값이 없어서 빌드에 성공해도 실패했다는 응답이 오는것처럼 보인다.
                        // try - catch 구문으로 묶어주었다.
                    }
                }
            }
        }
    }
}
profile
성숙해지려고 노력하지 않으면 성숙하기까지 매우 많은 시간이 걸린다.

0개의 댓글