require 'sequel' require 'fileutils' class RepoQuestDBConnector def initialize(db_file = 'repoquest.db') db_path = File.join(Dir.pwd, db_file) # Check if SQLite file exists, if not, create it FileUtils.touch(db_path) unless File.exist?(db_path) @db = Sequel.connect("sqlite://#{db_path}") rescue Sequel::Error => e puts "Database connection failed: #{e.message}" exit 1 end def run_migrations(migration_path = 'lib/database/migrations/') Sequel.extension :migration Sequel::Migrator.run(@db, migration_path) rescue Sequel::Error => e puts "Migration failed: #{e.message}" end end