회사에서 Gerrit~GitHub 연계를 위해서 방법을 찾던 中

부서원들이 GitHub Plugin이라는 것이 있다는 것을 알아냈는데... 좀 문제가 있었다.


바이너리가 아니라 빌드를 해서 사용해야한다는 문제인데...

더욱 더 큰 문제는... 빌드가 쉽지는 않다는 사태가...


기본 가이드 링크는 아래와 같다.

   - https://gerrit.googlesource.com/plugins/github/+/refs/heads/stable-2.12/README.md


언제나 그렇지만... 시키는대로 따라할 수가 없어서 문제이지...



[ Action ]


참고할 정보가 있는 기준(?) 레퍼런스...


https://gerrit-review.googlesource.com/Documentation/dev-buck.html

링크가 깨졌다.


그렇지만, 포기하지 않는다!!!

https://review.openstack.org/Documentation/dev-buck.html

여기에서 확인할 수 있었다.



① Git

   - 소스들을 받아오기 위해서는 기본적으로 Git이 필요하다.


$ sudo apt-get install git


② JDK

   - Gerrit은 기본적으로 Java 기반이기에... 가이드에는 JDK7이 필요하다고 되어있다.

   - 무시하고 JDK8로 환경을 맞춰서 했다가 다 망했다..

   - 무조건 JDK7 환경으로 진행을 해라!!!


③ Ant

   - Buck 이라는 빌드 도구를 빌드하기 위해서는 Ant가 필요하다.

   - 응!? Unix is not Unix ?


$ sudo apt-get install ant


④ Gerrit download

   - Gerrit 빌드할 준비를 위해 미리 소스코드를 내려 받는다.

   - 이번 빌드는 2.10 버전을 기준으로 할 것이다.

     (실제로 2.10 버전을 보면 2.10.7 까지 있는데, 우선은 가이드에 있는 2.10.2 버전으로 해보겠다)


$ cd /srv/workspace

$ git clone --recursive https://gerrit.googlesource.com/gerrit

$ cd gerrit

$ git reset --hard v2.10.2



⑤ Buck

   - 이번에 처음 들어본 빌드 도구이다. Buck ?!

   - Facebook 에서 만들었고, 오픈소스로 공개한 것인가 보다.

      . https://buckbuild.com/

      . https://github.com/facebook/buck


$ cd /srv/workspace

$ git clone https://github.com/facebook/buck

$ cd buck

$ git checkout $(cat ../gerrit/.buckversion)

$ ant

$ export PATH=$PATH:/srv/workspace/buck/bin/



⑥ Gerrit Build

   - 이제 Buck으로 Gerrit을 빌드해보자. 안해도 된다. 그냥 해보기.


$ cd /srv/workspace/gerrit

$ buck build gerrit



⑦ maven

   - 뒤에 것들을 진행하기 위해서 이것도 필요하다.


$ sudo apt-get install maven



⑧ GitHub API

   - 이것도 필요하단다...


$ cd /srv/workspace

$ git clone https://github.com/lucamilanesio/github-api.git

$ cd github-api/

$ mvn install -DskipTests=true



⑨ singleusergroup plugin

   - 또 필요한거 빌드 하자.


$ cd /srv/workspace/gerrit

$ cd ./plugins/singleusergroup

$ git reset --hard v2.10.2

$ cd /srv/workspace/gerrit

$ buck build plugins/singleusergroup/



⑩ github plugin

   - 이제 본게임으로 들어가자

   - 최신 버전으로는 빌드가 안되어 알아낸 방법..... 2.10 버전으로 하면 된다.


$ cd /srv/workspace

$ git clone https://gerrit.googlesource.com/plugins/github

$ cd github

$ git checkout -b stabe-2.10 origin/stable-2.10

$ mvn install


...


[INFO] ------------------------------------------------------------------------

[INFO] Reactor Summary:

[INFO] 

[INFO] Gerrit Code Review - GitHub integration ........... SUCCESS [2.338s]

