Justin의 개발 로그
article thumbnail
Jenkins Unix(Linux) 계정을 사용한 인증 - 내부회계감사 비밀번호 관리 규칙 대응
프로그래밍/Jenkins 2020. 12. 4. 13:58

내부회계감사에서 Jenkins의 비밀번호 관리 방식이 미흡하다는 지적사항을 대응하기 위한 방안입니다. Jenkins의 기본 인증 방식인 Jenkins' own user database는 비밀번호 복잡성 등에 대한 정책을 전혀 설정할 수 없어 '12345'와 같은 단순한 비밀번호도 설정이 가능합니다. 이를 보완하기 위해서는 LDAP, Unix user/group database 등 추가 옵션이 제공되는데, LDAP은 추가 시스템 구성 및 연동이 필요해서 비교적 간단한 Unix user/group database 옵션을 사용해 보고자 합니다. Configure Global Security > Unix user/group database 제 경우 이미 관련된 설정을 마쳤기 때문에 Success가 나오는데, T..

로그 보관(삭제 주기) 스크립트
프로그래밍/Jenkins 2020. 3. 30. 13:23

#젠킨스 로그의 보관 주기를 스크립트로 제어하는 방법 def daysToKeep = 10 def numToKeep = 1200 def artifactDaysToKeep = -1 def artifactNumToKeep = -1 Jenkins.instance.getAllItems(AbstractItem.class).each { println("=====================") println("JOB: " + it.name) println("Job type: " + it.getClass()) if (it instanceof org.jenkinsci.plugins.workflow.multibranch.WorkflowMultiBranchProject) { try { orpStrategy = new com..

article thumbnail
Jenkins 로그 삭제
프로그래밍/Jenkins 2019. 11. 4. 17:01

상용 배치를 Jenkins로 운영하다보니 상용 배치 서버의 File Storage가 너무 빨리 줄어드는 점이 이상해서 파악 및 조치를 했다. 배치 어플리케이션에서 쌓이는 로그 외에도 아래 경로에 각 배치(Job)별로 Console 로그가 또 쌓이고 있더라... 버튼 클릭으로 로그 삭제 버튼 클릭으로 로그를 지우려면 Delete log 플러그인을 설치한다. /var/lib/jenkins/jobs Groovy Script로 자동 로그 삭제 아래 Post를 참고함 https://blog.clairvoyantsoft.com/jenkins-cleanup-workspace-reduce-disk-usage-18310097d3ef Jenkins Workspace Cleanup - Automate folders clea..

Accessing OS environment variables in Jenkins
프로그래밍/Jenkins 2019. 8. 30. 10:09

When I set the variable using the Environment Inject plugin in jenkins it worked

Jenkins service account user 변경
프로그래밍/Jenkins 2019. 8. 30. 09:40

To change the service, open the /etc/sysconfig/jenkins (in Debian [Ubuntu] this file is created in /etc/default) and change the JENKINS_USER to the user you want. In this example, it's talenduser because that is the user that owns the product suite on this machine. Make sure that the user you are changing to actually exists in the system (you can check the user in the /etc/passwd file if you are..

[Jenkins] shell 명령어 실행을 위한 관리자 권한 부여
프로그래밍/Jenkins 2019. 8. 20. 17:53

젠킨스로 shell을 실행하려면 shell이 jenkins 권한 폴더에 있어야 하며, shell 파일도 jenkins 실행 권한이 있어야 함. 배포 프로젝트 root에 쉘을 넣고, 실행하길 권장. 젠킨스에서 빌드 진행 시 관리자 권한으로 실행이 필요한 경우가 있다. ex) sudo build_script.sh jenkins에 별다른 권한을 주지 않았다면 무조건 빌드 에러가 발생한다. ㅠㅠ 아래와 같이 관리자 권한을 주도록 하자 1. 관리자 권한 설정 파일을 연다. $ sudo gedit /etc/sudoers 2. jenkins에 관리자 권한을 제공하기 위해 아래의 내용을 추가 한 후 저장한다. jenkins ALL=(ALL) NOPASSWD: ALL P.S. 관리자 권한을 광범위 하게 제공하는것이 불안..

article thumbnail
Jenkins + BitBucket + Gradle 빌드 설정하기 #2
프로그래밍/Jenkins 2019. 7. 11. 18:35

JDK와 Gradle 설정 빌드를 하기 위해서 JDK와 Gradle을 설정해야 합니다. 젠킨스 관리 페이지에 접속합니다. Jenkins 관리 -> Global Tool Configuration 에 들어갑니다. JDK 이름을 입력하고, 사용할 버전을 선택합니다. Oracle 계정을 입력하라고 나오면 oracle.com에 접속이 가능한 계정/비밀번호를 입력합니다. Git(Bitbuckt)을 아래 내용을 참고로 기본값을 입력하고, Gradle 이름을 입력 후 사용할 버전을 선택합니다. 로컬 개발에 사용하는 버전과 일치시키는 것이 좋겠죠. 제 경우에는 5.1.1 입니다. ❯ gradle -version Welcome to Gradle 5.1.1 혹시 빌드가 안되는 경우 아래와 같이 프로젝트에 기본으로 포함된 그..

article thumbnail
Jenkins + BitBucket + Gradle 빌드 설정하기 #1
프로그래밍/Jenkins 2019. 7. 11. 17:18

Bitbucket은 소스관리를 위해 Private 저장소를 무료로 제공하는 서비스 입니다. 프로젝트를 팀단위로 진행하다보면 팀원들이 기능을 나눠 개발하게 되고 저장소에 푸시하게 됩니다. 그러면 이를 주기적으로 통합하고 빌드가 잘 이루어지를 확인할 필요가 있는데 이 때 젠킨스와 같은 CI툴을 사용하면 여러가지 이점들을 누릴 수 있습니다. 주기적 혹은 푸시를 감지하여 서버에서 빌드를 수행합니다. 테스트 코드를 실행하고 커버리지를 리포트 받을 수 있습니다. 정적 분석 및 코드 품질을 모니터링 할 수 있습니다. 대표적인 이 기능들 외에도 여러가지 기능을 활용 할 수 있습니다. 이제 젠킨스(Jenkins)를 Bitbucket과 연동하는 방법을 정리해보겠습니다. 1. 젠킨스에 Bitbucket 플러그인 설치 Jen..