capflow 0.7.0 → 0.8.2

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -1,12 +1,13 @@
1
1
  source "http://rubygems.org"
2
-
2
+ # Add dependencies required to use your gem here.
3
+ # Example:
4
+ # gem "activesupport", ">= 2.3.5"
3
5
  gem 'capistrano'
4
6
  gem 'stringex'
5
- gem 'hashie'
6
7
  gem 'versionomy'
7
8
  gem 'rainbow'
8
- gem "ablerc", "~> 0.1.0"
9
-
9
+ # Add dependencies to develop your gem here.
10
+ # Include everything needed to run rake, tests, features, etc.
10
11
  group :development do
11
12
  gem "shoulda", "~> 3.0.0.beta2"
12
13
  gem 'active_support'
@@ -17,5 +18,3 @@ group :development do
17
18
  gem "jeweler", "~> 1.6.4"
18
19
  gem "rcov", ">= 0"
19
20
  end
20
-
21
- gemspec
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.0.0
1
+ 0.8.3
data/capflow.gemspec CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "capflow"
8
- s.version = "0.7.0"
8
+ s.version = "0.8.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Spencer Markowski"]
@@ -29,6 +29,7 @@ Gem::Specification.new do |s|
29
29
  "features/support/env.rb",
30
30
  "lib/capflow.rb",
31
31
  "lib/capistrano/capflow.rb",
32
+ "lib/capistrano/helpers/capflow_helper.rb",
32
33
  "lib/railtie.rb",
33
34
  "lib/tasks/capflow.rake",
34
35
  "recipes/capflow_recipes.rb",
data/lib/capflow.rb CHANGED
@@ -1,22 +1,5 @@
1
1
  require 'capflow/configuration'
2
2
  require 'capflow/version'
3
-
4
- if defined?(Bundler)
5
- #Bundler.setup
6
- #Bundler.require(:default)
7
- end
8
-
9
3
  module Capflow
10
-
11
- if defined?(Rails)
12
- require 'railtie'
13
- Capflow::Version.base_dir = Rails.root
14
- end
15
-
16
- def self.root
17
- File.expand_path '../..', __FILE__
18
- end
19
-
20
- Configuration.load! Configuration::PROJECT_CONFIG_FILE if Capflow::Configuration.project_settings?
21
-
4
+ require 'railtie' if defined?(Rails)
22
5
  end
@@ -1,11 +1,11 @@
1
1
  require 'capistrano'
2
- require File.join(File.expand_path('../..', __FILE__), 'capflow')
2
+ require 'capistrano/helpers/capflow_helper'
3
3
  require 'versionomy'
4
4
  require 'stringex'
5
5
  require 'rainbow'
6
6
 
7
7
  module Capistrano
8
- class CapflowApplicator
8
+ class Capflow
9
9
  trap("SIGINT") { puts "Leaving Capflow!".color(:red); exit }
10
10
  # I gave up for now, since namespace can't call include
11
11
  # include Capistrano::Helpers::CapflowHelper
@@ -51,19 +51,24 @@ module Capistrano
51
51
  end
52
52
 
53
53
  def available_tags
54
- Capistrano::CLI.ui.say "Available Tags:".color :green
55
- Capistrano::CLI.ui.say "#{releases.sort.reverse.take(Capflow::Configuration.previous_releases.to_i).join("\n")}"
54
+ Capistrano::CLI.ui.say "Available Tags:"
55
+ Capistrano::CLI.ui.say "#{non_release_tags.join("\n")}"
56
56
  end
57
57
 
58
58
  def available_releases
59
59
  Capistrano::CLI.ui.say "\nAvailable Releases:".color :green
60
- Capistrano::CLI.ui.say "#{releases.reverse.take(Capflow::Configuration.previous_releases.to_i).join("\n")}"
60
+ Capistrano::CLI.ui.say "#{releases.sort.reverse.join("\n")}"
61
61
  end
62
62
 
63
63
  def banner
64
64
 
65
65
  <<-BANNER
66
66
  \nCapflow for Gitflow
67
+ ,-------------.
68
+ (o) _ __ _____ )--.
69
+ `-------------' )
70
+ ( /
71
+ `---'
67
72
  BANNER
68
73
  end
69
74
 
@@ -188,5 +193,5 @@ Please make sure you have pulled and pushed all code before deploying:
188
193
  end
189
194
 
190
195
  if Capistrano::Configuration.instance
191
- Capistrano::CapflowApplicator.load_into(Capistrano::Configuration.instance)
196
+ Capistrano::Capflow.load_into(Capistrano::Configuration.instance)
192
197
  end