[INFO] Gerrit Code Review - GitHub OAuth login ........... SUCCESS [22.009s]

[INFO] Gerrit Code Review - GitHub plugin ................ SUCCESS [18.869s]

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESS

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 44.113s

[INFO] Finished at: Mon Mar 27 00:09:03 KST 2017

[INFO] Final Memory: 31M/91M

[INFO] ------------------------------------------------------------------------


빌드까지는 성공~

이후 설치 및 셋팅은 다음 기회에~^^


github-oauth-2.10.3.jar

original-github-oauth-2.10.3.jar

github-plugin-2.10.3.jar

original-github-plugin-2.10.3.jar

github-api-1.69.jar

github-api-1.69-SNAPSHOT.jar

singlegroup.tar.gz

singlegroup.tar.gz

singlegroup.tar.gz

github-oauth-2.13.jar

original-github-oauth-2.13.jar

github-plugin-2.13.jar

original-github-plugin-2.13.jar

singleusergroup.tar.gz

github-api-1.69-SNAPSHOT.jar

singlegroup.tar.gz


반응형


우리 코딩쟁이들에게 어쩔 수 없는 숙명으로 다가오는 멋진 세상 "Hello World !!!"

https://developer.atlassian.com/docs/getting-started/set-up-the-atlassian-plugin-sdk-and-build-a-project/create-a-helloworld-plugin-project



$ cd atlastutorial (앞에서 만든 튜토리얼 디렉토리)


$ ls -al

합계 12

drwxrwxr-x 3 hp14 hp14 4096  7월  5 01:00 .

drwxrwxr-x 4 hp14 hp14 4096  7월  5 00:50 ..

drwxrwxr-x 3 hp14 hp14 4096  7월  5 01:00 amps-standalone


$ atlas-create-jira-plugin


...

[INFO] Sending event to Google Analytics: AMPS:jira - SDK First Run - 5.0.13

[INFO] determining latest stable product version...

[INFO] using latest stable product version: 6.4.7

[INFO] determining latest stable data version...

[INFO] using latest stable data version: 6.4.7

Define value for groupId: : com.atlassian.tutorial

Define value for artifactId: : helloworld

Define value for version:  1.0-SNAPSHOT: : 1.0-SNAPSHOT

Define value for package:  com.atlassian.tutorial: : com.atlassian.tutorial.helloworld

Confirm properties configuration:

groupId: com.atlassian.tutorial

artifactId: helloworld

version: 1.0-SNAPSHOT

package: com.atlassian.tutorial.helloworld

 Y: : Y

...

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESS

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 05:00 min

[INFO] Finished at: 2015-07-09T23:04:27+09:00

[INFO] Final Memory: 17M/41M

[INFO] ------------------------------------------------------------------------


ls -al


합계 12

drwxrwxr-x 3 hp14 hp14 4096  7월  9 23:04 ./

drwxrwxr-x 5 hp14 hp14 4096  7월  9 22:58 ../

drwxrwxr-x 3 hp14 hp14 4096  7월  9 23:04 helloworld/


$ cd helloworld


$ atlas-run



여기에서 주의할 점은...

앞에서 했던 "$ atlas-run-standalone --product jira"가 실행된 상태가 아니다.

즉, 앞에서 실행한 것 모두 종료 시키고 해야 한다.


"$ atlas-run"만으로 다 된다.



그런데...




자꾸 실패한다. 실행이 안된다.

새로 깨끗한 상태에서 처음부터 다시 해보기도 하고, 뭔가 자꾸 손도 대보고 했지만 계속 실패...


로그를 살펴보면 자꾸 Timeout이라는 내용이 나오는 것을 발견! 뭔가 수상하다!!!


혹시 로딩 타이밍이 문제인가 ?!


그래서 혹시나 서브 서버가 아니라, 본체에 VirtualBox를 설치해서 돌려보았다.




되었다?!




로그인 후 관리자 메뉴에서 "Add-ons"를 선택하자




메뉴 중에서 "Manage add-ons" 선택



방금 만든 helloworld 플러그인이 보인다.


