capistrano-scm-bamboo 1.0.4 → 1.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/README.md CHANGED
@@ -1,52 +1,31 @@
1
- # capistrano-scm-jenkins
1
+ # capistrano-scm-bamboo
2
2
 
3
- With this plugin, you can use jenkins build artifact as a repository, and
4
- deploy your build artifact with capistrano.
3
+ With this plugin, you can use Atlassian Bamboo build artifacts as a repository,
4
+ and deploy your build with Capistrano.
5
5
 
6
6
  ## INSTALL
7
7
 
8
- gem install capistrano-scm-jenkins
8
+ gem install capistrano-scm-bamboo
9
9
 
10
10
  ## USAGE
11
11
 
12
- a sample config/deploy.rb
13
-
14
- require 'capistrano-scm-jenkins'
15
-
16
- set :application, "example"
17
- set :repository, "http://jenkins.example.com/job/example/"
18
-
19
- set :scm, :jenkins
20
-
21
- # uncomment following line if you want deploy unstable version
22
- # set :jenkins_use_unstable, true
23
-
24
- # jenkins username and password
25
- # set :scm_username, ENV['JENKINS_USERNAME']
26
- # set :scm_password, ENV['JENKINS_PASSWORD']
27
- # or use the netrc support for curl
28
- # set :jenkins_use_netrc, true
29
- #
30
- # if you use netrc, add the following line in your $HOME/.netrc
31
- # machine jenkins.example.com login USERNAME password secret
32
-
33
-
34
- set :user, 'lidaobing'
35
- set :use_sudo, false
36
- set :deploy_to, "/home/#{user}/apps/#{application}"
37
-
38
- role :web, "test.example.com" # Your HTTP server, Apache/etc
39
- role :app, "test.example.com" # This may be the same as your `Web` server
40
- role :db, "test.example.com", :primary => true # This is where Rails migrations will run
41
-
42
- for more information about capistrano, check https://github.com/capistrano/capistrano
43
-
44
- ### maven module
45
-
46
- for the maven module, you should include the module name in your repository url. for example:
47
-
48
- set :repository, "http://jenkins.example.com/job/example/com.example.helloworld$helloworld/"
49
-
12
+ Sample extract from config/deploy.rb
13
+
14
+ require 'capistrano-scm-bamboo'
15
+
16
+ set :application, "example"
17
+
18
+ set :scm, bamboo
19
+ set :repository, "http://bamboo.local/rest/api/latest"
20
+
21
+ set :scm_username, ENV['CAP_BUILD_USER'] || "build"
22
+ set :scm_passphrase, ENV['CAP_BUILD_PASS'] || Proc.new { Capistrano::CLI.password_prompt("Please enter the Bamboo password for '#{scm_username}': ") }
23
+
24
+ # If calling Cap from within Bamboo, these can be passed via -s options on the Cap call itself to override
25
+ set :plan_key, "PROJECT-PLAN"
26
+ set :build_number, "latest"
27
+ set :artifact, "artifact"
28
+
50
29
  ## LICENSE
51
30
 
52
31
  Permission is hereby granted, free of charge, to any person obtaining
@@ -1,7 +1,7 @@
1
1
  module Capistrano
2
2
  module Scm
3
3
  module Bamboo
4
- VERSION = "1.0.4"
4
+ VERSION = "1.1.0"
5
5
  end
6
6
  end
7
7
  end
@@ -42,113 +42,6 @@ module Capistrano
42
42
  logger.info 'bamboo does not support diff'
43
43
  'true'
44
44
  end
