go_api_client 0.0.8 → 0.3.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.
Files changed (78) hide show
  1. data/.gitignore +7 -39
  2. data/.rvmrc +1 -0
  3. data/Gemfile.lock +12 -2
  4. data/Rakefile +8 -9
  5. data/go_api_client.gemspec +5 -2
  6. data/lib/go_api_client/atom/author.rb +25 -1
  7. data/lib/go_api_client/atom/entry.rb +9 -3
  8. data/lib/go_api_client/atom/feed.rb +19 -14
  9. data/lib/go_api_client/atom/feed_page.rb +49 -0
  10. data/lib/go_api_client/atom.rb +1 -0
  11. data/lib/go_api_client/commit.rb +30 -0
  12. data/lib/go_api_client/helpers/simple_attribute_support.rb +11 -0
  13. data/lib/go_api_client/helpers.rb +1 -0
  14. data/lib/go_api_client/http_fetcher.rb +41 -0
  15. data/lib/go_api_client/job.rb +56 -10
  16. data/lib/go_api_client/pipeline.rb +36 -12
  17. data/lib/go_api_client/stage.rb +43 -14
  18. data/lib/go_api_client/user.rb +36 -0
  19. data/lib/go_api_client/version.rb +7 -1
  20. data/lib/go_api_client.rb +45 -12
  21. data/test/fixtures/building/job_1.xml +41 -0
  22. data/test/fixtures/building/job_2.xml +43 -0
  23. data/test/fixtures/building/job_3.xml +40 -0
  24. data/test/fixtures/building/job_4.xml +40 -0
  25. data/test/fixtures/building/pipeline_1.xml +45 -0
  26. data/test/fixtures/building/pipeline_2.xml +39 -0
  27. data/test/fixtures/building/pipeline_3.xml +71 -0
  28. data/test/fixtures/building/stages.xml +180 -0
  29. data/test/fixtures/building/stages_1.xml +16 -0
  30. data/test/fixtures/building/stages_2.xml +16 -0
  31. data/test/fixtures/building/stages_3.xml +16 -0
  32. data/test/fixtures/building/stages_4.xml +16 -0
  33. data/test/fixtures/jobs_1.xml +3 -3
  34. data/test/fixtures/jobs_with_no_properties.xml +42 -0
  35. data/test/fixtures/ordering/go/api/jobs/1.xml +29 -0
  36. data/test/fixtures/ordering/go/api/jobs/10.xml +31 -0
  37. data/test/fixtures/ordering/go/api/jobs/2.xml +29 -0
  38. data/test/fixtures/ordering/go/api/jobs/3.xml +29 -0
  39. data/test/fixtures/ordering/go/api/jobs/4.xml +29 -0
  40. data/test/fixtures/ordering/go/api/jobs/5.xml +29 -0
  41. data/test/fixtures/ordering/go/api/jobs/6.xml +29 -0
  42. data/test/fixtures/ordering/go/api/jobs/7.xml +31 -0
  43. data/test/fixtures/ordering/go/api/jobs/8.xml +31 -0
  44. data/test/fixtures/ordering/go/api/jobs/9.xml +31 -0
  45. data/test/fixtures/ordering/go/api/pipelines/defaultPipeline/1.xml +31 -0
  46. data/test/fixtures/ordering/go/api/pipelines/defaultPipeline/2.xml +26 -0
  47. data/test/fixtures/ordering/go/api/pipelines/defaultPipeline/3.xml +26 -0
  48. data/test/fixtures/ordering/go/api/pipelines/defaultPipeline/4.xml +27 -0
  49. data/test/fixtures/ordering/go/api/pipelines/defaultPipeline/5.xml +33 -0
  50. data/test/fixtures/ordering/go/api/pipelines/defaultPipeline/stages.xml +255 -0
  51. data/test/fixtures/ordering/go/api/stages/1.xml +14 -0
  52. data/test/fixtures/ordering/go/api/stages/10.xml +14 -0
  53. data/test/fixtures/ordering/go/api/stages/2.xml +14 -0
  54. data/test/fixtures/ordering/go/api/stages/3.xml +14 -0
  55. data/test/fixtures/ordering/go/api/stages/4.xml +14 -0
  56. data/test/fixtures/ordering/go/api/stages/5.xml +14 -0
  57. data/test/fixtures/ordering/go/api/stages/6.xml +14 -0
  58. data/test/fixtures/ordering/go/api/stages/7.xml +14 -0
  59. data/test/fixtures/ordering/go/api/stages/8.xml +14 -0
  60. data/test/fixtures/ordering/go/api/stages/9.xml +14 -0
  61. data/test/fixtures/pagination/stages.xml +636 -0
  62. data/test/fixtures/pagination/stages_before_7916973.xml +615 -0
  63. data/test/fixtures/pagination/stages_before_7959831.xml +615 -0
  64. data/test/fixtures/pipelines_1.xml +8 -1
  65. data/test/fixtures/stages.xml +1 -1
  66. data/test/go_api_client/atom/author_test.rb +27 -0
  67. data/test/go_api_client/atom/entry_test.rb +27 -0
  68. data/test/go_api_client/atom/feed_page_test.rb +41 -0
  69. data/test/go_api_client/atom/feed_test.rb +25 -0
  70. data/test/go_api_client/building_test.rb +38 -0
  71. data/test/go_api_client/commit_test.rb +38 -0
  72. data/test/go_api_client/job_test.rb +42 -0
  73. data/test/go_api_client/pipeline_test.rb +63 -16
  74. data/test/go_api_client/stage_test.rb +48 -14
  75. data/test/go_api_client/user_test.rb +27 -0
  76. data/test/test_helper.rb +19 -3
  77. metadata +173 -10
  78. data/bin/go_api_client +0 -3