아래 것은 테스트 ???

아직 뭔지 잘 모르겠지만 2개가 보인다.


뭐 여하튼 성공 !!!






결론은...


성능 나쁜 - 느린 - 서버에서는 실행할 때 에러가 난다.

즉, 어느 정도 성능이 되는 서버에서 돌려야 한다.


이걸 몰라서.... 3일을 날렸다.


젠장.


반응형

 

JIRA의 Plugin을 개발해보기 위해서 개발 환경을 구축해보고자 한다.

 

참고할 사이트는 다음과 같다.

   - https://developer.atlassian.com/docs/getting-started/set-up-the-atlassian-plugin-sdk-and-build-a-project

 

너무 친절하고 깔끔하게 잘 정리되어 있지만,

알려준대로 진행을 해도 원하는 결과가 잘 나오지 않아서 아래와 같이 정리해 본다.

 

실패과정까지 그대로 기술하였으니,

전체적으로 한 번 읽어보고 따라해보기 바란다.

 

 

□ 작업 환경

 

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.2 LTS
Release: 14.04
Codename: trusty

 

 

□ Source 내려 받아서 설치하기

 

$ java -version
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

 

$ echo $JAVA_HOME
/usr/local/java/jdk1.8.0_05

 

$ wget https://marketplace.atlassian.com/download/plugins/atlassian-plugin-sdk-tgz -O ./atlassian-plugin-sdk.tar.gz

 

$ tar zxvf ./atlassian-plugin-sdk.tar.gz

 

$ mv ./atlassian-plugin-sdk-5.0.13 ./atlassian-plugin-sdk

 

$ nano ~/.bashrc

 

...

export PATH="$PATH:/.../atlassian-plugin-sdk/bin"

 

$ source ~/.bashrc

 

$ atlas-version

ATLAS Version:    5.0.13
ATLAS Home:       /srv/workspace/atlassian/atlassian-plugin-sdk
ATLAS Scripts:    /srv/workspace/atlassian/atlassian-plugin-sdk/bin
ATLAS Maven Home: /srv/workspace/atlassian/atlassian-plugin-sdk/apache-maven-3.2.1
--------
Executing: /srv/workspace/atlassian/atlassian-plugin-sdk/apache-maven-3.2.1/bin/mvn --version -gs /srv/workspace/atlassian/atlassian-plugin-sdk/apache-maven-3.2.1/conf/settings.xml
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-15T02:37:52+09:00)
Maven home: /srv/workspace/atlassian/atlassian-plugin-sdk/apache-maven-3.2.1
Java version: 1.8.0_05, vendor: Oracle Corporation
Java home: /usr/local/java/jdk1.8.0_05/jre
Default locale: ko_KR, platform encoding: UTF-8
OS name: "linux", version: "3.13.0-55-generic", arch: "amd64", family: "unix"

 

 

$ cd

$ mkdir atlastutorial

$ cd atlastutorial

$ atlas-run-standalone --product jira

 

...

Would you like to subscribe to the Atlassian developer mailing list? (Y/y/N/n) Y: : n
...

[INFO] [talledLocalContainer] Tomcat 7.x starting...
[INFO] [stalledLocalDeployer] Deploying [/home/hp14/atlastutorial/amps-standalone/target/jira/jira.war] to [/home/hp14/atlastutorial/amps-standalone/target/container/tomcat7x/cargo-jira-home/webapps]...
[INFO] [talledLocalContainer] Tomcat 7.x started on port [2990]
[INFO] jira started successfully in 1649s at http://VBox14:2990/jira
[INFO] Type Ctrl-D to shutdown gracefully
[INFO] Type Ctrl-C to exit

 

여기까지 되었으면 이제 웹으로 접속만 하면 된다.

   - http://localhost:2990/jira

 

 

그런데, 위와 같은 에러가 발생한다.

똑같은 과정을 여러번 반복해도, 설치 후에 재부팅을 해서 다시 진행을 해도, 뭘 해도 계속 에러가 발생했다.

 