45
-
46
- private
47
-
48
- # def authentication
49
- # if variable(:jenkins_use_netrc)
50
- # "--netrc"
51
- # elsif variable(:scm_username) and variable(:scm_password)
52
- # "--user '#{variable(:scm_username)}:#{variable(:scm_password)}'"
53
- # else
54
- # ""
55
- # end
56
- # end
57
-
58
- # def use_unstable?
59
- # !!variable(:jenkins_use_unstable)
60
- # end
61
-
62
- # def log_build_message(from, to=nil, message=nil)
63
- # message = rss_all if message.nil?
64
- # doc = REXML::Document.new(message).root
65
- # logger.info ''
66
- # logger.info "BUILD LOG"
67
- # logger.info '========='
68
- # REXML::XPath.each(doc,"./entry") do |entry|
69
- # title = REXML::XPath.first(entry, "./title").text
70
- # time = REXML::XPath.first(entry, "./updated").text
71
- # build_number = get_build_number_from_rss_all_title(title).to_i
72
- # if build_number > from.to_i and (to.nil? or build_number <= to.to_i)
73
- # logger.info "#{time}\t#{title}"
74
- # end
75
- # end
76
- # end
77
-
78
- # def log_scm_message(from, to=nil, message=nil)
79
- # message = rss_changelog if message.nil?
80
- # doc = REXML::Document.new(message).root
81
- # logger.info "SCM LOG"
82
- # logger.info '======='
83
- # REXML::XPath.each(doc,"./entry") do |entry|
84
- # title = REXML::XPath.first(entry, "./title").text
85
- # time = REXML::XPath.first(entry, "./updated").text
86
- # content = REXML::XPath.first(entry, "./content").text
87
- # build_number = get_build_number_from_rss_changelog_title(title).to_i
88
- # if build_number > from.to_i and (to.nil? or build_number <= to.to_i)
89
- # logger.info "#{time}\t#{title}"
90
- # logger.info "#{content}"
91
- # end
92
- # end
93
- # end
94
-
95
- # def last_deploy_build(message = nil, opts={})
96
- # message = rss_all if message.nil?
97
- # use_unstable = opts[:use_unstable]
98
- # use_unstable = use_unstable? if use_unstable.nil?
99
- # doc = REXML::Document.new(message).root
100
- # valid_end_strings = ['(back to normal)', '(stable)']
101
- # if use_unstable
102
- # valid_end_strings << '(unstable)'
103
- # end
104
- # REXML::XPath.each(doc,"./entry/title") do |title|
105
- # title = title.text
106
- # for x in valid_end_strings
107
- # return get_build_number_from_rss_all_title(title) if title.end_with? x
108
- # end
109
- # end
110
- # raise 'can not find a build suitable for deploy'
111
- # end
112
-
113
- # def auth_opts
114
- # if jenkins_username and jenkins_password
115
- # {:http_basic_authentication => [jenkins_username, jenkins_password]}
116
- # else
117
- # {}
118
- # end
119
- # end
120
-
121
- # def artifact_zip_url(revision)
122
- # "#{repository}/#{revision}/artifact/*zip*/archive.zip"
123
- # end
124
-
125
- # def jenkins_username
126
- # @jenkins_username ||= begin
127
- # if variable(:jenkins_use_netrc)
128
- # rc = Net::Netrc.locate(jenkins_hostname)
129
- # raise ".netrc missing or no entry found" if rc.nil?
130
- # rc.login
131
- # elsif variable(:scm_username)
132
- # variable(:scm_username)
133
- # else
134
- # nil
135
- # end
136
- # end
137
- # end
138
-
139
- # def jenkins_password
140
- # @jenkins_password ||= begin
141
- # if variable(:jenkins_use_netrc)
142
- # rc = Net::Netrc.locate(jenkins_hostname)
143
- # raise ".netrc missing or no entry found" if rc.nil?
144
- # rc.password
145
- # elsif variable(:scm_password)
146
- # variable(:scm_password)
147
- # else
148
- # nil
149
- # end
150
- # end
151
- # end
152
45
  end
153
46
  end
154
47
  end
@@ -6,27 +6,5 @@ module Capistrano::Deploy::SCM
6
6
  before :each do
7
7
  @bamboo = Bamboo.new
8
8
  end
