auto_tagger 0.0.9 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/.gitignore ADDED
@@ -0,0 +1,6 @@
1
+ pkg/*
2
+ rdoc/*
3
+ *.gem
4
+ .DS_Store
5
+ test_files/*
6
+ .idea/*
data/CHANGELOG ADDED
@@ -0,0 +1,30 @@
1
+ 2009-10-15
2
+
3
+ - You can now define your stages as strings or symbols and auto-tagger will not fail (thanks to Chad Wooley for the bug report)
4
+ - When deploying from a branch auto_tagger uses real_revision, not the previous tag, to create the new tag (Brian Takita)
5
+
6
+ 2009-04-30
7
+
8
+ - Fixed bug whereby auto-tagger would use the wrong tag because it found tags that had similar names to what it uses.
9
+
10
+ 2009-04-20
11
+
12
+ - `release_tagger:create_tag` creates a production tag if you don't set any stages
13
+
14
+ 2009-04-05
15
+
16
+ - Added basic support for cap-ext-multistage
17
+ - Changed "stages" variable to "autotagger_stages" so as not to conflict with the multistage "stages" variable in capistrano
18
+ - Changed the :current_stage variable in the capistrano tasks to just :stage
19
+
20
+ 2009-03-31
21
+
22
+ - Capistrano bases new tags off of old tags from the previous environment when tagging if there is a tag from the previous environment
23
+ - Added the following cap tasks:
24
+ - print_latest_tags
25
+ - read_tag_from_shared
26
+ - write_tag_to_shared
27
+
28
+ 2009-03-29
29
+
30
+ - Capistrano tasks :set_branch no longer sets the branch to nil. If the CapistranoHelper returns nil, it leaves the branch alone.
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.0
@@ -0,0 +1,80 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{auto_tagger}
8
+ s.version = "0.1.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Jeff Dean", "Brian Takita"]
12
+ s.date = %q{2009-10-15}
13
+ s.default_executable = %q{autotag}
14
+ s.email = %q{jeff@zilkey.com}
15
+ s.executables = ["autotag"]
16
+ s.extra_rdoc_files = [
17
+ "README.md"
18
+ ]
19
+ s.files = [
20
+ ".gitignore",
21
+ "CHANGELOG",
22
+ "MIT-LICENSE",
23
+ "README.md",
24
+ "VERSION",
25
+ "auto_tagger.gemspec",
26
+ "bin/autotag",
27
+ "features/autotag.feature",
28
+ "features/deployment.feature",
29
+ "features/step_definitions/autotag_steps.rb",
30
+ "features/step_definitions/deployment_steps.rb",
31
+ "features/support/env.rb",
32
+ "features/support/step_helpers.rb",
33
+ "features/templates/cap_ext_deploy.erb",
34
+ "features/templates/deploy.erb",
35
+ "features/templates/stage.erb",
36
+ "geminstaller.yml",
37
+ "lib/auto_tagger.rb",
38
+ "lib/auto_tagger/auto_tagger.rb",
39
+ "lib/auto_tagger/capistrano_helper.rb",
40
+ "lib/auto_tagger/commander.rb",
41
+ "lib/auto_tagger/repository.rb",
42
+ "lib/auto_tagger/stage_manager.rb",
43
+ "lib/auto_tagger/tag.rb",
44
+ "recipes/release_tagger.rb",
45
+ "spec/auto_tagger/auto_tagger_spec.rb",
46
+ "spec/auto_tagger/capistrano_helper_spec.rb",
47
+ "spec/auto_tagger/commander_spec.rb",
48
+ "spec/auto_tagger/repository_spec.rb",
49
+ "spec/auto_tagger/stage_manager_spec.rb",
50
+ "spec/auto_tagger/tag_spec.rb",
51
+ "spec/spec_helper.rb"
52
+ ]
53
+ s.homepage = %q{http://github.com/zilkey/auto_tagger}
54
+ s.rdoc_options = ["--charset=UTF-8"]
55
+ s.require_paths = ["lib", "recipes"]
56
+ s.rubygems_version = %q{1.3.5}
57
+ s.summary = %q{Helps you automatically create tags for each stage in a multi-stage deploment and deploy from the latest tag from the previous environment}
58
+ s.test_files = [
59
+ "spec/auto_tagger/auto_tagger_spec.rb",
60
+ "spec/auto_tagger/capistrano_helper_spec.rb",
61
+ "spec/auto_tagger/commander_spec.rb",
62
+ "spec/auto_tagger/repository_spec.rb",
63
+ "spec/auto_tagger/stage_manager_spec.rb",
64
+ "spec/auto_tagger/tag_spec.rb",
65
+ "spec/spec_helper.rb"
66
+ ]
67
+
68
+ if s.respond_to? :specification_version then
69
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
70
+ s.specification_version = 3
71
+
72
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
73
+ s.add_runtime_dependency(%q<capistrano>, [">= 2.5.3"])
74
+ else
75
+ s.add_dependency(%q<capistrano>, [">= 2.5.3"])
76
+ end
77
+ else
78
+ s.add_dependency(%q<capistrano>, [">= 2.5.3"])
79
+ end
80
+ end
@@ -0,0 +1,39 @@
1
+ Feature: Deployment
2
+ In order to get auto-tagging goodness on ci boxes
3
+ As a ruby and git ninja
4
+ I want to be able to easily create a tag from the command line with the same name format as the one created by the cap tasks
5
+
6
+ Scenario: user runs autotag with no args
7
+ Given a repo
8
+ When I run autotag with no arguments
9
+ Then I should see "USAGE:"
10
+ And no tags should be created
11
+
12
+ Scenario: user runs autotag with "--help"
13
+ Given a repo
14
+ When I run autotag with "--help"
15
+ Then I should see "USAGE:"
16
+ And no tags should be created
17
+
18
+ Scenario: user runs autotag with "-h"
19
+ Given a repo
20
+ When I run autotag with "-h"
21
+ Then I should see "USAGE:"
22
+ And no tags should be created
23
+
24
+ Scenario: user runs autotag with "-?"
25
+ Given a repo
26
+ When I run autotag with "-?"
27
+ Then I should see "USAGE:"
28
+ And no tags should be created
29
+
30
+ Scenario: user runs autotag with "demo"
31
+ Given a repo
32
+ When I run autotag with "demo"
33
+ # can't check output here for some reason
34
+ Then a "demo" tag should be created
35
+
36
+ Scenario: user runs autotag with "demo ."
37
+ Given a repo
38
+ When I run autotag with "demo"
39
+ Then a "demo" tag should be created
@@ -0,0 +1,29 @@
1
+ Feature: Deployment
2
+ In order to get auto-tagging goodness
3
+ As a ruby and git ninja
4
+ I want cap to do all the work for me
5
+
6
+ Scenario: user deploys with single file deploy.rb with 3 stages
7
+ Given a three-stage app using single deploy file
8
+ And a ci tag
9
+ When I deploy to staging
10
+ Then a tag should be added to git
11
+
12
+ Scenario: user deploys with single file deploy.rb with no stages
13
+ Given a one-stage app using single deploy file with the following environments:
14
+ |production |
15
+ When I deploy
16
+ Then a "production" tag should be added to git
17
+
18
+ Scenario: user deploys with single file deploy.rb stages with dashes in the name
19
+ Given a one-stage app using single deploy file with the following environments:
20
+ |staging |
21
+ |secret-production |
22
+ When I deploy to secret-production
23
+ Then a "secret-production" tag should be added to git
24
+
25
+ Scenario: user deploys with cap-ext multistage
26
+ Given a three-stage app using cap-multistage
27
+ And a ci tag
28
+ When I deploy to staging
29
+ Then a tag should be added to git
@@ -0,0 +1,41 @@
1
+ Given /^a repo$/ do
2
+ puts
3
+ helpers = StepHelpers.new
4
+ helpers.create_git_repo
5
+ helpers.create_app
6
+ @tags = helpers.tags
7
+ puts
8
+ end
9
+
10
+ When /^I run autotag with no arguments$/ do
11
+ puts
12
+ helpers = StepHelpers.new
13
+ @output = helpers.run_autotag
14
+ @tags = helpers.tags
15
+ puts
16
+ end
17
+
18
+ When /^I run autotag with "([^\"]*)"$/ do |args|
19
+ puts
20
+ helpers = StepHelpers.new
21
+ @output = helpers.run_autotag(args)
22
+ @tags = helpers.tags
23
+ puts
24
+ end
25
+
26
+ Then /^I should see "([^\"]*)"$/ do |text|
27
+ @output.should =~ /#{Regexp.escape(text)}/
28
+ end
29
+
30
+ Then /^no tags should be created$/ do
31
+ @tags.strip.should == ""
32
+ end
33
+
34
+ Then /^a "([^\"]*)" tag should be added to git$/ do |stage|
35
+ helpers = StepHelpers.new
36
+ helpers.tags.starts_with?(stage).should be_true
37
+ end
38
+
39
+ Then /^a "([^\"]*)" tag should be created$/ do |prefix|
40
+ @tags.strip.split("\n").any?{|tag| tag.starts_with?("demo")}.should be_true
41
+ end
@@ -0,0 +1,53 @@
1
+ Given /^a three-stage app using single deploy file$/ do
2
+ puts
3
+ helpers = StepHelpers.new
4
+ helpers.create_app_with_single_deploy_file([:ci, :staging, :production])
5
+ puts
6
+ @tags = helpers.tags
7
+ end
8
+
9
+ Given /^a one\-stage app using single deploy file with the following environments:$/ do |table|
10
+ puts
11
+ helpers = StepHelpers.new
12
+ helpers.create_app_with_single_deploy_file table.raw.map(&:first)
13
+ puts
14
+ @tags = helpers.tags
15
+ end
16
+
17
+ Given /^a three-stage app using cap-multistage$/ do
18
+ puts
19
+ helpers = StepHelpers.new
20
+ helpers.create_app_with_cap_ext_multistage
21
+ puts
22
+ @tags = helpers.tags
23
+ end
24
+
25
+ Given /^a ci tag$/ do
26
+ puts
27
+ helpers = StepHelpers.new
28
+ helpers.autotag("ci")
29
+ @tags = helpers.tags
30
+ puts
31
+ end
32
+
33
+ When /^I deploy to (.*)$/ do |environment|
34
+ puts
35
+ helpers = StepHelpers.new
36
+ helpers.deploy(environment)
37
+ puts
38
+ end
39
+
40
+ When /^I deploy$/ do
41
+ puts
42
+ helpers = StepHelpers.new
43
+ helpers.deploy
44
+ puts
45
+ end
46
+
47
+ Then /^a tag should be added to git$/ do
48
+ puts
49
+ helpers = StepHelpers.new
50
+ new_tags = helpers.tags
51
+ @tags.length.should < new_tags.length
52
+ puts
53
+ end
@@ -0,0 +1,8 @@
1
+ require 'spec'
2
+ require 'erb'
3
+ require 'etc'
4
+ require 'activesupport'
5
+
6
+ Before do
7
+ StepHelpers.new.reset
8
+ end
@@ -0,0 +1,136 @@
1
+ class StepHelpers
2
+
3
+ attr_reader :test_files_dir, :app_dir, :repo_dir
4
+
5
+ def initialize
6
+ @test_files_dir = File.join(Dir.pwd, "test_files")
7
+ @app_dir = File.join(test_files_dir, "app")
8
+ @repo_dir = File.join(test_files_dir, "repo")
9
+ end
10
+
11
+ def reset
12
+ FileUtils.rm_r(test_files_dir) if File.exists?(test_files_dir)
13
+ FileUtils.mkdir_p(test_files_dir)
14
+ end
15
+
16
+ def create_git_repo
17
+ FileUtils.mkdir_p repo_dir
18
+ `cd #{repo_dir} && git --bare init`
19
+ end
20
+
21
+ def create_app_with_single_deploy_file(environments)
22
+ create_git_repo
23
+ create_app
24
+ capify_app
25
+ create_single_deploy_file(environments)
26
+ end
27
+
28
+ def run_autotag(args = nil)
29
+ cmd = "cd #{app_dir} && ../../bin/autotag"
30
+ cmd += " #{args}" if args
31
+ `#{cmd}`
32
+ end
33
+
34
+ def create_app_with_cap_ext_multistage
35
+ create_git_repo
36
+ create_app
37
+ capify_app
38
+ create_cap_ext_multistage_deploy_files
39
+ end
40
+
41
+ def deploy(stage = nil)
42
+ deploy_command = "cap "
43
+ deploy_command += "#{stage} " if stage
44
+ deploy_command += "deploy"
45
+
46
+ run_commands [
47
+ "cd #{app_dir}",
48
+ "cap deploy:setup",
49
+ deploy_command
50
+ ]
51
+ end
52
+
53
+ def autotag(stage)
54
+ system "cd #{app_dir} && git tag #{stage}/#{Time.now.utc.strftime('%Y%m%d%H%M%S')} && git push origin --tags"
55
+ end
56
+
57
+ def tags
58
+ system "cd #{app_dir} && git fetch origin --tags"
59
+ tags = `cd #{app_dir} && git tag`
60
+ puts tags
61
+ tags
62
+ end
63
+
64
+ def create_app
65
+ FileUtils.mkdir_p app_dir
66
+ run_commands [
67
+ "cd #{app_dir}",
68
+ "touch README",
69
+ "git init",
70
+ "git add .",
71
+ %Q{git commit -m "first commit"},
72
+ "git remote add origin file://#{repo_dir}",
73
+ "git push origin master"
74
+ ]
75
+ end
76
+
77
+ private
78
+
79
+ def capify_app
80
+ run_commands [
81
+ "cd #{app_dir}",
82
+ "mkdir config",
83
+ "capify ."
84
+ ]
85
+ end
86
+
87
+ def create_single_deploy_file(environments)
88
+ repository = repo_dir
89
+ deploy_to = File.join(test_files_dir, "deployed")
90
+ git_location = `which git`.strip
91
+ user = Etc.getlogin
92
+
93
+ path = File.expand_path(File.join(__FILE__, "..", "..", "templates", "deploy.erb"))
94
+ #puts "TRACE %s:%s" % [__FILE__, __LINE__]
95
+ #puts path
96
+ #puts File.exists?(path)
97
+
98
+ template = ERB.new File.read(path)
99
+ output = template.result(binding)
100
+ File.open(File.join(app_dir, "config", "deploy.rb"), 'w') {|f| f.write(output) }
101
+ end
102
+
103
+ def create_cap_ext_multistage_deploy_files
104
+ repository = repo_dir
105
+ deploy_to = File.join(test_files_dir, "deployed")
106
+ git_location = `which git`.strip
107
+ user = Etc.getlogin
108
+ environments = [:ci, :staging, :production]
109
+
110
+ path = File.expand_path(File.join(__FILE__, "..", "..", "templates", "cap_ext_deploy.erb"))
111
+
112
+ template = ERB.new File.read(path)
113
+ output = template.result(binding)
114
+ File.open(File.join(app_dir, "config", "deploy.rb"), 'w') {|f| f.write(output) }
115
+
116
+ %w(staging production).each do |stage|
117
+ create_cap_ext_multistage_deploy_stage_file(stage)
118
+ end
119
+ end
120
+
121
+ def create_cap_ext_multistage_deploy_stage_file(stage)
122
+ deploy_subdir = File.join(app_dir, "config", "deploy")
123
+ FileUtils.mkdir_p deploy_subdir
124
+
125
+ template_path = File.expand_path(File.join(__FILE__, "..", "..", "templates", "stage.erb"))
126
+ template = ERB.new File.read(template_path)
127
+ output = template.result(binding)
128
+
129
+ File.open(File.join(deploy_subdir, "#{stage}.rb"), 'w') {|f| f.write(output) }
130
+ end
131
+
132
+ def run_commands(commands)
133
+ puts `#{commands.join(" && ")}`
134
+ end
135
+
136
+ end
@@ -0,0 +1,32 @@
1
+ require File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "recipes", "release_tagger"))
2
+
3
+ set :autotagger_stages, [:ci, :staging, :production]
4
+ set :stages, [:staging, :production]
5
+ set :default_stage, :staging
6
+
7
+ require 'capistrano/ext/multistage'
8
+
9
+ set :application, "deployed"
10
+ set :user, "<%= user %>"
11
+ set :repository, "file://<%= repository %>"
12
+ set :scm, :git
13
+ set :scm_command, "<%= git_location %>"
14
+
15
+ set :deploy_to, "<%= deploy_to %>"
16
+
17
+ set :run_method, :run
18
+ set :ssh_options, { :forward_agent => true }
19
+ default_run_options[:pty] = true
20
+
21
+ role :app, "localhost" # => this must be mapped
22
+
23
+ namespace :deploy do
24
+ task :restart do
25
+ puts "restarting..."
26
+ end
27
+ end
28
+
29
+ before "deploy:update_code", "release_tagger:set_branch"
30
+ after "deploy", "release_tagger:create_tag"
31
+ after "deploy", "release_tagger:write_tag_to_shared"
32
+ after "deploy", "release_tagger:print_latest_tags"
@@ -0,0 +1,34 @@
1
+ require File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "..", "recipes", "release_tagger"))
2
+
3
+ set :autotagger_stages, ["<%= environments.join('", "') %>"]
4
+
5
+ set :application, "deployed"
6
+ set :user, "<%= user %>"
7
+ set :repository, "file://<%= repository %>"
8
+ set :deploy_to, "<%= deploy_to %>"
9
+ set :scm, :git
10
+ set :scm_command, "<%= git_location %>"
11
+
12
+ set :run_method, :run
13
+ set :ssh_options, { :forward_agent => true }
14
+ default_run_options[:pty] = true
15
+
16
+ role :app, "localhost" # => this must be mapped
17
+
18
+
19
+ namespace :deploy do
20
+ task :restart do
21
+ puts "restarting..."
22
+ end
23
+ end
24
+
25
+ <% environments.each do |environment| %>
26
+ task "<%= environment %>" do
27
+ set :stage, "<%= environment %>"
28
+ end
29
+ <% end %>
30
+
31
+ before "deploy:update_code", "release_tagger:set_branch"
32
+ after "deploy", "release_tagger:create_tag"
33
+ after "deploy", "release_tagger:write_tag_to_shared"
34
+ after "deploy", "release_tagger:print_latest_tags"
@@ -0,0 +1 @@
1
+ # nothing to see here...
data/geminstaller.yml ADDED
@@ -0,0 +1,7 @@
1
+ gems:
2
+ - name: capistrano
3
+ version: '>= 2.5.3'
4
+ - name: capistrano-ext
5
+ version: '>= 1.2.1'
6
+ - name: activesupport
7
+ version: '>= 2.3.2'
@@ -10,12 +10,12 @@ class StageManager
10
10
 
11
11
  def initialize(stages)
12
12
  raise NoStagesSpecifiedError unless stages && stages.is_a?(Array)
13
- @stages = stages
13
+ @stages = stages.map{|stage| stage.to_s }
14
14
  end
15
15
 
16
16
  def previous_stage(stage)
17
17
  if stage
18
- index = stages.index(stage) - 1
18
+ index = stages.index(stage.to_s) - 1
19
19
  stages[index] if index > -1
20
20
  end
21
21
  end
@@ -43,9 +43,8 @@ Capistrano::Configuration.instance(:must_exist).load do
43
43
  desc %Q{Creates a tag using the stage variable}
44
44
  task :create_tag, :roles => :app do
45
45
  if variables[:stage]
46
- previous_tag = AutoTagger.new(StageManager.new(autotagger_stages).previous_stage(stage), Dir.pwd).latest_tag
47
- tag_name = AutoTagger.new(variables[:stage], variables[:working_directory]).create_tag(previous_tag)
48
- logger.info "AUTO TAGGER created tag #{tag_name} from #{previous_tag.inspect}"
46
+ tag_name = AutoTagger.new(variables[:stage], variables[:working_directory]).create_tag(real_revision)
47
+ logger.info "AUTO TAGGER created tag #{tag_name} from #{real_revision}"
49
48
  else
50
49
  tag_name = AutoTagger.new(:production, variables[:working_directory]).create_tag
51
50
  logger.info "AUTO TAGGER created tag #{tag_name}"
@@ -112,7 +112,7 @@ describe CapistranoHelper do
112
112
  }
113
113
  tagger = Object.new
114
114
  mock(tagger).latest_tag { "foo_01" }
115
- mock(AutoTagger).new(:foo, "/foo") { tagger }
115
+ mock(AutoTagger).new("foo", "/foo") { tagger }
116
116
  CapistranoHelper.new(variables).branch.should == "foo_01"
117
117
  end
118
118
  end
@@ -126,7 +126,7 @@ describe CapistranoHelper do
126
126
  }
127
127
  tagger = Object.new
128
128
  mock(tagger).latest_tag { nil }
129
- mock(AutoTagger).new(:foo, "/foo") { tagger }
129
+ mock(AutoTagger).new("foo", "/foo") { tagger }
130
130
  CapistranoHelper.new(variables).branch.should == nil
131
131
  end
132
132
  end
@@ -13,14 +13,18 @@ describe StageManager do
13
13
  end
14
14
 
15
15
  describe "#previous_stage" do
16
- it "returns the previous stage if there is more than one stage, and there is a current stage" do
17
- StageManager.new([:foo, :bar]).previous_stage(:bar).should == :foo
16
+ it "returns the previous stage as a string if there is more than one stage, and there is a current stage" do
17
+ StageManager.new([:foo, :bar]).previous_stage(:bar).should == "foo"
18
18
  end
19
19
 
20
20
  it "returns nil if there is no previous stage" do
21
21
  StageManager.new([:bar]).previous_stage(:bar).should be_nil
22
22
  end
23
23
 
24
+ it "deals with mixed strings and symbols" do
25
+ StageManager.new([:"foo-bar", "baz"]).previous_stage(:baz).should == "foo-bar"
26
+ end
27
+
24
28
  it "returns nil if there is no current stage" do
25
29
  StageManager.new([:bar]).previous_stage(nil).should be_nil
26
30
  end
metadata CHANGED
@@ -1,15 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auto_tagger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Dean
8
+ - Brian Takita
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
12
 
12
- date: 2009-03-28 00:00:00 -04:00
13
+ date: 2009-10-15 00:00:00 -04:00
13
14
  default_executable: autotag
14
15
  dependencies:
15
16
  - !ruby/object:Gem::Dependency
@@ -23,23 +24,39 @@ dependencies:
23
24
  version: 2.5.3
24
25
  version:
25
26
  description:
26
- email:
27
+ email: jeff@zilkey.com
27
28
  executables:
28
29
  - autotag
29
30
  extensions: []
30
31
 
31
- extra_rdoc_files: []
32
-
32
+ extra_rdoc_files:
33
+ - README.md
33
34
  files:
35
+ - .gitignore
36
+ - CHANGELOG
37
+ - MIT-LICENSE
38
+ - README.md
39
+ - VERSION
40
+ - auto_tagger.gemspec
41
+ - bin/autotag
42
+ - features/autotag.feature
43
+ - features/deployment.feature
44
+ - features/step_definitions/autotag_steps.rb
45
+ - features/step_definitions/deployment_steps.rb
46
+ - features/support/env.rb
47
+ - features/support/step_helpers.rb
48
+ - features/templates/cap_ext_deploy.erb
49
+ - features/templates/deploy.erb
50
+ - features/templates/stage.erb
51
+ - geminstaller.yml
52
+ - lib/auto_tagger.rb
34
53
  - lib/auto_tagger/auto_tagger.rb
35
54
  - lib/auto_tagger/capistrano_helper.rb
36
55
  - lib/auto_tagger/commander.rb
37
56
  - lib/auto_tagger/repository.rb
38
57
  - lib/auto_tagger/stage_manager.rb
39
58
  - lib/auto_tagger/tag.rb
40
- - lib/auto_tagger.rb
41
59
  - recipes/release_tagger.rb
42
- - bin/autotag
43
60
  - spec/auto_tagger/auto_tagger_spec.rb
44
61
  - spec/auto_tagger/capistrano_helper_spec.rb
45
62
  - spec/auto_tagger/commander_spec.rb
@@ -47,15 +64,13 @@ files:
47
64
  - spec/auto_tagger/stage_manager_spec.rb
48
65
  - spec/auto_tagger/tag_spec.rb
49
66
  - spec/spec_helper.rb
50
- - MIT-LICENSE
51
- - README.md
52
67
  has_rdoc: true
53
- homepage: http://github.com/zilkey/git_tagger/tree/master
68
+ homepage: http://github.com/zilkey/auto_tagger
54
69
  licenses: []
55
70
 
56
71
  post_install_message:
57
- rdoc_options: []
58
-
72
+ rdoc_options:
73
+ - --charset=UTF-8
59
74
  require_paths:
60
75
  - lib
61
76
  - recipes
@@ -76,7 +91,13 @@ requirements: []
76
91
  rubyforge_project:
77
92
  rubygems_version: 1.3.3
78
93
  signing_key:
79
- specification_version: 2
94
+ specification_version: 3
80
95
  summary: Helps you automatically create tags for each stage in a multi-stage deploment and deploy from the latest tag from the previous environment
81
- test_files: []
82
-
96
+ test_files:
97
+ - spec/auto_tagger/auto_tagger_spec.rb
98
+ - spec/auto_tagger/capistrano_helper_spec.rb
99
+ - spec/auto_tagger/commander_spec.rb
100
+ - spec/auto_tagger/repository_spec.rb
101
+ - spec/auto_tagger/stage_manager_spec.rb
102
+ - spec/auto_tagger/tag_spec.rb
103
+ - spec/spec_helper.rb