그래서 다른 방법으로 진행해보기로 하였다.

 

 

□ apt-get을 이용하여 설치하기

 

$ sudo sh -c 'echo "deb https://sdkrepo.atlassian.com/debian/ stable contrib" >> /etc/apt/sources.list'

 

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B07804338C015B73

 

$ sudo apt-get install apt-transport-https

 

$ sudo apt-get update

 

$ sudo apt-get install atlassian-plugin-sdk

 

$ atlas-version

ATLAS Version:    5.0.13
ATLAS Home:       /usr/share/atlassian-plugin-sdk-5.0.13
ATLAS Scripts:    /usr/share/atlassian-plugin-sdk-5.0.13/bin
ATLAS Maven Home: /usr/share/atlassian-plugin-sdk-5.0.13/apache-maven-3.2.1
--------
Executing: /usr/share/atlassian-plugin-sdk-5.0.13/apache-maven-3.2.1/bin/mvn --version -gs /usr/share/atlassian-plugin-sdk-5.0.13/apache-maven-3.2.1/conf/settings.xml
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-15T02:37:52+09:00)
Maven home: /usr/share/atlassian-plugin-sdk-5.0.13/apache-maven-3.2.1
Java version: 1.8.0_05, vendor: Oracle Corporation
Java home: /usr/local/java/jdk1.8.0_05/jre
Default locale: ko_KR, platform encoding: UTF-8
OS name: "linux", version: "3.13.0-55-generic", arch: "amd64", family: "unix"

 

$ cd

$ mkdir atlastutorial

$ cd atlastutorial

$ atlas-run-standalone --product jira

 

확실히 간단하기는 하다. 이제 접속만 하면 된다.

 

 

뭔가 숫자는 줄었지만, 여전히 에러가 발생한다. 이런...

 

 

 

 

□ JDK 버전 올리기

 

혹시나 하는 마음으로 JDK 버전을 바꿔보기로 하였다.

앞에서 기록으로 남겨놓았지만, 기존에 설치된 JDK 버전은 1.8 버전은 맞다.

 

$ java -version
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)

 

혹시 몰라서 JDK의 버전업을 해보았다.

 

$ java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

 

그리고 나서 Source 설치 과정을 다시 진행 → #성공

 

아.... 몇 일을 뻘짓을 한 원인이... JDK 버전 때문이었다니...

 

 

 

 

□ 첫 실행

 

접속 하자 !!!

   - http://localhost:2990/jira

 

 

몇 일만의 접속 화면이냐....!!!

   - ID/Passwd  = admin/admin

 

우앙... 기쁘다.

웰컴이란다. 아바타도 한 마리 골라주자.

 

근데... 나 SDK 초보이기는 하지만, 사용자/Administrator로는 초보가 아닌데...

가이드 과정이 진행된다.

 

 

우선 프로젝트를 하나 만들어야 하나보다. 만들어보자.

 

 

각자 취향에 맞게 만들면 된다.

 

뭐 굳이 이슈까지 만들라고 하는지 모르겠다. 그냥 스킵~

 

 

"base URL"은 Update 해주자. 그냥 localhost로 셋팅하는 것이 여러모로 clear할 것 같다.

 

 

JIRA 시스템이 하나 등장했고, 프로젝트도 하나 만들어졌다.

 

 

하아... 행복하다.

 

반응형

'Development Tools > Atlassian JIRA' 카테고리의 다른 글

My First JIRA Plugin Project  (0) 2015.07.11

Redmine에 조금은 특이한 기능이 하나 있다.

바로 뉴스(News)라는 메뉴인데,
게시판 인터페이스에 "요약"이라는 필드가 하나 추가된 형태로 일종의 공지사항과 같은 역할을 한다.

팀원들에게 공지할 내용이나 새로운 소식들을 올려놓으면
Redmine의 첫 페이지와 프로젝트의 첫 페이지(개요)에 그 내용이 출력이 된다.
모든 프로젝트의 뉴스를 모아서 보여주는 메뉴도 있다.