9
-
10
- context "last_deploy_build" do
11
- it "should support back to normal" do
12
- msg = %Q{<?xml version="1.0" encoding="UTF-8"?>
13
- <feed xmlns="http://www.w3.org/2005/Atom"><title>estore-nginx all builds</title><link type="text/html" href="http://ci.eb.in.sdo.com/view/eStore/job/estore-nginx/" rel="alternate"/><updated>2011-11-24T07:11:06Z</updated><author><name>Jenkins Server</name></author><id>urn:uuid:903deee0-7bfa-11db-9fe1-0800200c9a66</id><entry><title>estore-nginx #2 (back to normal)</title><link type="text/html" href="http://ci.eb.in.sdo.com/view/eStore/job/estore-nginx/2/" rel="alternate"/><id>tag:hudson.dev.java.net,2011:estore-nginx:2011-11-24_15-11-06</id><published>2011-11-24T07:11:06Z</published><updated>2011-11-24T07:11:06Z</updated></entry><entry><title>estore-nginx #1 (broken for a long time)</title><link type="text/html" href="http://ci.eb.in.sdo.com/view/eStore/job/estore-nginx/1/" rel="alternate"/><id>tag:hudson.dev.java.net,2011:estore-nginx:2011-11-24_15-09-18</id><published>2011-11-24T07:09:18Z</published><updated>2011-11-24T07:09:18Z</updated></entry></feed>}
14
- @jenkins.send(:last_deploy_build, msg).should == '2'
15
- end
16
-
17
- it "should support stable" do
18
- msg = %Q{<?xml version="1.0" encoding="UTF-8"?>
19
- <feed xmlns="http://www.w3.org/2005/Atom"><title>cerl all builds</title><link type="text/html" href="http://ci.eb.in.sdo.com/view/eStore/job/cerl/" rel="alternate"/><updated>2011-11-17T05:17:58Z</updated><author><name>Jenkins Server</name></author><id>urn:uuid:903deee0-7bfa-11db-9fe1-0800200c9a66</id><entry><title>cerl #98 (stable)</title><link type="text/html" href="http://ci.eb.in.sdo.com/view/eStore/job/cerl/98/" rel="alternate"/><id>tag:hudson.dev.java.net,2011:cerl:2011-11-17_13-17-58</id><published>2011-11-17T05:17:58Z</published><updated>2011-11-17T05:17:58Z</updated></entry><entry><title>cerl #97 (stable)</title><link type="text/html" href="http://ci.eb.in.sdo.com/view/eStore/job/cerl/97/" rel="alternate"/><id>tag:hudson.dev.java.net,2011:cerl:2011-11-12_18-27-58</id><published>2011-11-12T10:27:58Z</published><updated>2011-11-12T10:27:58Z</updated></entry></feed>}
20
- @jenkins.send(:last_deploy_build, msg).should == '98'
21
- end
22
-
23
- it "should honor unstable" do
24
- msg = %Q{<?xml version="1.0" encoding="UTF-8"?>
25
- <feed xmlns="http://www.w3.org/2005/Atom"><title>IndexCoordinator all builds</title><link type="text/html" href="http://ci.eb.in.sdo.com/job/IndexCoordinator/" rel="alternate"/><updated>2011-11-24T09:22:32Z</updated><author><name>Jenkins Server</name></author><id>urn:uuid:903deee0-7bfa-11db-9fe1-0800200c9a66</id><entry><title>IndexCoordinator #1450 (unstable)</title><link type="text/html" href="http://ci.eb.in.sdo.com/job/IndexCoordinator/1450/" rel="alternate"/><id>tag:hudson.dev.java.net,2011:IndexCoordinator:2011-11-22_19-44-23</id><published>2011-11-22T11:44:23Z</published><updated>2011-11-22T11:44:23Z</updated></entry><entry><title>IndexCoordinator #1449 (back to normal)</title><link type="text/html" href="http://ci.eb.in.sdo.com/job/IndexCoordinator/1449/" rel="alternate"/><id>tag:hudson.dev.java.net,2011:IndexCoordinator:2011-11-22_19-23-22</id><published>2011-11-22T11:23:22Z</published><updated>2011-11-22T11:23:22Z</updated></entry><entry><title>IndexCoordinator #1448 (broken since this build)</title><link type="text/html" href="http://ci.eb.in.sdo.com/job/IndexCoordinator/1448/" rel="alternate"/><id>tag:hudson.dev.java.net,2011:IndexCoordinator:2011-11-22_19-10-50</id><published>2011-11-22T11:10:50Z</published><updated>2011-11-22T11:10:50Z</updated></entry></feed>
26
- }
27
- @jenkins.send(:last_deploy_build, msg).should == '1449'
28
- @jenkins.send(:last_deploy_build, msg, :use_unstable => true).should == '1450'
29
- end
30
- end
31
9
  end
32
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano-scm-bamboo
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-04-11 00:00:00.000000000 Z
12
+ date: 2012-04-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: capistrano
16
- requirement: &70173533254680 !ruby/object:Gem::Requirement
16
+ requirement: &70260535479740 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70173533254680
24
+ version_requirements: *70260535479740
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: json
27
- requirement: &70173533254120 !ruby/object:Gem::Requirement
27
+ requirement: &70260535479220 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70173533254120
35
+ version_requirements: *70260535479220
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: typhoeus
38
- requirement: &70173533253620 !ruby/object:Gem::Requirement
38
+ requirement: &70260535495000 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :runtime
45
45
  prerelease: false
46
- version_requirements: *70173533253620
46
+ version_requirements: *70260535495000
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &70173533179100 !ruby/object:Gem::Requirement
49
+ requirement: &70260535494340 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70173533179100
57
+ version_requirements: *70260535494340
58
58
  description: ! "\nWith this plugin, you can use Bamboo build artifacts as a repository,
59
59
  and\ndeploy your build artifact with Capistrano.\n "
60
60
  email:
@@ -67,7 +67,6 @@ files:
67
67
  - .rspec
68
68
  - Gemfile
69
69
  - Gemfile.lock
70
- - NEWS.md
71
70
  - README.md
72
71
  - Rakefile
73
72
  - capistrano-scm-bamboo.gemspec
data/NEWS.md DELETED
@@ -1,13 +0,0 @@
1
- ## 0.0.3 (2011-12-13)
2
-
3
- * support netrc
4
-
5
- ## 0.0.2 (2011-11-26)
6
-
7
- * honor :scm_username and :scm_password
8
- * fix syntax bug under ruby 1.9
9
-
10
-
11
- ## 0.0.1 (2011-11-25)
12
-
13
- * initial version.