0. 対象と概要
・LINUXのコマンドをある程度知っているLINUX初心者を想定して記述する。
・meleteは米国foothill大学を中心としたetudesプロジェクトにて開発が行われているが、http://etudes.org/release/melete/install-guide.htm の導入ガイドだけでは導入が難しい。
1. 前提
Sakai 2.5.0 source を導入し、MySQLを利用した構成で稼動確認をしていること。
2. 環境設定
rootで導入を行なう。。
root環境として/root がホームディレクトリ、/root/srcにダウンロードしたファイルが置かれている。
Sakai 2.5.0が展開されているディレクトリは /root/src/sakai-src-2.5.0/ とする。
2.1 JDK
・ JDK 1.5.0_15とする。 詳細な環境設定はこちら。
2.2 Tomcat
・ source環境で稼動したSakaiは検証用にとっておく。
# unlink tomcat
# mv apache-tomcat-5.5.25 apache-tomcat-5.5.25-source
・ すでに/root/srcにダウンロードされている apache-tomcat-5.5.25.tar.gz を/usr/local ディレクトリに展開する。
# cd /root/src
# tar xvfz apache-tomcat-5.5.25.tar.gz -C /usr/local
・ /usr/localディレクトリにて展開されたtomcat-5.5.25を /usr/local/tomcatディレクトリに見えるようにする。
# cd /usr/local
# ln -s apache-tomcat-5.5.25 tomcat
・ tomcat - MySQL コネクタおよびsakai.propertiesをコピーしておく。
# cp /usr/local/apache-tomcat-5.5.25-source/common/lib/mysql-connector-java-5.0.8-bin.jar /usr/local/tomcat/common/lib
# cd /usr/local/tomcat
# mkdir sakai
# cp /usr/local/apache-tomcat-5.5.25-source/sakai/sakai.properties /usr/local/tomcat/sakai/
3. Melete 2.5.0
3.1 ソースコードのダウンロード
・Sakai 2.5.0 のソースコードを展開したディレクトリにmeleteのソースコードをsubversionを使ってダウンロードする。
・meleteのソースコードが/root/src/sakai-src-2.5.0/meleteとして展開される。
3.2 ソースコードの修正
・ダウンロードしたままのソースではbuild中にエラーしてしまうので、次の2つのファイルの修正を行う。
pom.xml: line 188 <module>reset-pass</module> line189 </module> の間に <module>melete</module>を追加する。
melete/pom.xml: line 7 M2 を 2.5.0 に変更する。
・Sakai Menu におけるコンポーネント名がModuleになってしまうので、次の修正を行う。
melete/melete-app/src/webapp/tools/sakai.melete.xml: line 10 title="Modules" を title="Melete"に変更する。
3.3 package用ディレクトリの設定
http://etudesproject.org/release/melete/install-guide.htm を参照して環境設定を行う。
・meleteのソースに含まれているvar/melete以下を/varにコピーする。
# cp -r /root/src/sakai-src-2.5.0/melete/var/melete /var
4. Maven
・ source環境で稼動したMaven環境を使う。
5. Build環境設定
・ source環境で稼動した.bashrcを使う。
6. Build と Deploy
・ 上記の準備が完了したらソースコードのBuild と Deployを行う。
# cd /root/src/sakai-src-2.5.0
# mvn clean install sakai:deploy -Dmaven.tomcat.home=/usr/local/tomcat -Dsakai.version=2.5.0
・ DeployはIntel Xeon 3GHzのサーバで10分程度かかるので、1分程度で終了してしまった場合はエラーの可能性がある。
その場合、Deploy中に表示されるメッセージを確認する。
Buildがうまくいった場合は [INFO] BUILD SUCCESSFUL というメッセージが表示される。
7. 起動と確認
7.1 起動
・ binary環境で利用したシェルスクリプトstart-sakai.sh を /root/cmd にて実行する。
# cd /root/cmd
# ./start-sakai.sh
多くのメッセージが表示されるが、下記のメッセージが最後に表示されれば起動できている。
INFO: Server startup in 42520 ms (20yy-mm-dd hh:mm:ss,852 main_org.apache.catalina.startup.Catalina)
ctrl-C にてtail -f を停止する。
7.2 Sakaiへのアクセス
・ PCからブラウザにてSakaiにアクセスする。
http://"sakaiを導入したシステムのFQDN":8080/portal
・ユーザIDおよびパスワードをそれぞれadmin, admin にてログインする。
・meleteがSakaiに組み込まれたことを確認するには、例えば次のような方法がある。
左列にあるWorkstite Setupをクリックする。
リストされるワークサイトにてmercury siteを探し、左のチェックボックスをマウスでクリックしてチェックする。
タブの下に位置する"修正"をクリックする。
タブの下に位置する"ツールを編集"をクリックする。
リストされるツールのなかでMatricesの下にMeleteがあることを確認する。
8. melete環境設定
http://etudesproject.org/release/melete/install-guide.htm を参照して環境設定を行う。
8.1 データベース修正
・ここまでの作業においてはMySQLにmelete関連のテーブルが作成されている。
MySQLにおけるmelete関連テーブルは以下のように確認する。
# mysql -u root -p
Enter password:
mysql> use sakai
mysql> show tables like 'melete%' ;
+---------------------------+
| Tables_in_sakai (melete%) |
+---------------------------+
| melete_cc_license |
| melete_course_module |
| melete_license |
| melete_migrate_status |
| melete_module |
| melete_module_shdates |
| melete_resource |
| melete_section |
| melete_section_resource |
| melete_site_preference |
| melete_user_preference |
+---------------------------+
11 rows in set (0.01 sec)
mysql> quit ;
8.2 Site Archive修正
・MeleteをSakaiのSite Archiveのメンバに加える。
# cd /root/src/sakai-src-2.5.0/archive/archive-impl/pack/src/webapp/WEB-INF
# cp -p components.xml components.xml_ORG
components.xmlの31行目にある<value>WebService</value>の後に次の行を追加する。
<value>MeleteSecurityService</value>
8.3 Build と Deploy
・稼動しているSakaiを停止し、Build と Deployを行い、Sakaiを起動する。
# cd /root/cmd
# ./stop-sakai.sh
# cd /root/src/sakai-src-2.5.0
# mvn clean install sakai:deploy -Dmaven.tomcat.home=/usr/local/tomcat -Dsakai.version=2.5.0
# cd /root/cmd
# ./start-sakai.sh
8.4 Roleの追加
・ Melete のアクセス制御を設定するためブラウザでSakaiにアクセスする。
http://"sakaiを導入したシステムのFQDN":8080/portal
・ユーザIDおよびパスワードをそれぞれadmin, admin にてログインする。
・コース関連アクセス制御の設定
左列にあるRealms をクリックする。
リストされるレルムIDにて!site.template.couseを探しマウスでクリックする。
<Instructor>
「ロール」欄にリストされるInstructorをクリックする。
リストされる機能から melete.author を探し左のチェックボックスをマウスでクリックしてチェックする。
ページ最下部にある"完了"ボタンをクリックする。
<Teaching Assistant>
「ロール」欄にリストされるTeaching Assistant をクリックする。
リストされる機能から melete.author を探し左のチェックボックスをマウスでクリックしてチェックする。
ページ最下部にある"完了"ボタンをクリックする。
<Student>
「ロール」欄にリストされるStudent をクリックする。
リストされる機能から melete.student を探し左のチェックボックスをマウスでクリックしてチェックする。
【注意】 StudentはInstructorとTeaching Assistantと異なる機能を選択する。
ページ最下部にある"完了"ボタンをクリックする。
「ロールの編集を完了」欄にある"保存"をクリックする。
・プロジェクトサイトを設定し、そこでMeleteを利用する場合には上記の設定を*!site.template.project に対して行う。
(ここまでの手順ではレルムIDに *!site.template.project は表示されない。)
8.5 icon修正
・コースを選択した際に左列にリストされるMeleteにアイコンを加えるために次の設定を行う。
Buildおよびtomcatの再起動をしなくてもブラウザをreloadすることで設定を確認することができる。
portal.cssをvi等で編集する。
1008 - 1010行にある次のrosterの設定を探す。
.icon-sakai-site-roster {
background-image: url(../../image/silk/vcard.png);
}
1011行目にmelete iconを表示するために次の設定を加える。
.icon-sakai-melete {
background-image: url(icons/module-menu.png);
}
以上