2011-12-14 4 views
3

프로덕션 서버에서 Yard 서버를 어떻게 실행할 수 있습니까? 일부 작업을 사용할 수 있습니까? 승객과 nginx를 사용하는 capistrano에서로드, Jenkins (Hudson).프로덕션 서버에서 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

이 쉘 스크립트를 사용 yard doc && ./yard.sh restart.

1

나는의 nginx와 승객,이 작은 웹 응용 프로그램을 제공을 사용

# ~/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에 가상 호스트 : 나는에 간단한 방법을 발견 http://makarius.me/offline-rails-ruby-jquery-and-gems-docs-with

2

:

# /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; 
} 

이 게시물에서 더 많은

내 레일 앱에서/public에서 생성 된 docs 폴더를 symlink로 연결해야합니다. js/css 리소스가 동일한 경로를 통해 액세스 할 수 있는지 확인하면됩니다.

예를 들어

:이 /docs/index.html에서 수업/방법/파일에 대한

자바 스크립트 기반 검색을 사용하여 문서에 봉사 할 것입니다

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

은 자바 스크립트 기반으로 여전히 작동합니다. 그러나 상단에 나타나는 검색은이 방법에 표시되지 않습니다. 그러나 나는 자바 스크립트를 기반으로 충분한 검색을 발견.