...
Table of Contents |
---|
...
젠킨스 설치
폐쇠망 젠킨스 도커 설치 금지 - 환경변수 수동으로 작업해야함
Yum 파일 다운로드
Yum localinstall으로 설치
Plugin 설치 스킵
plugin 오프라인으로 업로드 하여 설치 혹은 같은 버전 오픈망에서 설치하여 {Jenkins_home}/plugins 폴더 압축 → 폐쇠망 Jenkins 디렉토리 같은 위치에 복사
젠킨스 실행
젠킨스 설정
배포 SSH 서버 등록
SSH 서버 설정
Jenkins 관리 → 시스템 설정 → Publish Over SSH
...
Passphrase / Password: 사용자 비밀번호
...
Jenkins 스크립트 적용
Parameters에 파라미터 선언
Code Block |
---|
parameters { |
// SSH SERVER 접속 정보 |
choice(name: 'SSH_SERVER_NAME', choices: [ 'apiprd01', 'apiprd02' ]) |
} |
...
SSH publisher → configName에 변수 적용
sshPublisher( |
...
) |
...
Master-Slave
안드로이드 및 iOS 빌드 서버 접근 관리
Jenkins관리 → 노드 관리
파이프 라인 스크립트 사용방법
agent 부분에 서버명 선언
label 값은 노드 관리에 등록되어있는 서버명(예시)
Code Block |
---|
pipeline { |
...
agent { label 'android01 || android02' } } |
노드 버전 변경
Nodejs공식 홈페이지에서 다운받아 binary로 설치
(예시) /opt/node-v14.16.1-linux-x64
Jenkins 관리 → global tool config → NodeJS
Run shell command에서 환경변수 등록
(예시)
...
Code Block |
---|
# Name = NODE_HOME |
...
NODE_VERSION=v14.16.1 |
...
NODE_DISTRO=linux-x64 |
...
NODE_HOME="/opt/node-${NODE_VERSION}-${NODE_DISTRO}" |
...
export PATH=$PATH:$HOME/bin:$PATH:$NODE_HOME/bin |
...
파이프라인 스크립트에 선언
사용하고자 하는 Stage에 선언
Code Block |
---|
tools { |
...
nodejs "NODE_HOME" |
...
} |
...
SSH로 Node 명령어 실행시 환경 변수를 못찾는 경우
emmpadm의 bash_profile에 환경변수 등록 후 사용하고자 하는 위치에서 source ~/.bash_profile 명령어 실행
...
노드 버전 변경 후 tarball 에러 발생시
API 운영서버 nas에 headers 파일 저장 후 젠킨스에서 실행
sh "npm config set tarball http://emmp-api.skhynix.com/nas/proto-ui-libs/node-v14.16.1-headers.tar.gz"
...
플러그인 설치
오프라인 환경에서는 업로드 하여 설치 진행
사용하고자 하는 플러그인 검색
플러그인 업로드
Jenkins config → 플러그인매니저 → 고급 → 플러그인 업로드 → 지금 확인 클릭
...