data/lib/go_api_client.rb CHANGED
@@ -1,27 +1,60 @@
1
1
  require 'nokogiri'
2
- require 'open-uri'
2
+
3
3
  require 'net/http'
4
4
 
5
5
  require 'go_api_client/version'
6
+ require 'go_api_client/helpers'
7
+ require 'go_api_client/http_fetcher'
8
+
6
9
  require 'go_api_client/atom'
7
- require 'go_api_client/pipeline.rb'
8
- require 'go_api_client/stage.rb'
9
- require 'go_api_client/job.rb'
10
+ require 'go_api_client/pipeline'
11
+ require 'go_api_client/stage'
12
+ require 'go_api_client/job'
13
+ require 'go_api_client/commit'
14
+ require 'go_api_client/user'
15
+
10
16
 
11
17
  module GoApiClient
12
- def self.runs(host)
13
- doc = Nokogiri::XML(open("http://#{host}/go/api/pipelines/defaultPipeline/stages.xml"))
14
- feed = GoApiClient::Atom::Feed.new(doc.root).parse!
18
+ def self.runs(options)
19
+ options = ({:protocol => 'http', :port => 8153, :username => nil, :password => nil, :latest_atom_entry_id => nil, :pipeline_name => 'defaultPipeline'}).merge(options)
20
+
21
+ http_fetcher = GoApiClient::HttpFetcher.new(:username => options[:username], :password => options[:password])
22
+
23
+ feed_url = "#{options[:protocol]}://#{options[:host]}:#{options[:port]}/go/api/pipelines/#{options[:pipeline_name]}/stages.xml"
24
+
25
+ feed = GoApiClient::Atom::Feed.new(feed_url, options[:latest_atom_entry_id])
26
+ feed.fetch!(http_fetcher)
27
+
15
28
  pipelines = {}
16
- feed.entries.each do |entry|
17
- Stage.new(entry, pipelines).fetch
29
+ stages = feed.entries.collect do |entry|
30
+ Stage.from(entry.stage_href, :authors => entry.authors, :pipeline_cache => pipelines, :http_fetcher => http_fetcher)
31
+ end
32
+
33
+ pipelines.values.each do |p|
34
+ p.stages = p.stages.sort_by {|s| s.completed_at }
18
35
  end
19
- pipelines.values
36
+
37
+ return {
38
+ :pipelines => pipelines.values.sort_by {|p| p.counter},
39
+ :latest_atom_entry_id => stages.empty? ? options[:latest_atom_entry_id] : feed.entries.first.id
40
+ }
41
+ end
42
+
43
+ def self.build_in_progress?(options)
44
+ raise ArgumentError("Hostname is mandatory") unless options[:host]
45
+ options = ({:protocol => 'http', :port => 8153, :username => nil, :password => nil}).merge(options)
46
+ http_fetcher = GoApiClient::HttpFetcher.new(:username => options[:username], :password => options[:password])
47
+ url = "#{options[:protocol]}://#{options[:host]}:#{options[:port]}/go/cctray.xml"
48
+ doc = Nokogiri::XML(http_fetcher.get_response_body(url))
49
+ doc.xpath("//Project[contains(@activity, 'Building')]").count > 0
20
50
  end
21
-
51
+
52
+ def self.build_finished?(options)
53
+ !build_in_progress?(options)
54
+ end
55
+
22
56
  def self.schedule_pipeline(host)
23
57
  uri = URI("http://#{host}:8153/go/api/pipelines/defaultPipeline/schedule")
24
58
  Net::HTTP.post_form(uri, {})
25
59
  end
26
60
  end
