detroit 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. data/.ruby +45 -0
  2. data/COPYING.rdoc +19 -0
  3. data/EXAMPLE.md +188 -0
  4. data/GPL3.txt +675 -0
  5. data/HISTORY.rdoc +14 -0
  6. data/README.rdoc +139 -0
  7. data/bin/detroit +9 -0
  8. data/lib/detroit.rb +67 -0
  9. data/lib/detroit.yml +45 -0
  10. data/lib/detroit/application.rb +427 -0
  11. data/lib/detroit/assembly.rb +80 -0
  12. data/lib/detroit/config.rb +197 -0
  13. data/lib/detroit/control.rb +124 -0
  14. data/lib/detroit/core_ext.rb +139 -0
  15. data/lib/detroit/custom.rb +65 -0
  16. data/lib/detroit/dsl.rb +55 -0
  17. data/lib/detroit/schedule.rb +187 -0
  18. data/lib/detroit/service.rb +188 -0
  19. data/lib/detroit/standard_assembly.rb +52 -0
  20. data/lib/detroit/tool.rb +216 -0
  21. data/lib/detroit/tool/core_ext.rb +3 -0
  22. data/lib/detroit/tool/core_ext/facets.rb +11 -0
  23. data/lib/detroit/tool/core_ext/filetest.rb +29 -0
  24. data/lib/detroit/tool/core_ext/shell_extensions.rb +7 -0
  25. data/lib/detroit/tool/core_ext/to_actual_filename.rb +19 -0
  26. data/lib/detroit/tool/core_ext/to_console.rb +97 -0
  27. data/lib/detroit/tool/core_ext/to_list.rb +29 -0
  28. data/lib/detroit/tool/core_ext/to_yamlfrag.rb +9 -0
  29. data/lib/detroit/tool/core_ext/unfold_paragraphs.rb +27 -0
  30. data/lib/detroit/tool/email_utils.rb +288 -0
  31. data/lib/detroit/tool/project_utils.rb +41 -0
  32. data/lib/detroit/tool/shell_utils.rb +235 -0
  33. data/qed/01_schedule/02_initialize.md +57 -0
  34. data/qed/99_plugins/rdoc/rdoc-plugin.rdoc +22 -0
  35. data/qed/99_plugins/rdoc/sample/Syckfile +6 -0
  36. data/qed/99_plugins/rdoc/sample/lib/sandbox/.xxx +1 -0
  37. data/qed/99_plugins/rdoc/sample/lib/sandbox/hello.rb +5 -0
  38. data/qed/99_plugins/rdoc/sample/lib/sandbox/xxx.rb +6 -0
  39. data/qed/99_plugins/rdoc/sample/lib/xxx/bye.rb +4 -0
  40. data/qed/99_plugins/rdoc/sample/meta/name +1 -0
  41. data/qed/99_plugins/rdoc/sample/meta/version +1 -0
  42. data/qed/samples/example_project/.ruby +0 -0
  43. data/qed/samples/example_project/Schedule +9 -0
  44. data/qed/samples/example_project/lib/foo/.xxx +1 -0
  45. data/qed/samples/example_project/lib/foo/hello.rb +7 -0
  46. data/qed/samples/example_project/lib/foo/xxx.rb +6 -0
  47. data/qed/samples/example_project/lib/foo/xxx/bye.rb +4 -0
  48. data/qed/samples/example_project/meta/name +1 -0
  49. data/qed/samples/example_project/meta/version +1 -0
  50. data/qed/samples/example_schedule.rb +57 -0
  51. metadata +139 -0
