Я пытаюсь добавить некоторые базовые задачи rake в гем orientdb, которые позволят мне создать базу данных, создать миграции базы данных и перенести базу данных - подобно миграции rails.
Когда у меня были грабли локально, я получил db: settings, db: create и db: create_migration, но после того, как я поместил их в гем, я не могу понять, как получить к ним доступ из Синатры. приложение при использовании «граблей».
У меня такое ощущение, что я либо: а) неправильно организовываю файлы в геме и / или б) неправильно вызываю вещи из приложения Sinatra.
Текущее состояние моего разветвленного хранилища: https://github.com/ricaurte/orientdb-jruby
Я помещаю файл для задач в lib / orientdb / tasks / database.rake => https://github.com/ricaurte/orientdb-jruby/blob/master/lib/orientdb/tasks/database.rake
Sinatra App Rakefile
APPLICATION_ROOT = File.expand_path('..', __FILE__)
require 'rake'
require 'orientdb'
#import "orientdb/tasks/database.rake"
task :environment do
require File.expand_path(File.join(*%w[ config environment ]), File.dirname(__FILE__))
end
конфиг / окружающая среда
require "rubygems"
require "bundler"
Bundler.setup
require 'sinatra'
require "orientdb"
ruby: jruby 1.6.0 (уровень исправления ruby 1.9.2 136) (2011-03-24 5f5278c) (64-битный сервер OpenJDK VM 1.6.0_20) [linux-amd64-java]