2011-12-14 13 views
3

プロダクションサーバーでYardサーバーを実行するにはどうすればよいですか? 多分いくつかのタスクを使用しますか? 乗客とnginx、Jenkins(Hudson)を使用してcapistranoからロードします。生産サーバー上でYardサーバーを実行する方法は?

#!/bin/sh 
#or you process here 
PROCESS='ruby */yard server' 
PID=`pidof $PROCESS` 

start() { 
    yard server & 
} 

stop() { 
    if [ "$PID" ];then 
    kill -KILL $PID 
    echo 'yard is stopped' 
    fi 
} 

case "$1" in 
start) 
    start 
;; 
stop) 
    stop 
;; 
restart) 
    stop 
    start 
;; 
*) 
echo Usage: $0 [start|stop|restart] 
;; 
esac 

そしてハドソン::私は

答えて

1

私のレールアプリで/ publicから生成されたdocsフォルダをシンボリックリンクするだけです。あなたは、js/cssリソースが同じパスを介してアクセス可能であることを確認する必要があります。例えば

$ cd <railsapp> 
$ ls 
Gemfile 
app/ 
.. 
public/ 
doc/ <- Folder that contains the html files generated by yard 
$ cd public/ 
$ ln -s ../doc/ docs 

これは、それはjavascriptのベースであるとして、クラス/メソッド/ファイル用のJavaScriptベースの検索はまだ動作/docs/index.html

であなたのドキュメントを提供します。ただし、このメソッドでは上部に表示される検索は表示されません。しかし、私は十分なjavascriptベースの検索が見つかりました。

2

# ~/Documentation/config.ru 
require 'rubygems' 
require 'yard' 

libraries = {} 
gems = Gem.source_index.find_name('').each do |spec| 
    libraries[spec.name] ||= [] 
    libraries[spec.name] << YARD::Server::LibraryVersion.new(spec.name, spec.version.to_s, nil, :gem) 
end 

run YARD::Server::RackAdapter.new libraries 

nginxのバーチャルホスト:この記事では

# /opt/nginx/config/sites-enabled/gems.doc 
server { 
    listen 80; 
    server_name gems.doc; 
    root /Users/your-user/Documentation/yard/public; 
    rails_env development; 
    passenger_enabled on; 
} 

もっと私はこの小さなWebアプリケーションを提供し、nginxのと乗客を使用

関連する問題