제대로만 활용하면 꽤나 유용한 기능인 것은 분명하지만,
개발자에게 조금 더 자극적(?)으로 공지를 하고 싶은 경우에는 조금 아쉬운 부분도 있다.

이 때 사용할 수 있는 아주 유용한 Plugin이 하나 있다.


□ Name    : Banner
□ URL      : http://www.redmine.org/plugins/banner


1. 테스트 환경

   - 현재 가장 최신 버전으로 테스트 했으며, 직접 Source code를 내려 받아서 설치했다.
   - 여기 블로그의 포스팅을 참고하면 된다.

Environment:
  Redmine version                        2.3.0.stable
  Ruby version                             1.9.3 (i686-linux)
  Rails version                             3.2.13
  Environment                              production
  Database adapter                       PostgreSQL



2. 경로 & 권한

   - 이 부분에 대해서 필자가 완벽히 이해를 하고 마스터를 한 것이 아니라서 모든 경우에 대해서 설명은 못하겠다.
   - 우선 필자가 구축한 Redmine은 WAS로 Apache2를 선택했고, Passenger 모듈을 활용했다.
   - 경로는 필자의 습관상 [ /srv/install/redmine/ ] 밑에 설치를 했다.
   - 마지막으로, 당연히 www-data 계정에게 필요한 소유권을 부여했다.
   - 보안상의 이슈는 논외로 하자.

   - 사실 필자는 조금 무식해서 Ruby에 대한 지식이 엄청나게 부족하다.
   - 그래서 Ruby를 사용하기에 많은 어려움을 겪고 있다.
   - 이런 사용성 측면은 정말 Ruby가 극복해야할 큰 문제로 생각된다.
   - 밑의 Ruby와 관련된 명령을 처리하기 위해서는 Redmine 설치할 때의 조건을 다시 한 번 확인을 하기 바란다.



