Skip to content

Commit 8404b8f

Browse files
SPREE_VERSION removed, total cleanup of gemspecs and rakefiles, spree.yml generation removed
1 parent 8c6707c commit 8404b8f

19 files changed

+110
-210
lines changed

Rakefile

+50-62
Original file line numberDiff line numberDiff line change
@@ -5,100 +5,88 @@ begin
55
require 'spree/testing_support/common_rake'
66
rescue LoadError
77
raise "Could not find spree/testing_support/common_rake. You need to run this command using Bundler."
8-
exit
98
end
109

11-
spec = eval(File.read('spree.gemspec'))
12-
Gem::PackageTask.new(spec) do |pkg|
13-
pkg.gem_spec = spec
14-
end
10+
SPREE_GEMS = %w(core api cmd backend frontend sample).freeze
1511

1612
task default: :test
1713

1814
desc "Runs all tests in all Spree engines"
19-
task :test do
20-
Rake::Task['test_app'].invoke
21-
%w(api backend core frontend sample).each do |gem_name|
15+
task test: :test_app do
16+
SPREE_GEMS.each do |gem_name|
2217
Dir.chdir("#{File.dirname(__FILE__)}/#{gem_name}") do
23-
system("rspec") or exit!(1)
18+
sh 'rspec'
2419
end
2520
end
2621
end
2722

2823
desc "Generates a dummy app for testing for every Spree engine"
2924
task :test_app do
30-
require File.expand_path('../core/lib/generators/spree/install/install_generator', __FILE__)
31-
%w(api backend core frontend sample).each do |engine|
32-
ENV['LIB_NAME'] = File.join('spree', engine)
33-
ENV['DUMMY_PATH'] = File.expand_path("../#{engine}/spec/dummy", __FILE__)
34-
Rake::Task['common:test_app'].execute
25+
SPREE_GEMS.each do |gem_name|
26+
Dir.chdir("#{File.dirname(__FILE__)}/#{gem_name}") do
27+
sh 'rake test_app'
28+
end
3529
end
3630
end
3731

3832
desc "clean the whole repository by removing all the generated files"
3933
task :clean do
40-
puts "Deleting sandbox..."
41-
FileUtils.rm_rf("sandbox")
42-
puts "Deleting pkg directory.."
43-
FileUtils.rm_rf("pkg")
34+
rm_f "Gemfile.lock"
35+
rm_rf "sandbox"
36+
rm_rf "pkg"
4437

45-
%w(api backend cmd core frontend).each do |gem_name|
46-
puts "Cleaning #{gem_name}:"
47-
puts " Deleting #{gem_name}/Gemfile"
48-
FileUtils.rm_f("#{gem_name}/Gemfile")
49-
puts " Deleting #{gem_name}/pkg"
50-
FileUtils.rm_rf("#{gem_name}/pkg")
51-
puts " Deleting #{gem_name}'s dummy application"
52-
Dir.chdir("#{gem_name}/spec") do
53-
FileUtils.rm_rf("dummy")
54-
end
38+
SPREE_GEMS.each do |gem_name|
39+
rm_f "#{gem_name}/Gemfile.lock"
40+
rm_rf "#{gem_name}/pkg"
41+
rm_rf "#{gem_name}/spec/dummy"
5542
end
5643
end
5744

5845
namespace :gem do
59-
desc "run rake gem for all gems"
60-
task :build do
61-
%w(core api backend frontend sample cmd).each do |gem_name|
62-
puts "########################### #{gem_name} #########################"
63-
puts "Deleting #{gem_name}/pkg"
64-
FileUtils.rm_rf("#{gem_name}/pkg")
65-
cmd = "cd #{gem_name} && bundle exec rake gem"; puts cmd; system cmd
46+
def version
47+
require 'spree/core/version'
48+
Spree.version
49+
end
50+
51+
def for_each_gem
52+
SPREE_GEMS.each do |gem_name|
53+
yield "pkg/spree_#{gem_name}-#{version}.gem"
6654
end
67-
puts "Deleting pkg directory"
68-
FileUtils.rm_rf("pkg")
69-
cmd = "bundle exec rake gem"; puts cmd; system cmd
55+
yield "pkg/spree-#{version}.gem"
7056
end
71-
end
7257

