如何在生产服务器上运行 Yard 服务器?也许使用一些任务?从 capistrano 加载,使用乘客和 nginx,Jenkins(Hudson)。
问问题
1491 次
3 回答
2
我发现最简单的选项就是在我的 rails 应用程序中从 /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
这将在 /docs/index.html 为您的文档提供服务
基于 javascript 的类/方法/文件搜索仍然有效,因为它是基于 javascript 的。但是,出现在顶部的搜索不会出现在此方法中。但是我发现基于 javascript 的搜索就足够了。
于 2014-03-26T19:45:46.773 回答
1
我正在使用这个 shell 脚本:
#!/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
在哈德逊:yard doc && ./yard.sh restart
。
于 2011-12-24T21:21:31.703 回答
1
我使用 nginx 和乘客,为这个小型 Web 应用程序提供服务:
# ~/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;
}
这篇文章中的更多内容:http: //makarius.me/offline-rails-ruby-jquery-and-gems-docs-with
于 2011-12-29T11:22:21.923 回答