3. 다운로드

   - 나중의 업데이트를 고려하면 Git을 이용해서 clone을 받아서 설치하는 것이 편리하다.
   - Git이 아직 설치되어 있지 않으면 이번 기회에 설치를 하는 것을 추천한다. (http://whatwant.tistory.com/289)

$ sudo su -
$ cd /srv/install/redmine
$ cd ./plugins
$ git clone http://github.com/akiko-pusu/redmine_banner.git

   - 필자의 경우 Redmine을 설치할 때 Ruby를 설치하면서 [ sudo su - ] 계정으로 설치를 하였었다.



4. 설치

   - 필요한 gem 들을 설치하기 위해 필요한 과정이 있다.

$ sudo su -
$ cd /srv/install/redmine
$ rake redmine:plugins:migrate RAILS_ENV=production
$ chown -R www-data:www-data ./redmine_banner
$ service apache2 restart

   - 설치를 하고 내용을 확인하면 아래와 같다.

Environment:
  Redmine version                        2.3.0.stable
  Ruby version                             1.9.3 (i686-linux)
  Rails version                             3.2.13
  Environment                              production
  Database adapter                       PostgreSQL
Redmine plugins:
  redmine_banner                        0.0.8
  redmine_ckeditor                       0.4.0

   - 예전에 설치한 CKEditor plugin도 같이 보인다.



5. 사용

   - 관리자 계정으로 관리 메뉴를 살펴보면 새로운 항목이 추가된 것을 확인할 수 있다.


   - [ 배너 광고 ]라는 메뉴가 바로 그것이다 !!!



   - 정말 꼭 필요하고 원하는 기능만 simple하고 예쁘게 잘 넣어놓았다.
   - 이렇게 훌륭한 기능을 제공하면서 왜 버전을 "0.0.8"이라고 했는지 의문이 들 정도다.


   - 머리말, 꼬리말 아니면 둘 모두 선택해서 출력할 수 있다. 눈에 확 들어온다.

   - Redmine 전체 프로젝트 대상으로 공지할 수도 있지만,
   - 위 스크린샷에서 보는 것 처럼, 개별 프로젝트에서도 모듈로 선택해서 활용할 수 있다.


   - 프로젝트에서 사용하는 배너 광고의 인터페이스를 보면 앞에서 봤던 것과 조금 다른 것을 알 수 있을 것이다.
   - 표시 위치를 고를 수 있다는 점이 가장 큰 차이다.
   - 초기화면에서만 보여 줄수도 있고 새로운 일감에서만 보여줄 수도 있고...



6. 주의사항 및 팁

   - 크롬(Chrome)에서는 별 문제가 없는데, IE에서는 출력 위치가 틀어질 수도 있다.
   - IE8에서 테스트 할 때, 전체 배너와 프로젝트 배너를 동시에 설정하면 출력 위치가 틀어졌다.
   - 하나만 사용할 경우에는 별 이상이 없었다.

   - 전체 배너 설정에서 타이머 사용이 안된다.
   - 필자가 제대로 하지 못해서일 수도 있는데, 여하튼 사용이 안되었다.

   - CKEditor로 편집된 내용도 별 이상없이 잘 출력이 된다.
   - 당연히 위키로 편집된 내용도 잘 출력이 된다.


모두 즐거운 Redmine 생활 하시길~

반응형

예전에 한 번 작성을 했었던 Plugin 인데,
최근에 이슈가 잠시 있어서 관련 작업을 했던 김에 포스팅 자체도 좀 업데이트 아니 재작성을 해보았다.

update #1 : 2013.04.14 (Sun)



Redmine이 자랑하는 것 중 하나가 바로 Wiki 지원이다.

높은 곳에 계시는 분들은 별로 신경을 쓰지 않는 부분이기에 지금까지 알아서 하는 부분으로 취급되었었지만,
최근에는 관리의 범주로 인식이 되어 중요한 개발 환경의 한 요소로 인정받는 것이 "커뮤니티" 기능이다.

애자일이 대두된 이후 개발자의 목소리가 더더욱 커지면서 "커뮤니티" 기능이 더더욱 필요하게 되었고
이러한 커뮤니티 기능을 언급하게 되면 가장 자주 나오는 아이템이 바로 "Wiki(위키)"이다.

마침 Redmine이 갖고 있는 대표 기능 중 하나가 바로 "Wiki"이고,
프로젝트 관리 도구로 Redmine을 선택하는 이유 중 하나가 바로 위키 기능인 것이다.


그런데, 문제는 Wiki에 익숙한 개발자가 생각보다 많지 않다는 점이다.
정말 의외인데 개발자들이 원한다고 해서 위키를 제공을 해주면 정작 위키를 사용하기 어렵다는 투정을 듣게 된다.

또 하나의 문제는 위키 문법이 사투리와 같이 좀 다른 유형들이 있다는 점이다.
기존에 다른 유형의 위키를 썼던 분들이 Redmine에서 제공하는 위키에 적응을 못하기도 하는 것이다.

마지막으로 하나 더 있는 문제점은 Redmine 위키가 갖고 있는 문제로써
Redmine 위키 문법이 생각보다 막강하지는 않다는 점이다.
즉, 기능적 제약이 좀 많은 편이다. 아쉬운 부분이다.



이런 문제를 해결하는 방법 중에 가장 편하면서도 간단한 것이 바로 Plugin을 이용하는 것이고,
그 중 가장 유명한 것이 바로 CKEditor 이다.

Redmine Plugin으로 만들어진 것이 CKEditor Plugin이 아니다.
올해로 10주년을 맞이한 유명한 Web Text Editor가 바로 CKEditor 이다.

   - http://ckeditor.com/


너무 서론이 길었다.

바로 설치해보자.

□ Name    : Redmine CKEditor
□ URL      : http://www.redmine.org/plugins/ckeditor



1. 테스트 환경

   - 현재 가장 최신 버전으로 테스트 했으며, 직접 Source code를 내려 받아서 설치했다.
   - 여기 블로그의 포스팅을 참고하면 된다.

Environment:
  Redmine version                        2.3.0.stable
  Ruby version                             1.9.3 (i686-linux)
  Rails version                             3.2.13
  Environment                              production
  Database adapter                       PostgreSQL



2. 경로 & 권한

   - 이 부분에 대해서 필자가 완벽히 이해를 하고 마스터를 한 것이 아니라서 모든 경우에 대해서 설명은 못하겠다.
   - 우선 필자가 구축한 Redmine은 WAS로 Apache2를 선택했고, Passenger 모듈을 활용했다.
   - 경로는 필자의 습관상 [ /srv/install/redmine/ ] 밑에 설치를 했다.
   - 마지막으로, 당연히 www-data 계정에게 필요한 소유권을 부여했다.
   - 보안상의 이슈는 논외로 하자.

   - 사실 필자는 조금 무식해서 Ruby에 대한 지식이 엄청나게 부족하다.
   - 그래서 Ruby를 사용하기에 많은 어려움을 겪고 있다.
   - 이런 사용성 측면은 정말 Ruby가 극복해야할 큰 문제로 생각된다.
   - 밑의 Ruby와 관련된 명령을 처리하기 위해서는 Redmine 설치할 때의 조건을 다시 한 번 확인을 하기 바란다.



3. 다운로드

   - 나중의 업데이트를 고려하면 Git을 이용해서 clone을 받아서 설치하는 것이 편리하다.
   - Git이 아직 설치되어 있지 않으면 이번 기회에 설치를 하는 것을 추천한다. (http://whatwant.tistory.com/289)

$ sudo su -
$ cd /srv/install/redmine
$ cd ./plugins
$ git clone http://github.com/a-ono/redmine_ckeditor.git

   - 필자의 경우 Redmine을 설치할 때 Ruby를 설치하면서 [ sudo su - ] 계정으로 설치를 하였었다.



4. 설치

   - 필요한 gem 들을 설치하기 위해 필요한 과정이 있다.

$ sudo su -
$ cd /srv/install/redmine
$ bundle install --without development test
$ chown -R www-data:www-data ./redmine_ckeditor
$ service apache2 restart

   - 설치를 하고 내용을 확인하면 아래와 같다.

Environment:
  Redmine version                        2.3.0.stable
  Ruby version                             1.9.3 (i686-linux)
  Rails version                             3.2.13
  Environment                              production
  Database adapter                       PostgreSQL
Redmine plugins:
  redmine_ckeditor                       0.4.0

   - 얼마전까지만 해도 CKEditor Plugin과 Redmine 2.3.0 버전에 충돌(?)이 조금 있었다.
   - 사용 중에 CKEditor가 사라지는 현상이 있었는데 CKEditor Plugin 0.4.0 버전부터는 해결이 되었다.


5. 사용

   - CKEditor를 사용하기 위해서는 [ 관리 ] 메뉴에서 [ 설정 ] 부분에 있는 [ 본문 형식 ]을 변경해야 한다.


   - 기존의 위키 방식을 [ textile ] 이라고 하고 우리가 지금 사용하고자 하는 것은 [ CKEditor ]이다.


   - 이렇게 설정을 하면, Redmine에서 위키가 사용되는 모든 곳에 CKEditor가 보이게 된다.


   - 무료로 제공되는 Editor이지만 상당히 쓸만하다.




6. 주의사항

   - 특정 프로젝트 단위로 적용을 결정할 수 없다.
   - 전체 일괄 CKEditor를 쓸건지 Textile, 즉 위키를 사용할 것인지 결정을 해야 한다.

   - 위키를 사용하던 중에 CKEditor를 적용하게 되면 기존에 입력한 것은 전부 새로 편집을 해야 한다.
   - CKEditor는 위키를 편하게 사용하도록 도와주는 것이 아니다.
   - HTML 적용을 도와주는 에디터이다. 위키와는 완전히 별도이다.
   - 기존 작성 내용을 분실하지는 않지만, 새로 편집을 해야한다는 것은 주의하기 바란다.


모두 즐거운 Redmine 생활 하시길~
반응형

+ Recent posts