require 'bundler' Bundler.setup require 'rake' require 'rspec/core/rake_task' $LOAD_PATH.unshift File.expand_path('../lib', __FILE__) require 'openstudio/analysis/version' task gem: :build desc 'build gem locally' task :build do system 'gem build openstudio-analysis.gemspec' end desc 'build and install gem locally' task install: :build do system "gem install openstudio-analysis-#{OpenStudio::Analysis::VERSION}.gem --no-ri --no-rdoc" end desc 'release gem (this builds, pushes to rubygems, and tags in github' task release: :build do # add catch if there are local changes not committed to crash system "git tag -a v#{OpenStudio::Analysis::VERSION} -m 'Tagging #{OpenStudio::Analysis::VERSION}'" system 'git push --tags' system "gem push openstudio-analysis-#{OpenStudio::Analysis::VERSION}.gem" system "rm openstudio-analysis-#{OpenStudio::Analysis::VERSION}.gem" end RSpec::Core::RakeTask.new('spec:unit') do |spec| spec.rspec_opts = %w(--format progress --format CI::Reporter::RSpec) spec.pattern = FileList['spec/openstudio/**/*_spec.rb'] end RSpec::Core::RakeTask.new('spec:integration') do |spec| spec.rspec_opts = %w(--format progress --format CI::Reporter::RSpec) spec.pattern = FileList['spec/integration/**/*_spec.rb'] end task default: 'spec:unit' desc 'import files from other repos' task :import_files do # tbd end desc 'uninstall all openstudio-analysis gems' task :uninstall do system 'gem uninstall openstudio-analysis -a' end desc 'reinstall the gem (uninstall, build, and reinstall' task reinstall: [:uninstall, :install]