73-
namespace :gem do
74-
desc "run gem install for all gems"
75-
task :install do
76-
version = File.read(File.expand_path("../SPREE_VERSION", __FILE__)).strip
58+
desc "Build all spree gems"
59+
task :build do
60+
pkgdir = File.expand_path("../pkg", __FILE__)
61+
FileUtils.mkdir_p pkgdir
7762

78-
%w(core api backend frontend sample cmd).each do |gem_name|
79-
puts "########################### #{gem_name} #########################"
80-
puts "Deleting #{gem_name}/pkg"
81-
FileUtils.rm_rf("#{gem_name}/pkg")
82-
cmd = "cd #{gem_name} && bundle exec rake gem"; puts cmd; system cmd
83-
cmd = "cd #{gem_name}/pkg && gem install spree_#{gem_name}-#{version}.gem"; puts cmd; system cmd
63+
SPREE_GEMS.each do |gem_name|
64+
Dir.chdir(gem_name) do
65+
sh "gem build spree_#{gem_name}.gemspec"
66+
mv "spree_#{gem_name}-#{version}.gem", pkgdir
67+
end
8468
end
85-
puts "Deleting pkg directory"
86-
FileUtils.rm_rf("pkg")
87-
cmd = "bundle exec rake gem"; puts cmd; system cmd
88-
cmd = "gem install pkg/spree-#{version}.gem"; puts cmd; system cmd
69+
70+
sh "gem build spree.gemspec"
71+
mv "spree-#{version}.gem", pkgdir
8972
end
90-
end
9173

92-
namespace :gem do
93-
desc "Release all gems to gemcutter. Package spree components, then push spree"
94-
task :release do
95-
version = File.read(File.expand_path("../SPREE_VERSION", __FILE__)).strip
74+
desc "Install all spree gems"
75+
task install: :build do
76+
for_each_gem do |gem_path|
77+
Bundler.with_clean_env do
78+
sh "gem install #{gem_path}"
79+
end
80+
end
81+
end
82+
83+
desc "Release all gems to rubygems"
84+
task release: :build do
85+
sh "git tag -a -m \"Version #{version}\" v#{version}"
9686

97-
%w(core api backend frontend sample cmd).each do |gem_name|
98-
puts "########################### #{gem_name} #########################"
99-
cmd = "cd #{gem_name}/pkg && gem push spree_#{gem_name}-#{version}.gem"; puts cmd; system cmd
87+
for_each_gem do |gem_path|
88+
sh "gem push '#{gem_path}'"
10089
end
101-
cmd = "gem push pkg/spree-#{version}.gem"; puts cmd; system cmd
10290
end
10391
end
10492

SPREE_VERSION

-1
This file was deleted.

api/Rakefile

+1-15
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,13 @@
11
require 'rubygems'
22
require 'rake'
33
require 'rake/testtask'
4-
require 'rake/packagetask'
5-
require 'rubygems/package_task'
64
require 'rspec/core/rake_task'
75
require 'spree/testing_support/common_rake'
86
require 'rails/all'
97

10-
Bundler::GemHelper.install_tasks
118
RSpec::Core::RakeTask.new
129

13-
spec = eval(File.read('spree_api.gemspec'))
14-
Gem::PackageTask.new(spec) do |p|
15-
p.gem_spec = spec
16-
end
17-
18-
desc "Release to gemcutter"
19-
task :release do
20-
version = File.read(File.expand_path("../../SPREE_VERSION", __FILE__)).strip
21-
cmd = "cd pkg && gem push spree_api-#{version}.gem"; puts cmd; system cmd
22-
end
23-
24-
task :default => :spec
10+
task default: :spec
2511

2612
desc "Generates a dummy app for testing"
2713
task :test_app do

api/spree_api.gemspec

+17-17
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,22 @@
11
# -*- encoding: utf-8 -*-
2-
version = File.read(File.expand_path("../../SPREE_VERSION", __FILE__)).strip
2+
require_relative '../core/lib/spree/core/version.rb'
33