27
-
@@ -0,0 +1,41 @@
1
+
2
+ <?xml version="1.0" encoding="UTF-8"?>
3
+
4
+ <job name="Test">
5
+ <link rel="self"
6
+ href="http://go-server.1.project:8153/go/api/jobs/1.xml"/>
7
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:job-id:defaultPipeline:1:Units:1:Test]]></id>
8
+ <pipeline name="defaultPipeline" counter="1" label="1"/>
9
+ <stage name="Units" counter="1"
10
+ href="http://go-server.1.project:8153/go/api/stages/1.xml"/>
11
+ <result>Passed</result>
12
+ <state>Completed</state>
13
+ <properties>
14
+ <property
15
+ name="cruise_agent"><![CDATA[go-agent-01.1.project]]></property>
16
+ <property name="cruise_job_duration"><![CDATA[80]]></property>
17
+ <property name="cruise_job_id"><![CDATA[1]]></property>
18
+ <property name="cruise_job_result"><![CDATA[Passed]]></property>
19
+ <property name="cruise_pipeline_counter"><![CDATA[1]]></property>
20
+ <property name="cruise_pipeline_label"><![CDATA[1]]></property>
21
+ <property name="cruise_stage_counter"><![CDATA[1]]></property>
22
+ <property
23
+ name="cruise_timestamp_01_scheduled"><![CDATA[2012-06-05T08:33:09Z]]></property>
24
+ <property
25
+ name="cruise_timestamp_02_assigned"><![CDATA[2012-06-05T08:34:51Z]]></property>
26
+ <property
27
+ name="cruise_timestamp_03_preparing"><![CDATA[2012-06-05T08:34:56Z]]></property>
28
+ <property
29
+ name="cruise_timestamp_04_building"><![CDATA[2012-06-05T08:34:58Z]]></property>
30
+ <property
31
+ name="cruise_timestamp_05_completing"><![CDATA[2012-06-05T08:36:19Z]]></property>
32
+ <property
33
+ name="cruise_timestamp_06_completed"><![CDATA[2012-06-05T08:36:19Z]]></property>
34
+ </properties>
35
+ <agent uuid="0a0b859f-406d-4d22-9f7f-6f71d9b45a77"/>
36
+ <artifacts
37
+ baseUri="http://go-server.1.project:8153/go/files/defaultPipeline/1/Units/1/Test"
38
+ pathFromArtifactRoot="pipelines/defaultPipeline/1/Units/1/Test"/>
39
+ <resources/>
40
+ <environmentvariables/>
41
+ </job>
@@ -0,0 +1,43 @@
1
+
2
+ <?xml version="1.0" encoding="UTF-8"?>
3
+
4
+ <job name="Jasmine">
5
+ <link rel="self"
6
+ href="http://go-server.1.project:8153/go/api/jobs/2.xml"/>
7
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:job-id:defaultPipeline:1:Functionals:1:Jasmine]]></id>
8
+ <pipeline name="defaultPipeline" counter="1" label="1"/>
9
+ <stage name="Functionals" counter="1"
10
+ href="http://go-server.1.project:8153/go/api/stages/2.xml"/>
11
+ <result>Passed</result>
12
+ <state>Completed</state>
13
+ <properties>
14
+ <property
15
+ name="cruise_agent"><![CDATA[go-agent-01.1.project]]></property>
16
+ <property name="cruise_job_duration"><![CDATA[18]]></property>
17
+ <property name="cruise_job_id"><![CDATA[2]]></property>
18
+ <property name="cruise_job_result"><![CDATA[Passed]]></property>
19
+ <property name="cruise_pipeline_counter"><![CDATA[1]]></property>
20
+ <property name="cruise_pipeline_label"><![CDATA[1]]></property>
21
+ <property name="cruise_stage_counter"><![CDATA[1]]></property>
22
+ <property
23
+ name="cruise_timestamp_01_scheduled"><![CDATA[2012-06-05T08:36:19Z]]></property>
24
+ <property
25
+ name="cruise_timestamp_02_assigned"><![CDATA[2012-06-05T08:36:29Z]]></property>
26
+ <property
27
+ name="cruise_timestamp_03_preparing"><![CDATA[2012-06-05T08:36:39Z]]></property>
28
+ <property
29
+ name="cruise_timestamp_04_building"><![CDATA[2012-06-05T08:36:40Z]]></property>
30
+ <property
31
+ name="cruise_timestamp_05_completing"><![CDATA[2012-06-05T08:36:58Z]]></property>
32
+ <property
33
+ name="cruise_timestamp_06_completed"><![CDATA[2012-06-05T08:36:59Z]]></property>
34
+ </properties>
35
+ <agent uuid="0a0b859f-406d-4d22-9f7f-6f71d9b45a77"/>
36
+ <artifacts
37
+ baseUri="http://go-server.1.project:8153/go/files/defaultPipeline/1/Functionals/1/Jasmine"
38
+ pathFromArtifactRoot="pipelines/defaultPipeline/1/Functionals/1/Jasmine"/>
39
+ <resources/>
40
+ <environmentvariables>
41
+ <variable name="DISPLAY"><![CDATA[:1]]></variable>
42
+ </environmentvariables>
43
+ </job>
@@ -0,0 +1,40 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <job name="Test">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/jobs/3.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:job-id:defaultPipeline:2:Units:1:Test]]></id>
7
+ <pipeline name="defaultPipeline" counter="2" label="2"/>
8
+ <stage name="Units" counter="1"
9
+ href="http://go-server.1.project:8153/go/api/stages/3.xml"/>
10
+ <result>Failed</result>
11
+ <state>Completed</state>
12
+ <properties>
13
+ <property
14
+ name="cruise_agent"><![CDATA[go-agent-01.1.project]]></property>
15
+ <property name="cruise_job_duration"><![CDATA[39]]></property>
16
+ <property name="cruise_job_id"><![CDATA[3]]></property>
17
+ <property name="cruise_job_result"><![CDATA[Failed]]></property>
18
+ <property name="cruise_pipeline_counter"><![CDATA[2]]></property>
19
+ <property name="cruise_pipeline_label"><![CDATA[2]]></property>
20
+ <property name="cruise_stage_counter"><![CDATA[1]]></property>
21
+ <property
22
+ name="cruise_timestamp_01_scheduled"><![CDATA[2012-06-05T10:02:10Z]]></property>
23
+ <property
24
+ name="cruise_timestamp_02_assigned"><![CDATA[2012-06-05T10:02:19Z]]></property>
25
+ <property
26
+ name="cruise_timestamp_03_preparing"><![CDATA[2012-06-05T10:02:29Z]]></property>
27
+ <property
28
+ name="cruise_timestamp_04_building"><![CDATA[2012-06-05T10:02:29Z]]></property>
29
+ <property
30
+ name="cruise_timestamp_05_completing"><![CDATA[2012-06-05T10:03:09Z]]></property>
31
+ <property
32
+ name="cruise_timestamp_06_completed"><![CDATA[2012-06-05T10:03:09Z]]></property>
33
+ </properties>
34
+ <agent uuid="0a0b859f-406d-4d22-9f7f-6f71d9b45a77"/>
35
+ <artifacts
36
+ baseUri="http://go-server.1.project:8153/go/files/defaultPipeline/2/Units/1/Test"
37
+ pathFromArtifactRoot="pipelines/defaultPipeline/2/Units/1/Test"/>
38
+ <resources/>
39
+ <environmentvariables/>
40
+ </job>
@@ -0,0 +1,40 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <job name="Test">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/jobs/4.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:job-id:defaultPipeline:3:Units:1:Test]]></id>
7
+ <pipeline name="defaultPipeline" counter="3" label="3"/>
8
+ <stage name="Units" counter="1"
9
+ href="http://go-server.1.project:8153/go/api/stages/4.xml"/>
10
+ <result>Passed</result>
11
+ <state>Completed</state>
12
+ <properties>
13
+ <property
14
+ name="cruise_agent"><![CDATA[go-agent-01.1.project]]></property>
15
+ <property name="cruise_job_duration"><![CDATA[39]]></property>
16
+ <property name="cruise_job_id"><![CDATA[4]]></property>
17
+ <property name="cruise_job_result"><![CDATA[Passed]]></property>
18
+ <property name="cruise_pipeline_counter"><![CDATA[3]]></property>
19
+ <property name="cruise_pipeline_label"><![CDATA[3]]></property>
20
+ <property name="cruise_stage_counter"><![CDATA[1]]></property>
21
+ <property
22
+ name="cruise_timestamp_01_scheduled"><![CDATA[2012-06-05T14:39:27Z]]></property>
23
+ <property
24
+ name="cruise_timestamp_02_assigned"><![CDATA[2012-06-05T14:39:39Z]]></property>
25
+ <property
26
+ name="cruise_timestamp_03_preparing"><![CDATA[2012-06-05T14:39:49Z]]></property>
27
+ <property
28
+ name="cruise_timestamp_04_building"><![CDATA[2012-06-05T14:39:50Z]]></property>
29
+ <property
30
+ name="cruise_timestamp_05_completing"><![CDATA[2012-06-05T14:40:29Z]]></property>
31
+ <property
32
+ name="cruise_timestamp_06_completed"><![CDATA[2012-06-05T14:40:29Z]]></property>
33
+ </properties>
34
+ <agent uuid="0a0b859f-406d-4d22-9f7f-6f71d9b45a77"/>
35
+ <artifacts
36
+ baseUri="http://go-server.1.project:8153/go/files/defaultPipeline/3/Units/1/Test"
37
+ pathFromArtifactRoot="pipelines/defaultPipeline/3/Units/1/Test"/>
38
+ <resources/>
39
+ <environmentvariables/>
40
+ </job>
@@ -0,0 +1,45 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <pipeline name="defaultPipeline" counter="1" label="1">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/1.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:job-id:defaultPipeline:1]]></id>
7
+ <scheduleTime>2012-06-05T08:33:09Z</scheduleTime>
8
+ <materials>
9
+ <material
10
+ materialUri="http://go-server.1.project:8153/go/api/materials/1.xml"
11
+ type="GitMaterial"
12
+ url="git://go-saas-worker.1.project/ThoughtWorksInc/go-saas-rails"
13
+ branch="master">
14
+ <modifications>
15
+ <changeset
16
+ changesetUri="http://go-server.1.project:8153/go/api/materials/1/changeset/a84ffc0e58b7b2ba7d5b15abae70c2d921b835e6.xml">
17
+ <user><![CDATA[Manish Chakravarty
18
+ <manishchaks@gmail.com>]]></user>
19
+ <checkinTime>2012-06-04T10:57:09Z</checkinTime>
20
+ <revision><![CDATA[a84ffc0e58b7b2ba7d5b15abae70c2d921b835e6]]></revision>
21
+ <message><![CDATA[Revert "Added "HubRuby" gem for talking to
22
+ GitHub."
23
+
24
+ This reverts commit
25
+ 2b2e6ee3f28cf0f34241a8413c28180d8b74e14f.]]></message>
26
+ <file name="Gemfile" action="modified"/>
27
+ <file name="Gemfile.lock" action="modified"/>
28
+ <file name="vendor/cache/httparty-0.8.3.gem"
29
+ action="deleted"/>
30
+ <file name="vendor/cache/hubruby-0.1.1.gem"
31
+ action="deleted"/>
32
+ <file name="vendor/cache/multi_xml-0.5.1.gem"
33
+ action="deleted"/>
34
+ </changeset>
35
+ </modifications>
36
+ </material>
37
+ </materials>
38
+ <stages>
39
+ <stage
40
+ href="http://go-server.1.project:8153/go/api/stages/1.xml"/>
41
+ <stage
42
+ href="http://go-server.1.project:8153/go/api/stages/2.xml"/>
43
+ </stages>
44
+ <approvedBy><![CDATA[anonymous]]></approvedBy>
45
+ </pipeline>
@@ -0,0 +1,39 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <pipeline name="defaultPipeline" counter="2" label="2">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/2.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:job-id:defaultPipeline:2]]></id>
7
+ <link rel="insertedAfter"
8
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/1.xml"/>
9
+ <scheduleTime>2012-06-05T10:02:10Z</scheduleTime>
10
+ <materials>
11
+ <material
12
+ materialUri="http://go-server.1.project:8153/go/api/materials/1.xml"
13
+ type="GitMaterial"
14
+ url="git://go-saas-worker.1.project/ThoughtWorksInc/go-saas-rails"
15
+ branch="master">
16
+ <modifications>
17
+ <changeset
18
+ changesetUri="http://go-server.1.project:8153/go/api/materials/1/changeset/f475d63c2e0f4db5c26e79541278afcb00d63cde.xml">
19
+ <user><![CDATA[Manish Chakravarty
20
+ <manishchaks@gmail.com>]]></user>
21
+ <checkinTime>2012-06-05T08:12:20Z</checkinTime>
22
+ <revision><![CDATA[f475d63c2e0f4db5c26e79541278afcb00d63cde]]></revision>
23
+ <message><![CDATA[Refactored code to ensure validity of
24
+ repository URL's. Wrote a test for
25
+ collaboration]]></message>
26
+ <file name="app/models/project.rb" action="modified"/>
27
+ <file name="spec/models/collaboration_spec.rb"
28
+ action="added"/>
29
+ <file name="spec/models/user_spec.rb" action="modified"/>
30
+ </changeset>
31
+ </modifications>
32
+ </material>
33
+ </materials>
34
+ <stages>
35
+ <stage
36
+ href="http://go-server.1.project:8153/go/api/stages/3.xml"/>
37
+ </stages>
38
+ <approvedBy><![CDATA[anonymous]]></approvedBy>
39
+ </pipeline>
@@ -0,0 +1,71 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <pipeline name="defaultPipeline" counter="3" label="3">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/3.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:job-id:defaultPipeline:3]]></id>
7
+ <link rel="insertedAfter"
8
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/2.xml"/>
9
+ <scheduleTime>2012-06-05T14:39:27Z</scheduleTime>
10
+ <materials>
11
+ <material
12
+ materialUri="http://go-server.1.project:8153/go/api/materials/1.xml"
13
+ type="GitMaterial"
14
+ url="git://go-saas-worker.1.project/ThoughtWorksInc/go-saas-rails"
15
+ branch="master">
16
+ <modifications>
17
+ <changeset
18
+ changesetUri="http://go-server.1.project:8153/go/api/materials/1/changeset/dc8b3df12b16770dff48cea229559cc0ea40137f.xml">
19
+ <user><![CDATA[Manish Chakravarty
20
+ <manishchaks@gmail.com>]]></user>
21
+ <checkinTime>2012-06-05T12:02:18Z</checkinTime>
22
+ <revision><![CDATA[dc8b3df12b16770dff48cea229559cc0ea40137f]]></revision>
23
+ <message><![CDATA[Fixed a bug with detection if a github
24
+ repo is already present in the
25
+ system. Updated project_spec accordingly.]]></message>
26
+ <file name="app/models/project.rb" action="modified"/>
27
+ <file name="spec/models/project_spec.rb" action="modified"/>
28
+ </changeset>
29
+ <changeset
30
+ changesetUri="http://go-server.1.project:8153/go/api/materials/1/changeset/fc901bb18b34d42045ab21d56378fbe127437777.xml">
31
+ <user><![CDATA[Manish Chakravarty
32
+ <manishchaks@gmail.com>]]></user>
33
+ <checkinTime>2012-06-05T11:39:27Z</checkinTime>
34
+ <revision><![CDATA[fc901bb18b34d42045ab21d56378fbe127437777]]></revision>
35
+ <message><![CDATA[Added test to project spec to determine if
36
+ a github repository is already present in the
37
+ system. Code-cleanup of Project spec.]]></message>
38
+ <file name="spec/models/project_spec.rb" action="modified"/>
39
+ </changeset>
40
+ <changeset
41
+ changesetUri="http://go-server.1.project:8153/go/api/materials/1/changeset/9580a8f96cdc5add9ce5560a93a93ce575ddc0e5.xml">
42
+ <user><![CDATA[Manish Chakravarty
43
+ <manishchaks@gmail.com>]]></user>
44
+ <checkinTime>2012-06-05T11:38:04Z</checkinTime>
45
+ <revision><![CDATA[9580a8f96cdc5add9ce5560a93a93ce575ddc0e5]]></revision>
46
+ <message><![CDATA[Added a convenience method to figure out
47
+ if a given github repository is present as a project in our
48
+ system]]></message>
49
+ <file name="app/models/project.rb" action="modified"/>
50
+ </changeset>
51
+ <changeset
52
+ changesetUri="http://go-server.1.project:8153/go/api/materials/1/changeset/fe15104025eaed288eec088d8153e7b51242117d.xml">
53
+ <user><![CDATA[Manish Chakravarty
54
+ <manishchaks@gmail.com>]]></user>
55
+ <checkinTime>2012-06-05T10:09:51Z</checkinTime>
56
+ <revision><![CDATA[fe15104025eaed288eec088d8153e7b51242117d]]></revision>
57
+ <message><![CDATA[Refactored and cleaned up
58
+ DashBoardController and Project specs.]]></message>
59
+ <file name="spec/controllers/dashboard_controller_spec.rb"
60
+ action="modified"/>
61
+ <file name="spec/models/project_spec.rb" action="modified"/>
62
+ </changeset>
63
+ </modifications>
64
+ </material>
65
+ </materials>
66
+ <stages>
67
+ <stage
68
+ href="http://go-server.1.project:8153/go/api/stages/4.xml"/>
69
+ </stages>
70
+ <approvedBy><![CDATA[anonymous]]></approvedBy>
71
+ </pipeline>
@@ -0,0 +1,180 @@
1
+ <feed xmlns="http://www.w3.org/2005/Atom"
2
+ xmlns:go="http://www.thoughtworks-studios.com/ns/go">
3
+ <title><![CDATA[defaultPipeline]]></title>
4
+ <id>http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/stages.xml</id>
5
+ <author>
6
+ <name>Go</name>
7
+ </author>
8
+ <updated>2012-06-05T14:40:29+00:00</updated>
9
+ <link rel="self"
10
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/stages.xml"/>
11
+
12
+ <entry>
13
+ <title><![CDATA[defaultPipeline(3) stage Units(1)
14
+ Passed]]></title>
15
+ <updated>2012-06-05T14:40:29+00:00</updated>
16
+ <id>http://go-server.1.project:8153/go/pipelines/defaultPipeline/3/Units/1</id>
17
+
18
+
19
+ <author>
20
+ <name><![CDATA[Manish Chakravarty
21
+ <manishchaks@gmail.com>]]></name>
22
+ </author>
23
+
24
+
25
+ <link title="Units Stage Detail"
26
+ href="http://go-server.1.project:8153/go/api/stages/4.xml"
27
+ rel="alternate" type="application/vnd.go+xml"/>
28
+ <link title="Units Stage Detail"
29
+ href="http://go-server.1.project:8153/go/pipelines/defaultPipeline/3/Units/1"
30
+ rel="alternate" type="text/html"/>
31
+
32
+ <link title="defaultPipeline Pipeline Detail"
33
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/3.xml"
34
+ rel="http://www.thoughtworks-studios.com/ns/relations/go/pipeline"
35
+ type="application/vnd.go+xml"/>
36
+ <link title="defaultPipeline Pipeline Detail"
37
+ href="http://go-server.1.project:8153/go/pipelines/defaultPipeline/3/Units/1/pipeline"
38
+ rel="http://www.thoughtworks-studios.com/ns/relations/go/pipeline"
39
+ type="text/html"/>
40
+
41
+
42
+
43
+ <category
44
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
45
+ term="stage" label="Stage" />
46
+ <category
47
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
48
+ term="completed" label="Completed" />
49
+ <category
50
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
51
+ term="passed" label="Passed" />
52
+ </entry>
53
+
54
+ <entry>
55
+ <title><![CDATA[defaultPipeline(2) stage Units(1)
56
+ Failed]]></title>
57
+ <updated>2012-06-05T10:03:09+00:00</updated>
58
+ <id>http://go-server.1.project:8153/go/pipelines/defaultPipeline/2/Units/1</id>
59
+
60
+
61
+ <author>
62
+ <name><![CDATA[Manish Chakravarty
63
+ <manishchaks@gmail.com>]]></name>
64
+ </author>
65
+
66
+
67
+ <link title="Units Stage Detail"
68
+ href="http://go-server.1.project:8153/go/api/stages/3.xml"
69
+ rel="alternate" type="application/vnd.go+xml"/>
70
+ <link title="Units Stage Detail"
71
+ href="http://go-server.1.project:8153/go/pipelines/defaultPipeline/2/Units/1"
72
+ rel="alternate" type="text/html"/>
73
+
74
+ <link title="defaultPipeline Pipeline Detail"
75
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/2.xml"
76
+ rel="http://www.thoughtworks-studios.com/ns/relations/go/pipeline"
77
+ type="application/vnd.go+xml"/>
78
+ <link title="defaultPipeline Pipeline Detail"
79
+ href="http://go-server.1.project:8153/go/pipelines/defaultPipeline/2/Units/1/pipeline"
80
+ rel="http://www.thoughtworks-studios.com/ns/relations/go/pipeline"
81
+ type="text/html"/>
82
+
83
+
84
+
85
+ <category
86
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
87
+ term="stage" label="Stage" />
88
+ <category
89
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
90
+ term="completed" label="Completed" />
91
+ <category
92
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
93
+ term="failed" label="Failed" />
94
+ </entry>
95
+
96
+ <entry>
97
+ <title><![CDATA[defaultPipeline(1) stage Functionals(1)
98
+ Passed]]></title>
99
+ <updated>2012-06-05T08:36:59+00:00</updated>
100
+ <id>http://go-server.1.project:8153/go/pipelines/defaultPipeline/1/Functionals/1</id>
101
+
102
+
103
+ <author>
104
+ <name><![CDATA[Manish Chakravarty
105
+ <manishchaks@gmail.com>]]></name>
106
+ </author>
107
+
108
+
109
+ <link title="Functionals Stage Detail"
110
+ href="http://go-server.1.project:8153/go/api/stages/2.xml"
111
+ rel="alternate" type="application/vnd.go+xml"/>
112
+ <link title="Functionals Stage Detail"
113
+ href="http://go-server.1.project:8153/go/pipelines/defaultPipeline/1/Functionals/1"
114
+ rel="alternate" type="text/html"/>
115
+
116
+ <link title="defaultPipeline Pipeline Detail"
117
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/1.xml"
118
+ rel="http://www.thoughtworks-studios.com/ns/relations/go/pipeline"
119
+ type="application/vnd.go+xml"/>
120
+ <link title="defaultPipeline Pipeline Detail"
121
+ href="http://go-server.1.project:8153/go/pipelines/defaultPipeline/1/Functionals/1/pipeline"
122
+ rel="http://www.thoughtworks-studios.com/ns/relations/go/pipeline"
123
+ type="text/html"/>
124
+
125
+
126
+
127
+ <category
128
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
129
+ term="stage" label="Stage" />
130
+ <category
131
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
132
+ term="completed" label="Completed" />
133
+ <category
134
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
135
+ term="passed" label="Passed" />
136
+ </entry>
137
+
138
+ <entry>
139
+ <title><![CDATA[defaultPipeline(1) stage Units(1)
140
+ Passed]]></title>
141
+ <updated>2012-06-05T08:36:19+00:00</updated>
142
+ <id>http://go-server.1.project:8153/go/pipelines/defaultPipeline/1/Units/1</id>
143
+
144
+
145
+ <author>
146
+ <name><![CDATA[Manish Chakravarty
147
+ <manishchaks@gmail.com>]]></name>
148
+ </author>
149
+
150
+
151
+ <link title="Units Stage Detail"
152
+ href="http://go-server.1.project:8153/go/api/stages/1.xml"
153
+ rel="alternate" type="application/vnd.go+xml"/>
154
+ <link title="Units Stage Detail"
155
+ href="http://go-server.1.project:8153/go/pipelines/defaultPipeline/1/Units/1"
156
+ rel="alternate" type="text/html"/>
157
+
158
+ <link title="defaultPipeline Pipeline Detail"
159
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/1.xml"
160
+ rel="http://www.thoughtworks-studios.com/ns/relations/go/pipeline"
161
+ type="application/vnd.go+xml"/>
162
+ <link title="defaultPipeline Pipeline Detail"
163
+ href="http://go-server.1.project:8153/go/pipelines/defaultPipeline/1/Units/1/pipeline"
164
+ rel="http://www.thoughtworks-studios.com/ns/relations/go/pipeline"
165
+ type="text/html"/>
166
+
167
+
168
+
169
+ <category
170
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
171
+ term="stage" label="Stage" />
172
+ <category
173
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
174
+ term="completed" label="Completed" />
175
+ <category
176
+ scheme="http://www.thoughtworks-studios.com/ns/categories/go"
177
+ term="passed" label="Passed" />
178
+ </entry>
179
+
180
+ </feed>
@@ -0,0 +1,16 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <stage name="Units" counter="1">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/stages/1.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:stage-id:defaultPipeline:1:Units:1]]></id>
7
+ <pipeline name="defaultPipeline" counter="1" label="1"
8
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/1.xml"/>
9
+ <updated>2012-06-05T08:36:19Z</updated>
10
+ <result>Passed</result>
11
+ <state>Completed</state>
12
+ <approvedBy><![CDATA[anonymous]]></approvedBy>
13
+ <jobs>
14
+ <job href="http://go-server.1.project:8153/go/api/jobs/1.xml"/>
15
+ </jobs>
16
+ </stage>
@@ -0,0 +1,16 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <stage name="Functionals" counter="1">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/stages/2.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:stage-id:defaultPipeline:1:Functionals:1]]></id>
7
+ <pipeline name="defaultPipeline" counter="1" label="1"
8
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/1.xml"/>
9
+ <updated>2012-06-05T08:36:59Z</updated>
10
+ <result>Passed</result>
11
+ <state>Completed</state>
12
+ <approvedBy><![CDATA[changes]]></approvedBy>
13
+ <jobs>
14
+ <job href="http://go-server.1.project:8153/go/api/jobs/2.xml"/>
15
+ </jobs>
16
+ </stage>
@@ -0,0 +1,16 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <stage name="Units" counter="1">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/stages/3.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:stage-id:defaultPipeline:2:Units:1]]></id>
7
+ <pipeline name="defaultPipeline" counter="2" label="2"
8
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/2.xml"/>
9
+ <updated>2012-06-05T10:03:09Z</updated>
10
+ <result>Failed</result>
11
+ <state>Completed</state>
12
+ <approvedBy><![CDATA[anonymous]]></approvedBy>
13
+ <jobs>
14
+ <job href="http://go-server.1.project:8153/go/api/jobs/3.xml"/>
15
+ </jobs>
16
+ </stage>
@@ -0,0 +1,16 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <stage name="Units" counter="1">
4
+ <link rel="self"
5
+ href="http://go-server.1.project:8153/go/api/stages/4.xml"/>
6
+ <id><![CDATA[urn:x-go.studios.thoughtworks.com:stage-id:defaultPipeline:3:Units:1]]></id>
7
+ <pipeline name="defaultPipeline" counter="3" label="3"
8
+ href="http://go-server.1.project:8153/go/api/pipelines/defaultPipeline/3.xml"/>
9
+ <updated>2012-06-05T14:40:29Z</updated>
10
+ <result>Passed</result>
11
+ <state>Completed</state>
12
+ <approvedBy><![CDATA[anonymous]]></approvedBy>
13
+ <jobs>
14
+ <job href="http://go-server.1.project:8153/go/api/jobs/4.xml"/>
15
+ </jobs>
16
+ </stage>