Я работаю над приложением rails, которое использует несколько сервисов Sinatra, каждый со своей базой данных.Мы находимся в процессе переноса наших сервисов и приложений на Glassfish.Мы можем объединить наше приложение Sinatra в пакет .war и развернуть его на удаленном сервисе Glassfish.Одна вещь, которую мы хотим сделать, - это иметь возможность запускать Tux в каждой из служб, чтобы мы могли напрямую взаимодействовать с объектами (для отладки).Я хотел бы использовать драгоценные камни, содержащиеся в каталоге gems / gems в каталоге glassfish / domains / domain1 / Applications / {app} /.Я попытался написать сценарий bash, основанный на этом: https://gist.github.com/1986553/8e2d9ba892229ab076ad81ee88472d951b94282e,, который в итоге выглядел следующим образом:
if [ $# -lt 1 ]
then
echo "Usage:"
exit
else
DIR="$( cd "$( dirname "$0" )" && pwd )"
echo $DIR
export GEM_HOME="${DIR}/gems/gems"
export GEM_PATH=$GEM_HOME
echo $GEM_PATH
app_runner="java -cp lib/jruby-core-1.6.4.jar:lib/jruby-stdlib-1.6.4.jar org.jruby.Main -r ../META-INF/init" # relative to app.war/WEB-INF/lib
bundle exec tux
fi
Похоже, он не принял изменение к GEM_PATH
.Я отложил этот подход в сторону, просто установил необходимые гемы в rvm gemset
и настроил свою среду на его использование.После этого я смог запустить bundle exec tux
, но не смог подключиться к базе данных, не скопировав все детали, которые я настроил на своем сервере Glassfish.Я надеялся, что смогу использовать jndi-коннектор, который я использую для подключения к своему серверу Glassfish.
Кто-нибудь еще делал эти вещи и / или имел указатели?Спасибо