4-
Gem::Specification.new do |gem|
5-
gem.authors = ["Ryan Bigg"]
6-
gem.email = ["[email protected]"]
7-
gem.description = %q{Spree's API}
8-
gem.summary = %q{Spree's API}
9-
gem.homepage = 'https://spreecommerce.com'
10-
gem.license = %q{BSD-3}
4+
Gem::Specification.new do |s|
5+
s.authors = ["Ryan Bigg"]
6+
s.email = ["[email protected]"]
7+
s.description = %q{Spree's API}
8+
s.summary = %q{Spree's API}
9+
s.homepage = 'https://spreecommerce.com'
10+
s.license = 'BSD-3'
1111

12-
gem.files = `git ls-files`.split($\)
13-
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
14-
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
15-
gem.name = "spree_api"
16-
gem.require_paths = ["lib"]
17-
gem.version = version
12+
s.files = `git ls-files`.split($\)
13+
s.executables = s.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
14+
s.test_files = s.files.grep(%r{^(test|spec|features)/})
15+
s.name = "spree_api"
16+
s.require_paths = ["lib"]
17+
s.version = Spree.version
1818

19-
gem.add_dependency 'spree_core', version
20-
gem.add_dependency 'rabl', '~> 0.11.6'
21-
gem.add_dependency 'versioncake', '~> 2.3.1'
19+
s.add_dependency 'spree_core', s.version
20+
s.add_dependency 'rabl', '~> 0.11.6'
21+
s.add_dependency 'versioncake', '~> 2.3.1'
2222
end

backend/Rakefile

+1-15
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,12 @@
11
require 'rubygems'
22
require 'rake'
33
require 'rake/testtask'
4-
require 'rake/packagetask'
5-
require 'rubygems/package_task'
64
require 'rspec/core/rake_task'
75
require 'spree/testing_support/common_rake'
86

9-
Bundler::GemHelper.install_tasks
107
RSpec::Core::RakeTask.new
118

12-
spec = eval(File.read('spree_backend.gemspec'))
13-
Gem::PackageTask.new(spec) do |p|
14-
p.gem_spec = spec
15-
end
16-
17-
desc "Release to gemcutter"
18-
task :release do
19-
version = File.read(File.expand_path("../../SPREE_VERSION", __FILE__)).strip
20-
cmd = "cd pkg && gem push spree_backend-#{version}.gem"; puts cmd; system cmd
21-
end
22-
23-
task :default => :spec
9+
task default: :spec
2410

2511
desc "Generates a dummy app for testing"
2612
task :test_app do

backend/spree_backend.gemspec

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
# encoding: UTF-8
2-
version = File.read(File.expand_path("../../SPREE_VERSION", __FILE__)).strip
2+
require_relative '../core/lib/spree/core/version.rb'
33

44
Gem::Specification.new do |s|
55
s.platform = Gem::Platform::RUBY
66
s.name = 'spree_backend'
7-
s.version = version
7+
s.version = Spree.version
88
s.summary = 'backend e-commerce functionality for the Spree project.'
99
s.description = 'Required dependency for Spree'
1010

1111
s.author = 'Sean Schofield'
1212
s.email = '[email protected]'
1313
s.homepage = 'https://spreecommerce.com'
14-
s.license = %q{BSD-3}
14+
s.license = 'BSD-3'
1515
s.rubyforge_project = 'spree_backend'
1616

1717
s.files = `git ls-files`.split("\n")
1818
s.require_path = 'lib'
1919
s.requirements << 'none'
2020

21-
s.add_dependency 'spree_api', version
22-
s.add_dependency 'spree_core', version
21+
s.add_dependency 'spree_api', s.version
22+
s.add_dependency 'spree_core', s.version
2323

2424
s.add_dependency 'bootstrap-sass', '~> 3.3'
2525
s.add_dependency 'jquery-rails', '~> 4.1'

cmd/lib/spree_cmd/extension.rb

+3-11
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
module SpreeCmd
2-
32
class Extension < Thor::Group
43
include Thor::Actions
54

65
desc "builds a spree extension"
7-
argument :file_name, :type => :string, :desc => 'rails app_path', :default => '.'
6+
argument :file_name, type: :string, desc: 'rails app_path', default: '.'
87

98
source_root File.expand_path('../templates/extension', __FILE__)
109

@@ -30,16 +29,14 @@ def generate
3029
end
3130

3231
def final_banner
33-
say %Q{
32+
say %{
3433
#{'*' * 80}
3534
36-
Your extension has been generated with a gemspec dependency on Spree #{spree_version}.
35+
Your extension has been generated with a gemspec dependency on Spree #{Spree.version}.
3736
3837
For more information on the versioning of Spree.
3938
See https://guides.spreecommerce.com/developer/extensions_tutorial.html#versioning-your-extension
4039
41-
Consider listing your extension in the official extension registry https://spreecommerce.com/extensions
42-
4340
#{'*' * 80}
4441
}
4542
end
@@ -49,16 +46,11 @@ def class_name
4946
Thor::Util.camel_case file_name
5047
end
5148

52-
def spree_version
53-
'3.1.0.beta'
54-
end
55-
5649
def use_prefix(prefix)
5750
unless file_name =~ /^#{prefix}/
5851
@file_name = prefix + Thor::Util.snake_case(file_name)
5952
end
6053
end
6154
end
62-
6355
end
6456
end

cmd/lib/spree_cmd/templates/extension/extension.gemspec

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Gem::Specification.new do |s|
33
s.platform = Gem::Platform::RUBY
44
s.name = '<%= file_name %>'
5-
s.version = '<%= spree_version %>'
5+
s.version = '<%= Spree.version %>'
66
s.summary = 'TODO: Add gem summary here'
77
s.description = 'TODO: Add (optional) gem description here'
88
s.required_ruby_version = '>= 2.0.0'
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
1616
s.require_path = 'lib'
1717
s.requirements << 'none'
1818

19-
s.add_dependency 'spree_core', '~> <%= spree_version %>'
19+
s.add_dependency 'spree_core', '~> <%= Spree.version %>'
2020

2121
s.add_development_dependency 'capybara', '~> 2.4'
2222
s.add_development_dependency 'coffee-rails'

cmd/spree_cmd.gemspec

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
# -*- encoding: utf-8 -*-
22
$:.push File.expand_path("../lib", __FILE__)
3-
version = File.read(File.expand_path("../../SPREE_VERSION", __FILE__)).strip
3+
require_relative '../core/lib/spree/core/version.rb'
44

55
Gem::Specification.new do |s|
66
s.name = "spree_cmd"
7-
s.version = version
7+
s.version = Spree.version
88
s.authors = ["Chris Mar"]
99
s.email = ["[email protected]"]
1010
s.homepage = "http://spreecommerce.com"
11-
s.license = %q{BSD-3}
11+
s.license = 'BSD-3'
1212
s.summary = %q{Spree Commerce command line utility}
1313
s.description = %q{tools to create new Spree stores and extensions}
1414

core/Rakefile

+1-16
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,12 @@
11
require 'rubygems'
22
require 'rake'
33
require 'rake/testtask'
4-
require 'rake/packagetask'
5-
require 'rubygems/package_task'
64
require 'rspec/core/rake_task'
75
require 'spree/testing_support/common_rake'
8-
load 'lib/tasks/exchanges.rake'
96

10-
Bundler::GemHelper.install_tasks
117
RSpec::Core::RakeTask.new
128

13-
spec = eval(File.read('spree_core.gemspec'))
14-
Gem::PackageTask.new(spec) do |p|
15-
p.gem_spec = spec
16-
end
17-
18-
desc "Release to gemcutter"
19-
task :release do
20-
version = File.read(File.expand_path("../../SPREE_VERSION", __FILE__)).strip
21-
cmd = "cd pkg && gem push spree_core-#{version}.gem"; puts cmd; system cmd
22-
end
23-
24-
task :default => :spec
9+
task default: :spec
2510

2611
desc "Generates a dummy app for testing"
2712
task :test_app do

0 commit comments

Comments
 (0)