pivotal_doc 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. data/.gitignore +5 -0
  2. data/README +37 -0
  3. data/Rakefile +49 -0
  4. data/VERSION +1 -0
  5. data/assets/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  6. data/assets/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  7. data/assets/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png +0 -0
  8. data/assets/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  9. data/assets/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  10. data/assets/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  11. data/assets/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  12. data/assets/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  13. data/assets/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  14. data/assets/css/ui-lightness/images/ui-icons_222222_256x240.png +0 -0
  15. data/assets/css/ui-lightness/images/ui-icons_228ef1_256x240.png +0 -0
  16. data/assets/css/ui-lightness/images/ui-icons_ef8c08_256x240.png +0 -0
  17. data/assets/css/ui-lightness/images/ui-icons_ffd27a_256x240.png +0 -0
  18. data/assets/css/ui-lightness/images/ui-icons_ffffff_256x240.png +0 -0
  19. data/assets/css/ui-lightness/jquery-ui-1.8.5.custom.css +572 -0
  20. data/assets/js/jquery-1.4.2.min.js +154 -0
  21. data/assets/js/jquery-ui-1.8.5.custom.min.js +778 -0
  22. data/ext/date.rb +9 -0
  23. data/lib/pivotal_doc/configuration.rb +37 -0
  24. data/lib/pivotal_doc/exceptions.rb +22 -0
  25. data/lib/pivotal_doc/generator.rb +30 -0
  26. data/lib/pivotal_doc/generators/base.rb +52 -0
  27. data/lib/pivotal_doc/generators/html.rb +14 -0
  28. data/lib/pivotal_doc/generators/text.rb +12 -0
  29. data/lib/pivotal_doc/release.rb +50 -0
  30. data/lib/pivotal_doc.rb +14 -0
  31. data/pivotal_doc.gemspec +106 -0
  32. data/spec/fixtures/configs.yml +11 -0
  33. data/spec/fixtures/iterations.yml +4 -0
  34. data/spec/fixtures/projects.yml +11 -0
  35. data/spec/fixtures/stories.yml +87 -0
  36. data/spec/lib/configuration_spec.rb +88 -0
  37. data/spec/lib/generator_spec.rb +57 -0
  38. data/spec/lib/generators/base_spec.rb +64 -0
  39. data/spec/lib/generators/html_spec.rb +40 -0
  40. data/spec/lib/generators/text_spec.rb +25 -0
  41. data/spec/lib/release_spec.rb +92 -0
  42. data/spec/spec_helper.rb +9 -0
  43. data/spec/support/mocks_helper.rb +31 -0
  44. data/spec/support/pt_api_helpers.rb +42 -0
  45. data/templates/fancy.haml +74 -0
  46. data/templates/html_gen.haml +53 -0
  47. data/templates/text_gen.txt +0 -0
  48. metadata +164 -0
data/.gitignore ADDED
@@ -0,0 +1,5 @@
1
+ .DS_Store
2
+ lib/generators/*.html
3
+ lib/generators/*.txt
4
+ lib/generators/*.default
5
+ pkg/*
data/README ADDED
@@ -0,0 +1,37 @@
1
+ Automated release notes for apps hosted on pivotaltracker.com. Allows release notes to be generated for any project on pivotaltracker.com by retrieving the latest iteration for the specified project and displaying the completed features, bugs, and chores.
2
+
3
+ Usage:
4
+ Either a file path (absolute) or a settings hash are supported for specifying your Pivotal Tracker credentials.
5
+
6
+ Supported formats: [:html, :text]
7
+ There is also a 'fancy' template for the html generator. Supporting custom templates is planned soon. Until then this is just a sample to get you started. To make use of the fancy html you need to specify the template_name in your .yml file or settings hash (see sample below.)
8
+
9
+ PivotalDoc::Generator.generate(format, 'absolut_path_to_my_file')
10
+
11
+ PivotalDoc::Generator.generate(format, {
12
+ 'username' => 'my_name',
13
+ 'password' => 'my_password',
14
+ 'token' => 'my_token' #Not needed if you specify username/password,
15
+ 'template_name'=>'fancy.html',
16
+ 'projects' => {'github'=>
17
+ {
18
+ 'id' =>1, #This is the project_id from Pivotal Tracker
19
+ 'members' =>['cyclone'],
20
+ }
21
+ }
22
+ })
23
+
24
+ Also see the configs.yml sample file under spec/fixtures.
25
+
26
+ Note: The string keys are required (Using YAML to load file if specified.)
27
+ Note: It's recommended you define a story of type 'release' for each iteration to properly show the title,start/end dates, and points on the release notes.
28
+
29
+ Planned:
30
+ Custom templates
31
+ Attachment support
32
+ Comment support for stories
33
+ Parsable descriptions for more granular descriptions on stories
34
+ PDF ?
35
+
36
+
37
+ LASTLY, a big shout out to @jsmestad, author of the pivotal-tracker gem. This gem provides a beautiful Active Record style DSL for interacting with Pivotal Tracker's API.
data/Rakefile ADDED
@@ -0,0 +1,49 @@
1
+ require 'spec/rake/spectask'
2
+ require 'rubygems'
3
+ require 'rake'
4
+
5
+ begin
6
+ require 'jeweler'
7
+ Jeweler::Tasks.new do |gem|
8
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
9
+ gem.name = "pivotal_doc"
10
+ gem.summary = %Q{A release documentation generator for pivotaltracker.com}
11
+ gem.description = %Q{
12
+ Automated release notes for apps hosted on pivotaltracker.com.
13
+ Allows release notes to be generated for any project on pivotaltracker.com by retrieving the latest iteration for the specified project and displaying the completed features, bugs, and chores.
14
+ }
15
+ gem.email = "tim.linquist@gmail.com"
16
+ gem.homepage = "http://github.com/timo3377/pivotal_doc"
17
+ gem.authors = ["Tim Linquist"]
18
+ gem.files.include %w(templates/ .gitignore assets/ ext/ lib/pivotal_doc/)
19
+
20
+ gem.add_dependency "pivotal-tracker", ">= 0.2.1"
21
+ gem.add_dependency "haml"
22
+ gem.add_development_dependency "rspec"
23
+ end
24
+ rescue LoadError
25
+ puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
26
+ end
27
+
28
+ begin
29
+ require 'yard'
30
+ YARD::Rake::YardocTask.new
31
+ rescue LoadError
32
+ task :yardoc do
33
+ abort "YARD is not available. In order to run yardoc, you must: sudo gem install yard"
34
+ end
35
+ end
36
+
37
+ Spec::Rake::SpecTask.new(:spec) do |spec|
38
+ spec.libs << 'lib' << 'spec'
39
+ spec.spec_files = FileList['spec/**/*_spec.rb']
40
+ end
41
+
42
+ Spec::Rake::SpecTask.new(:rcov) do |spec|
43
+ spec.libs << 'lib' << 'spec'
44
+ spec.pattern = 'spec/**/*_spec.rb'
45
+ spec.rcov = true
46
+ end
47
+
48
+ task :default => :spec
49
+
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.1.0