Jenkins Job을 구성하며 Execute Shell로 Jenkins가 설치된 서버에 특정 명령을 날리려고 하였다. 아무것도 아니고 그냥 /app/jasypt 라는 폴더 밑에서 작업을 하려고 했는데 다음과 같은 오류가 발생했다. 분명 jenkins가 설치된 서버에 들어가서 /app/jasypt 라는 경로에 들어갔을때는 존재하는 폴더이고 권한 또한 알맞게 들어가 있었다. 하지만 위와 같이 cd: can't cd to 라는 오류가 발생하며 발생하며 접근이 되지 않을때는 혹시 jenkins가 docker로 설치가 되지는 않았는지 확인을 해보자. docker로 설치가 되었다면 volume으로 지정한 곳에 필요한 파일을 위치시키고 작업을 진행하도록 하자. 끝!
엄청 고인물일수도 있는데... 잠도 안오고 해서... Jenkins에 처음 접속하면 위와 같이 온화한 Jenkins아저씨가 반겨준다. 하지만! plugin manager에서 emotion 이라고 검색을 해보면 emotional-jenkins-plugin 라는 플러그인을 찾을 수 있다. 설치! 플러그인 설치가 다 되었다면 job 설정으로 들어와보자. 이곳에서 빌드 후 조치 추가 (Add post-build action) 에서 Emotional Jenkins를 선택한다. 그리고 저장을 누르고 빠져나온다. 그럼 좌측 메뉴에 Jenkins 아저씨가 보일것이다. 이 아저씨는 현재 Job의 상태를 의미한다. 위와 같이 성공을 한 Job은 평소와 같이 온화한 Jenkins아저씨가 나타나고 Job이 실패를 하면 오른쪽..
지금은 거의 사용되지 않는(아직도 많이 사용할수도 있겠지만..) Jenkins + Ant + SVN + Windows서버 조합으로 자동배포하는 포스팅을 하려고 한다. Hudson이 껴있었으면 딱 again 2010년쯤 유행했던 기술셋인거 같다. 이 글을 쓰는 이유는 이제 거의 사용되지 않고 있어 기억에서 흐려지고 있어서 나중에 혹시라도 다시 써먹을수도 있기에 기록을 남겨둔다. 오래된 기술셋이지만 요즘에 많이 쓰이는 Maven + Git + Linux 서버를 사용한다 하더라도 메카니즘은 동일하니 이 과정을 알아두면 분명 도움이 된다. 1. Ant Build Script 작성 가장 먼저 해야 할일은 Ant Build Script를 짜는 것이다. 아래 링크를 참조해서 작성을 해보자. Ant Build (bui..
Jenkins와 KeyCloak을 openid 방식으로 연결을 하다가 로그인이 안되고 KeyCloak 오류화면으로 리다이렉트 되는 현상이 발생을 했다. http://localhost:8180/auth/realms/Oingdaddy/protocol/openid-connect/auth?client_id=testuser&redirect_uri=http://localhost:18080/securityRealm/finishLogin&response_type=code&scope=web-origins%20openid%20roles%20oingdaddy%20email%20profile&state=NWVhNWViYjQtYjg2Ni00 이런식으로 되어서 Jenkins에 들어가서 수정을 해야 하는데 아예 들어갈 수 없는 상..
Jenkins에 대한 주제를 많이 다루면서 설치하는 방법에 대해서는 포스팅을 안했었다니... 마침 새로운 PC에 Jenkins를 설치할 일이 있어서 겸사겸사 포스팅도 해본다. Jenkins download and deployment Jenkins – an open source automation server which enables developers around the world to reliably build, test, and deploy their software www.jenkins.io 위의 사이트에 들어가서 조금만 내리면 아래와 같이 유형에 따라 Jenkins 설치파일을 제공한다. Windows를 클릭하면 jenkins.msi (윈도우용 설치파일) 이 다운로드가 된다. 필자의 버전은 2.26..
지난 포스팅에서는 Jenkins를 KeyCloak을 이용해서 로그인하는 방법에 대해서 알아보았다. 단순 로그인만 통합로그인으로 하는것에서 그치지 않고 이번에는 KeyCloak의 권한(ROLE)에 따라 Jenkins의 사용권한을 통제하는 방법에 대해서 알아보겠다. 전과 마찬가지로 Jenkins와 KeyCloak은 설치가 되어있어야 하며 둘간의 기본적인 연동방법은 위의 링크를 클릭해서 보도록 하자. KeyCloak 설정 - Role 설정 지난시간에 KeyCloak에서 Role을 설정할때 위와 같이 jenkins_admin를 했었다. 권한관리를 하기 위해 Add Role을 눌러서 새로운 권한을 추가시켜준다. jenkins_user 라는 Role을 추가하였다. - User 설정 기존의 User를 이용해도 되지만..
프로젝트를 관리하다보면 여러개의 솔루션을 각각 계정관리를 해야 하는데 KeyCloak을 사용하면 어느정도 통합해서 관리를 할 수 있다. Jenkins도 KeyCloak을 통해서 통합로그인을 할 수 있다. 기본적으로 Jenkins와 KeyCloak이 설치 되어있다고 가정하고 진행을 하도록 하겠다. KeyCloak이 설치되지 않았다면 여기를 참고해서 구성하도록 하자. KeyCloak 설정 가장 먼저 해야 할 일은 KeyCloak에서 Jenkins Client를 추가하는것이다. KeyCloak에서 Client를 추가하는 기본적인 방법은 여기를 참고하도록 하자. 아래 내용을 바로 봐도 무방하다. Clients를 누르면 KeyCloak 자체적으로 생성된, 그리고 내가 생성한 Client 목록이 보인다. 우측 상단..
Jenkins의 기능은 무궁무진한것 같다. 아직 빙산의 일각밖에 모른다는 생각도 든다. 이번에 포스팅할 내용은 Jenkins에서 제공하는 REST API를 사용해 Jenkins의 Job을 생성, 실행, 삭제, 결과조회 등을 해보는 것이다. Jenkins의 Job을 외부에서 실행시키는건 어떤 경우가 있을까? 정말 다양한 용도로 활용할 수 있겠지만 필자의 경우는 기존에 web에서 ondemand 형식으로도 동작하던 batch를 Jenkins에서 관리하게 되었고 이를 Jenkins의 REST API를 통해서 호출을 하는것이 목적이다. Jenkins에서의 설정 API 통신을 하기 위한 Token 발행 Jenkins 메뉴 > 사람 > token 발행할 user 명 > 설정 설정에 들어가면 API Token 설정을..