@@ -0,0 +1,57 @@
1
+ ## initialize
2
+
3
+ Load schedule text written in Ruby DSL.
4
+
5
+ check do |ruby|
6
+ Detroit::Schedule.new(ruby)
7
+ end
8
+
9
+ ok <<-HERE
10
+ Email :myself do |s|
11
+ s.mailto = 'transfire@gmail.com'
12
+ s.active = true
13
+ end
14
+
15
+ Syntax do |s|
16
+ s.exclude = ['lib/plugins']
17
+ s.active = false
18
+ end
19
+ HERE
20
+
21
+ Load schedule from a file written in Ruby DSL.
22
+
23
+ check do |file|
24
+ path = File.join(root_dir, file)
25
+ Detroit::Schedule.new(File.new(path))
26
+ end
27
+
28
+ ok 'samples/example_schedule.rb'
29
+
30
+ Load schedule text written in YAML"
31
+
32
+ check do |yaml|
33
+ Detroit::Schedule.new(yaml)
34
+ end
35
+
36
+ ok <<-HERE
37
+ ---
38
+ myself:
39
+ service: email
40
+ mailto : transfire@gmail.com
41
+ active : true
42
+ end
43
+
44
+ syntax:
45
+ exclude: [lib/plugins]
46
+ active : false
47
+ HERE
48
+
49
+ Load schedule from a file written in YAML.
50
+
51
+ check do |file|
52
+ path = File.join(root_dir, file)
53
+ Detroit::Schedule.new(File.new(path))
54
+ end
55
+
56
+ ok 'samples/example_schedule.yml'
57
+
@@ -0,0 +1,22 @@
1
+ = RDoc Plugin
2
+
3
+ The RDoc plugin should generate rdoc doumentation according
4
+ to the parameters provided.
5
+
6
+ Given a suitable project.
7
+
8
+ Dir.chdir 'sample'
9
+
10
+ Now if we run 'syckle document' on the sample project.
11
+
12
+ `detroit document`
13
+
14
+ The documentation should be generated as expected.
15
+
16
+ File.assert.directory?('doc/rdoc')
17
+
18
+ Lets clean up after ourselves.
19
+
20
+ FileUtils.rm_r 'doc'
21
+ Dir.chdir '..'
22
+
@@ -0,0 +1,6 @@
1
+ ---
2
+ rdoc:
3
+ service: RDoc
4
+ exclude: [lib/xxx]
5
+ ignore : []
6
+
@@ -0,0 +1 @@
1
+ = This files should be ignored by RDOC
@@ -0,0 +1,5 @@
1
+ # Hello
2
+ module Hello
3
+
4
+
5
+ end
@@ -0,0 +1,6 @@
1
+ # This file should also be ignored by rdoc
2
+
3
+ # Hello Sandbox
4
+ module Sandbox
5
+ end
6
+
@@ -0,0 +1,4 @@
1
+ # Bye
2
+ module Bye
3
+
4
+ end
@@ -0,0 +1 @@
1
+ sandbox
File without changes
@@ -0,0 +1,9 @@
1
+ ---
2
+ rdoc:
3
+ service: RDoc
4
+ exclude: [lib/xxx]
5
+ ignore : [x*.rb]
6
+
7
+ dnote:
8
+ service: DNote
9
+
@@ -0,0 +1 @@
1
+ = This files should be ignored by RDOC
@@ -0,0 +1,7 @@
1
+ # Hello
2
+ #
3
+ # TODO: we must do something
4
+ module Hello
5
+
6
+
7
+ end
@@ -0,0 +1,6 @@
1
+ # This file should also be ignored by rdoc
2
+
3
+ # Hello Sandbox
4
+ module Sandbox
5
+ end
6
+
@@ -0,0 +1,4 @@
1
+ # Bye
2
+ module Bye
3
+
4
+ end
@@ -0,0 +1 @@
1
+ sandbox
@@ -0,0 +1,57 @@
1
+ Announce do |s|
2
+ s.mailto = 'transfire@gmail.com'
3
+ s.active = true
4
+ end
5
+
6
+ Gem do |s|
7
+ s.autospec = true
8
+ s.active = true
9
+ end
10
+
11
+ DNote do |s|
12
+ s.priority = -1
13
+ s.active = true
14
+ end
15
+
16
+ RDoc do |s|
17
+ s.tracks = 'site'
18
+ s.format = 'newfish'
19
+ s.include = [ 'lib', '[A-Z]*' ]
20
+ s.exclude = [ 'Redfile', 'lib/plugins/sow' ]
21
+ s.extra = nil
22
+ end
23
+
24
+ RI do |s|
25
+ s.exclude = [ 'lib/plugins/sow' ]
26
+ s.active = true
27
+ end
28
+
29
+ Stats do |s|
30
+ s.priority = -1
31
+ s.active = true
32
+ end
33
+
34
+ Syntax do |s|
35
+ s.exclude = ['plug/sow/seeds']
36
+ s.active = false
37
+ end
38
+
39
+ Turn do |s|
40
+ s.active = false
41
+ end
42
+
43
+ Testrb do |s|
44
+ s.active = true
45
+ end
46
+
47
+ Yard do |s|
48
+ s.active = false
49
+ end
50
+
51
+ #Rubyforge :rubyforge,
52
+ # service: forge,
53
+ # sitemap: {
54
+ # site: syckle
55
+ # },
56
+ # active: false
57
+
metadata ADDED
@@ -0,0 +1,139 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: detroit
3
+ version: !ruby/object:Gem::Version
4
+ prerelease:
5
+ version: 0.1.0
6
+ platform: ruby
7
+ authors:
8
+ - Thomas Sawyer
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+
13
+ date: 2011-06-30 00:00:00 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: facets
17
+ prerelease: false
18
+ requirement: &id001 !ruby/object:Gem::Requirement
19
+ none: false
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ type: :runtime
25
+ version_requirements: *id001
26
+ - !ruby/object:Gem::Dependency
27
+ name: pom
28
+ prerelease: false
29
+ requirement: &id002 !ruby/object:Gem::Requirement
30
+ none: false
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: "0"
35
+ type: :runtime
36
+ version_requirements: *id002
37
+ - !ruby/object:Gem::Dependency
38
+ name: qed
39
+ prerelease: false
40
+ requirement: &id003 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: "0"
46
+ type: :development
47
+ version_requirements: *id003
48
+ description: Detroit is an advanced lifecycle build system. With Detroit, build tasks are user defined service instances tied to stops along a track. Whenever the detroit console command is run, a track is followed from beginning to designated destination.
49
+ email: transfire@gmail.com
50
+ executables:
51
+ - detroit
52
+ extensions: []
53
+
54
+ extra_rdoc_files:
55
+ - README.rdoc
56
+ files:
57
+ - .ruby
58
+ - bin/detroit
59
+ - lib/detroit/application.rb
60
+ - lib/detroit/assembly.rb
61
+ - lib/detroit/config.rb
62
+ - lib/detroit/control.rb
63
+ - lib/detroit/core_ext.rb
64
+ - lib/detroit/custom.rb
65
+ - lib/detroit/dsl.rb
66
+ - lib/detroit/schedule.rb
67
+ - lib/detroit/service.rb
68
+ - lib/detroit/standard_assembly.rb
69
+ - lib/detroit/tool/core_ext/facets.rb
70
+ - lib/detroit/tool/core_ext/filetest.rb
71
+ - lib/detroit/tool/core_ext/shell_extensions.rb
72
+ - lib/detroit/tool/core_ext/to_actual_filename.rb
73
+ - lib/detroit/tool/core_ext/to_console.rb
74
+ - lib/detroit/tool/core_ext/to_list.rb
75
+ - lib/detroit/tool/core_ext/to_yamlfrag.rb
76
+ - lib/detroit/tool/core_ext/unfold_paragraphs.rb
77
+ - lib/detroit/tool/core_ext.rb
78
+ - lib/detroit/tool/email_utils.rb
79
+ - lib/detroit/tool/project_utils.rb
80
+ - lib/detroit/tool/shell_utils.rb
81
+ - lib/detroit/tool.rb
82
+ - lib/detroit.rb
83
+ - lib/detroit.yml
84
+ - qed/01_schedule/02_initialize.md
85
+ - qed/99_plugins/rdoc/rdoc-plugin.rdoc
86
+ - qed/99_plugins/rdoc/sample/Syckfile
87
+ - qed/99_plugins/rdoc/sample/lib/sandbox/.xxx
88
+ - qed/99_plugins/rdoc/sample/lib/sandbox/hello.rb
89
+ - qed/99_plugins/rdoc/sample/lib/sandbox/xxx.rb
90
+ - qed/99_plugins/rdoc/sample/lib/xxx/bye.rb
91
+ - qed/99_plugins/rdoc/sample/meta/name
92
+ - qed/99_plugins/rdoc/sample/meta/version
93
+ - qed/samples/example_project/.ruby
94
+ - qed/samples/example_project/Schedule
95
+ - qed/samples/example_project/lib/foo/.xxx
96
+ - qed/samples/example_project/lib/foo/hello.rb
97
+ - qed/samples/example_project/lib/foo/xxx/bye.rb
98
+ - qed/samples/example_project/lib/foo/xxx.rb
99
+ - qed/samples/example_project/meta/name
100
+ - qed/samples/example_project/meta/version
101
+ - qed/samples/example_schedule.rb
102
+ - HISTORY.rdoc
103
+ - README.rdoc
104
+ - GPL3.txt
105
+ - COPYING.rdoc
106
+ - EXAMPLE.md
107
+ homepage: http://rubyworks.github.com/detroit
108
+ licenses:
109
+ - GPL3
110
+ - GPL3
111
+ post_install_message:
112
+ rdoc_options:
113
+ - --title
114
+ - Detroit API
115
+ - --main
116
+ - README.rdoc
117
+ require_paths:
118
+ - lib
119
+ required_ruby_version: !ruby/object:Gem::Requirement
120
+ none: false
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: "0"
125
+ required_rubygems_version: !ruby/object:Gem::Requirement
126
+ none: false
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: "0"
131
+ requirements: []
132
+
133
+ rubyforge_project: detroit
134
+ rubygems_version: 1.8.2
135
+ signing_key:
136
+ specification_version: 3
137
+ summary: Software Production Mangement
138
+ test_files: []
139
+