@@ -0,0 +1,57 @@
1
+ module Capistrano
2
+ module Helpers
3
+ module CapflowHelper
4
+
5
+ def who
6
+ identity = (`git config user.name` || `whoami`)
7
+ identity.chomp.to_url
8
+ end
9
+
10
+ def tags
11
+ `git tag`.split("\n").compact
12
+ end
13
+
14
+ def non_release_tags
15
+ tags - releases
16
+ end
17
+
18
+ def current_branch
19
+ branches.select{|b| b =~ /^\*\s/}.first.gsub(/^\*\s/,"")
20
+ end
21
+
22
+ def branches
23
+ `git branch --no-color`.split("\n")
24
+ end
25
+
26
+ def version_tag_prefix
27
+ `git config gitflow.prefix.versiontag`.split("\n").first
28
+ end
29
+
30
+ def releases
31
+ tags.select{|t| t =~ /^#{version_tag_prefix}(\d+)/}
32
+ end
33
+
34
+ def latest_release
35
+ releases.sort{|x,y| x.split(version_tag_prefix).last <=> y.split(version_tag_prefix).last}.last
36
+ end
37
+
38
+ def available_tags
39
+ Capistrano::CLI.ui.say "Available Tags:"
40
+ Capistrano::CLI.ui.say "#{non_release_tags.join("\n")}"
41
+ end
42
+
43
+ def available_releases
44
+ Capistrano::CLI.ui.say "\nAvailable Releases:"
45
+ Capistrano::CLI.ui.say "#{releases.join("\n")}"
46
+ end
47
+
48
+ def banner
49
+
50
+ <<-BANNER
51
+ \nCapflow for Gitflow
52
+ BANNER
53
+ end
54
+
55
+ end
56
+ end
57
+ end
@@ -29,43 +29,7 @@ end
29
29
 
30
30
  namespace :capflow do
31
31
  desc "Show available releases"
32
- task :releases do
32
+ task :releases do
33
33
  puts `git tag`.split("\n").compact.collect{|version| Versionomy.parse(version)}.sort.reverse
34
- exit
35
- end
36
-
37
- task :configuration do
38
- puts "Gitflow"
39
- Capflow::Configuration.ablerc.stub.generate :local
40
- exit
41
- end
42
- end
43
-
44
- # from https://github.com/technicalpickles/jeweler/blob/master/lib/jeweler/tasks.rb
45
- namespace :version do
46
- desc "Writes out an explicit version. Respects the following environment variables, or defaults to 0: MAJOR, MINOR, PATCH. Also recognizes BUILD, which defaults to nil"
47
- task :write do
48
- version = Capflow::Version.write_version( :major => ENV['MAJOR'].to_i, :minor => ENV['MINOR'].to_i, :tiny => ENV['PATCH'].to_i, :build => (ENV['BUILD'] || nil ) )
49
- $stdout.puts "Updated version: #{version.to_s}"
50
- end
51
-
52
- namespace :bump do
53
- desc "Bump the major version by 1"
54
- task :major => [:version_required, :version] do
55
- #jeweler.bump_major_version
56
- $stdout.puts "Updated version: #{jeweler.version}"
57
- end
58
-
59
- desc "Bump the a minor version by 1"
60
- task :minor => [:version_required, :version] do
61
- #jeweler.bump_minor_version
62
- $stdout.puts "Updated version: #{jeweler.version}"
63
- end
64
-
65
- desc "Bump the patch version by 1"
66
- task :patch => [:version_required, :version] do
67
- #jeweler.bump_patch_version
68
- $stdout.puts "Updated version: #{jeweler.version}"
69
- end
70
34
  end
71
35
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capflow
3
3
  version: !ruby/object:Gem::Version
4
- hash: 3
4
+ hash: 59
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 7
9
- - 0
10
- version: 0.7.0
8
+ - 8
9
+ - 2
10
+ version: 0.8.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Spencer Markowski
@@ -18,6 +18,8 @@ cert_chain: []
18
18
  date: 2013-03-07 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
+ name: capistrano
22
+ prerelease: false
21
23
  requirement: &id001 !ruby/object:Gem::Requirement
22
24
  none: false
23
25
  requirements:
@@ -27,11 +29,11 @@ dependencies:
27
29
  segments:
28
30
  - 0
29
31
  version: "0"
30
- version_requirements: *id001
31
- name: capistrano
32
- prerelease: false
33
32
  type: :runtime
33
+ version_requirements: *id001
34
34
  - !ruby/object:Gem::Dependency
35
+ name: stringex
36
+ prerelease: false
35
37
  requirement: &id002 !ruby/object:Gem::Requirement
36
38
  none: false
37
39
  requirements:
@@ -41,11 +43,11 @@ dependencies:
41
43
  segments:
42
44
  - 0
43
45
  version: "0"
44
- version_requirements: *id002
45
- name: stringex
46
- prerelease: false
47
46
  type: :runtime
47
+ version_requirements: *id002
48
48
  - !ruby/object:Gem::Dependency
49
+ name: versionomy
50
+ prerelease: false
49
51
  requirement: &id003 !ruby/object:Gem::Requirement
50
52
  none: false
51
53
  requirements:
@@ -55,11 +57,11 @@ dependencies:
55
57
  segments:
56
58
  - 0
57
59
  version: "0"
58
- version_requirements: *id003
59
- name: versionomy
60
- prerelease: false
61
60
  type: :runtime
61
+ version_requirements: *id003
62
62
  - !ruby/object:Gem::Dependency
63
+ name: rainbow
64
+ prerelease: false
63
65
  requirement: &id004 !ruby/object:Gem::Requirement
64
66
  none: false
65
67
  requirements:
@@ -69,17 +71,17 @@ dependencies:
69
71
  segments:
70
72
  - 0
71
73
  version: "0"
72
- version_requirements: *id004
73
- name: rainbow
74
- prerelease: false
75
74
  type: :runtime
75
+ version_requirements: *id004
76
76
  - !ruby/object:Gem::Dependency
77
+ name: shoulda
78
+ prerelease: false
77
79
  requirement: &id005 !ruby/object:Gem::Requirement
78
80
  none: false
79
81
  requirements:
80
82
  - - ~>
81
83
  - !ruby/object:Gem::Version
82
- hash: -3339270128
84
+ hash: 206029515
83
85
  segments:
84
86
  - 3
85
87
  - 0
@@ -87,11 +89,11 @@ dependencies:
87
89
  - beta
88
90
  - 2
89
91
  version: 3.0.0.beta2
90
- version_requirements: *id005
91
- name: shoulda
92
- prerelease: false
93
92
  type: :development
93
+ version_requirements: *id005
94
94
  - !ruby/object:Gem::Dependency
95
+ name: active_support
96
+ prerelease: false
95
97
  requirement: &id006 !ruby/object:Gem::Requirement
96
98
  none: false
97
99
  requirements:
@@ -101,11 +103,11 @@ dependencies:
101
103
  segments:
102
104
  - 0
103
105
  version: "0"
104
- version_requirements: *id006
105
- name: active_support
106
- prerelease: false
107
106
  type: :development
107
+ version_requirements: *id006
108
108
  - !ruby/object:Gem::Dependency
109
+ name: i18n
110
+ prerelease: false
109
111
  requirement: &id007 !ruby/object:Gem::Requirement
110
112
  none: false
111
113
  requirements:
@@ -115,11 +117,11 @@ dependencies:
115
117
  segments:
116
118
  - 0
117
119
  version: "0"
118
- version_requirements: *id007
119
- name: i18n
120
- prerelease: false
121
120
  type: :development
121
+ version_requirements: *id007
122
122
  - !ruby/object:Gem::Dependency
123
+ name: minitest-rg
124
+ prerelease: false
123
125
  requirement: &id008 !ruby/object:Gem::Requirement
124
126
  none: false
125
127
  requirements:
@@ -129,11 +131,11 @@ dependencies:
129
131
  segments:
130
132
  - 0
131
133
  version: "0"
132
- version_requirements: *id008
133
- name: minitest-rg
134
- prerelease: false
135
134
  type: :development
135
+ version_requirements: *id008
136
136
  - !ruby/object:Gem::Dependency
137
+ name: cucumber
138
+ prerelease: false
137
139
  requirement: &id009 !ruby/object:Gem::Requirement
138
140
  none: false
139
141
  requirements:
@@ -143,11 +145,11 @@ dependencies:
143
145
  segments:
144
146
  - 0
145
147
  version: "0"
146
- version_requirements: *id009
147
- name: cucumber
148
- prerelease: false
149
148
  type: :development
149
+ version_requirements: *id009
150
150
  - !ruby/object:Gem::Dependency
151
+ name: bundler
152
+ prerelease: false
151
153
  requirement: &id010 !ruby/object:Gem::Requirement
152
154
  none: false
153
155
  requirements:
@@ -157,11 +159,11 @@ dependencies:
157
159
  segments:
158
160
  - 0
159
161
  version: "0"
160
- version_requirements: *id010
161
- name: bundler
162
- prerelease: false
163
162
  type: :development
163
+ version_requirements: *id010
164
164
  - !ruby/object:Gem::Dependency
165
+ name: jeweler
166
+ prerelease: false
165
167
  requirement: &id011 !ruby/object:Gem::Requirement
166
168
  none: false
167
169
  requirements:
@@ -173,11 +175,11 @@ dependencies:
173
175
  - 6
174
176
  - 4
175
177
  version: 1.6.4
176
- version_requirements: *id011
177
- name: jeweler
178
- prerelease: false
179
178
  type: :development
179
+ version_requirements: *id011
180
180
  - !ruby/object:Gem::Dependency
181
+ name: rcov
182
+ prerelease: false
181
183
  requirement: &id012 !ruby/object:Gem::Requirement
182
184
  none: false
183
185
  requirements:
@@ -187,10 +189,8 @@ dependencies:
187
189
  segments:
188
190
  - 0
189
191
  version: "0"
190
- version_requirements: *id012
191
- name: rcov
192
- prerelease: false
193
192
  type: :development
193
+ version_requirements: *id012
194
194
  description: An unrestictive way to deploy using gitflow and capistrano
195
195
  email: spencer@theablefew.com
196
196
  executables: []
@@ -213,6 +213,7 @@ files:
213
213
  - features/support/env.rb
214
214
  - lib/capflow.rb
215
215
  - lib/capistrano/capflow.rb
216
+ - lib/capistrano/helpers/capflow_helper.rb
216
217
  - lib/railtie.rb
217
218
  - lib/tasks/capflow.rake
218
219
  - recipes/capflow_recipes.rb