bookbindery 3.0.1 → 3.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.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/lib/bookbinder.rb +0 -4
  3. data/lib/bookbinder/archive.rb +12 -5
  4. data/lib/bookbinder/archive_menu_configuration.rb +4 -4
  5. data/lib/bookbinder/commands/bind.rb +29 -97
  6. data/lib/bookbinder/commands/bind/bind_options.rb +50 -0
  7. data/lib/bookbinder/commands/bind/directory_preparer.rb +13 -12
  8. data/lib/bookbinder/commands/build_and_push_tarball.rb +1 -8
  9. data/lib/bookbinder/commands/help.rb +1 -1
  10. data/lib/bookbinder/commands/run_publish_ci.rb +1 -3
  11. data/lib/bookbinder/commands/tag.rb +12 -9
  12. data/lib/bookbinder/commands/update_local_doc_repos.rb +23 -7
  13. data/lib/bookbinder/config/bind_config_factory.rb +5 -7
  14. data/lib/bookbinder/config/remote_bind_configuration.rb +23 -31
  15. data/lib/bookbinder/config/section_config.rb +56 -0
  16. data/lib/bookbinder/configuration.rb +58 -18
  17. data/lib/bookbinder/configuration_fetcher.rb +3 -5
  18. data/lib/bookbinder/configuration_validator.rb +1 -8
  19. data/lib/bookbinder/distributor.rb +1 -1
  20. data/lib/bookbinder/dita_command_creator.rb +60 -16
  21. data/lib/bookbinder/dita_html_to_middleman_formatter.rb +3 -2
  22. data/lib/bookbinder/errors/programmer_mistake.rb +5 -0
  23. data/lib/bookbinder/git_accessor.rb +36 -2
  24. data/lib/bookbinder/ingest/cloner_factory.rb +3 -3
  25. data/lib/bookbinder/ingest/destination_directory.rb +7 -1
  26. data/lib/bookbinder/ingest/{git_hub_repository_cloner.rb → git_cloner.rb} +3 -2
  27. data/lib/bookbinder/ingest/repo_identifier.rb +45 -0
  28. data/lib/bookbinder/local_file_system_accessor.rb +4 -9
  29. data/lib/bookbinder/middleman_runner.rb +5 -6
  30. data/lib/bookbinder/preprocessing/copy_to_site_gen_dir.rb +27 -0
  31. data/lib/bookbinder/preprocessing/dita_preprocessor.rb +103 -0
  32. data/lib/bookbinder/preprocessing/preprocessor.rb +26 -0
  33. data/lib/bookbinder/repositories/command_repository.rb +17 -21
  34. data/lib/bookbinder/repositories/section_repository.rb +24 -16
  35. data/lib/bookbinder/repositories/section_repository_factory.rb +19 -0
  36. data/lib/bookbinder/streams/{switchable_stdout_and_red_stderr.rb → colorized_stream.rb} +0 -17
  37. data/lib/bookbinder/time_fetcher.rb +7 -0
  38. data/lib/bookbinder/validation_checkers/dita_section_checker.rb +2 -2
  39. data/lib/bookbinder/values/output_locations.rb +13 -12
  40. data/lib/bookbinder/values/section.rb +22 -5
  41. data/master_middleman/bookbinder_helpers.rb +4 -11
  42. metadata +59 -75
  43. data/lib/bookbinder/book.rb +0 -59
  44. data/lib/bookbinder/config/local_bind_configuration.rb +0 -23
  45. data/lib/bookbinder/dita_preprocessor.rb +0 -68
  46. data/lib/bookbinder/dita_section_gatherer_factory.rb +0 -23
  47. data/lib/bookbinder/git_client.rb +0 -66
  48. data/lib/bookbinder/git_hub_repository.rb +0 -101
  49. data/lib/bookbinder/local_dita_section_gatherer.rb +0 -32
  50. data/lib/bookbinder/remote_dita_section_gatherer.rb +0 -35
  51. data/lib/bookbinder/validation_checkers/config_version_checker.rb +0 -91
  52. data/lib/bookbinder/values/code_example.rb +0 -7
  53. data/lib/bookbinder/values/dita_section.rb +0 -39
@@ -0,0 +1,26 @@
1
+ module Bookbinder
2
+ module Preprocessing
3
+ class Preprocessor
4
+ class NullProcess
5
+ def preprocess(*)
6
+ end
7
+ end
8
+
9
+ def initialize(*processes)
10
+ @processes = processes
11
+ end
12
+
13
+ def preprocess(objs, *args, &block)
14
+ objs.group_by { |obj|
15
+ processes.detect ->{ NullProcess.new } { |process| process.applicable_to?(obj) }
16
+ }.each do |process, objs|
17
+ process.preprocess(objs, *args)
18
+ end
19
+ end
20
+
21
+ private
22
+
23
+ attr_reader :processes
24
+ end
25
+ end
26
+ end
@@ -8,17 +8,19 @@ require_relative '../configuration_fetcher'
8
8
  require_relative '../configuration_validator'
9
9
  require_relative '../dita_command_creator'
10
10
  require_relative '../dita_html_to_middleman_formatter'
11
- require_relative '../dita_preprocessor'
12
11
  require_relative '../html_document_manipulator'
13
12
  require_relative '../ingest/cloner_factory'
14
13
  require_relative '../local_file_system_accessor'
15
14
  require_relative '../middleman_runner'
16
15
  require_relative '../post_production/sitemap_writer'
16
+ require_relative '../preprocessing/copy_to_site_gen_dir'
17
+ require_relative '../preprocessing/dita_preprocessor'
18
+ require_relative '../preprocessing/preprocessor'
17
19
  require_relative '../remote_yaml_credential_provider'
18
20
  require_relative '../sheller'
19
21
  require_relative '../subnav_formatter'
20
22
  require_relative '../yaml_loader'
21
- require_relative 'section_repository'
23
+ require_relative 'section_repository_factory'
22
24
 
23
25
  module Bookbinder
24
26
  module Repositories
@@ -61,8 +63,8 @@ module Bookbinder
61
63
  push_local_to_staging,
62
64
  Commands::PushToProd.new(logger, configuration_fetcher),
63
65
  Commands::RunPublishCI.new(bind, push_local_to_staging, build_and_push_tarball),
64
- Commands::Tag.new(logger, configuration_fetcher),
65
- Commands::UpdateLocalDocRepos.new(logger, configuration_fetcher),
66
+ Commands::Tag.new(logger, configuration_fetcher, version_control_system),
67
+ Commands::UpdateLocalDocRepos.new(logger, configuration_fetcher, version_control_system, local_file_system_accessor),
66
68
  ]
67
69
  end
68
70
 
@@ -73,7 +75,6 @@ module Bookbinder
73
75
  def bind
74
76
  @bind ||= Commands::Bind.new(
75
77
  logger,
76
- configuration_fetcher,
77
78
  bind_config_factory,
78
79
  ArchiveMenuConfiguration.new(
79
80
  loader: config_loader,
@@ -85,12 +86,17 @@ module Bookbinder
85
86
  PostProduction::SitemapWriter.build(logger, final_app_directory, sitemap_port),
86
87
  final_app_directory,
87
88
  File.absolute_path('.'),
88
- dita_preprocessor,
89
+ Preprocessing::Preprocessor.new(
90
+ Preprocessing::DitaPreprocessor.new(
91
+ dita_html_to_middleman_formatter,
92
+ local_file_system_accessor,
93
+ DitaCommandCreator.new(ENV['PATH_TO_DITA_OT_LIBRARY']),
94
+ Sheller.new
95
+ ),
96
+ Preprocessing::CopyToSiteGenDir.new(local_file_system_accessor),
97
+ ),
89
98
  Ingest::ClonerFactory.new(logger, local_file_system_accessor, version_control_system),
90
- DitaSectionGathererFactory.new(version_control_system, logger),
91
- Repositories::SectionRepository.new(logger),
92
- dita_command_creator,
93
- Sheller.new,
99
+ Repositories::SectionRepositoryFactory.new(logger),
94
100
  Commands::BindComponents::DirectoryPreparer.new(logger, local_file_system_accessor, version_control_system)
95
101
  )
96
102
  end
@@ -133,16 +139,6 @@ module Bookbinder
133
139
  @final_app_directory ||= File.absolute_path('final_app')
134
140
  end
135
141
 
136
- def dita_preprocessor
137
- @dita_preprocessor ||=
138
- DitaPreprocessor.new(dita_html_to_middleman_formatter,
139
- local_file_system_accessor)
140
- end
141
-
142
- def dita_command_creator
143
- @dita_command_creator ||= DitaCommandCreator.new(ENV['PATH_TO_DITA_OT_LIBRARY'])
144
- end
145
-
146
142
  def dita_html_to_middleman_formatter
147
143
  @dita_html_to_middleman_formatter ||= DitaHtmlToMiddlemanFormatter.new(local_file_system_accessor,
148
144
  subnav_formatter,
@@ -162,7 +158,7 @@ module Bookbinder
162
158
  end
163
159
 
164
160
  def bind_config_factory
165
- @bind_config_factory ||= Config::BindConfigFactory.new(logger, version_control_system, configuration_fetcher)
161
+ @bind_config_factory ||= Config::BindConfigFactory.new(version_control_system, configuration_fetcher)
166
162
  end
167
163
 
168
164
  def sitemap_port
@@ -1,31 +1,39 @@
1
1
  require 'tmpdir'
2
+ require_relative '../deprecated_logger'
3
+ require_relative '../values/section'
2
4
 
3
5
  module Bookbinder
4
6
  module Repositories
5
7
  class SectionRepository
6
- def initialize(logger)
8
+ def initialize(logger, cloner)
7
9
  @logger = logger
10
+ @cloner = cloner
8
11
  end
9
12
 
10
- def get_instance(section_config,
11
- working_copy: nil,
12
- destination_dir: Dir.mktmpdir,
13
- &build)
14
- repository_config = section_config['repository']
15
- raise "section repository '#{repository_config}' is not a hash" unless repository_config.is_a?(Hash)
16
- raise "section repository '#{repository_config}' missing name key" unless repository_config['name']
17
- logger.log "Gathering #{repository_config['name'].cyan}"
18
- build[working_copy.copied_to,
19
- working_copy.full_name,
20
- working_copy.copied?,
21
- section_config['subnav_template'],
22
- destination_dir,
23
- working_copy.directory]
13
+ def fetch(configured_sections: [],
14
+ destination_dir: nil,
15
+ ref_override: nil)
16
+ configured_sections.map do |section_config|
17
+ logger.log "Gathering #{section_config.repo_name.cyan}"
18
+ working_copy = cloner.call(source_repo_name: section_config.repo_name,
19
+ source_ref: ref_override || section_config.repo_ref,
20
+ destination_parent_dir: destination_dir,
21
+ destination_dir_name: section_config.desired_directory_name)
22
+ Section.new(
23
+ working_copy.copied_to,
24
+ working_copy.full_name,
25
+ working_copy.copied?,
26
+ destination_dir,
27
+ working_copy.directory,
28
+ section_config.subnav_template,
29
+ section_config.preprocessor_config
30
+ )
31
+ end
24
32
  end
25
33
 
26
34
  private
27
35
 
28
- attr_reader :logger
36
+ attr_reader :logger, :cloner
29
37
  end
30
38
  end
31
39
  end
@@ -0,0 +1,19 @@
1
+ require_relative 'section_repository'
2
+
3
+ module Bookbinder
4
+ module Repositories
5
+ class SectionRepositoryFactory
6
+ def initialize(logger)
7
+ @logger = logger
8
+ end
9
+
10
+ def produce(cloner)
11
+ SectionRepository.new(logger, cloner)
12
+ end
13
+
14
+ private
15
+
16
+ attr_reader :logger
17
+ end
18
+ end
19
+ end
@@ -2,23 +2,6 @@ require_relative '../colorizer'
2
2
 
3
3
  module Bookbinder
4
4
  module Streams
5
- class SwitchableStdoutAndRedStderr
6
- def initialize(options)
7
- @options = options
8
- end
9
-
10
- def to_h
11
- {
12
- out: options.include?('--verbose') ? $stdout : Sheller::DevNull.new,
13
- err: ColorizedStream.new(Colorizer::Colors.red, $stderr)
14
- }
15
- end
16
-
17
- private
18
-
19
- attr_reader :options
20
- end
21
-
22
5
  class ColorizedStream
23
6
  def initialize(color, stream)
24
7
  @color = color
@@ -0,0 +1,7 @@
1
+ module Bookbinder
2
+ class TimeFetcher
3
+ def current_time
4
+ Time.now.strftime("%Y%m%d_%H%M")
5
+ end
6
+ end
7
+ end
@@ -12,8 +12,8 @@ module Bookbinder
12
12
  end
13
13
  end
14
14
 
15
- if !dita_sections.empty? && (sum < 1 || sum > 1)
16
- DitamapLocationError.new "You must have exactly one 'ditamap_location' key in dita_sections."
15
+ if !dita_sections.empty? && (sum < 1)
16
+ DitamapLocationError.new "You must have at least one 'ditamap_location' key in dita_sections."
17
17
  end
18
18
  end
19
19
  end
@@ -1,4 +1,5 @@
1
1
  require_relative '../directory_helpers'
2
+ require_relative '../errors/programmer_mistake'
2
3
 
3
4
  module Bookbinder
4
5
  class OutputLocations
@@ -44,20 +45,20 @@ module Bookbinder
44
45
  Pathname(@local_repo_dir) if @local_repo_dir
45
46
  end
46
47
 
47
- def dita_home_dir
48
- output_dir.join('dita')
48
+ def preprocessing_home_dir
49
+ output_dir.join('preprocessing')
49
50
  end
50
51
 
51
- def cloned_dita_dir
52
- dita_home_dir.join('dita_sections')
52
+ def cloned_preprocessing_dir
53
+ preprocessing_home_dir.join('sections')
53
54
  end
54
55
 
55
- def html_from_dita_dir
56
- dita_home_dir.join('html_from_dita')
56
+ def html_from_preprocessing_dir
57
+ preprocessing_home_dir.join('html_from_preprocessing')
57
58
  end
58
59
 
59
60
  def formatted_dir
60
- dita_home_dir.join('site_generator_ready')
61
+ preprocessing_home_dir.join('site_generator_ready')
61
62
  end
62
63
 
63
64
  def site_generator_home
@@ -72,14 +73,14 @@ module Bookbinder
72
73
  source_for_site_generator.join('subnavs')
73
74
  end
74
75
 
75
- def dita_subnav_template_path
76
- source_for_site_generator.join('subnavs', '_dita_subnav_template.erb')
77
- end
78
-
79
76
  private
80
77
 
81
78
  def context_dir
82
- Pathname(@context_dir)
79
+ if @context_dir.nil?
80
+ raise Errors::ProgrammerMistake.new("You must provide a context_dir to OutputLocations")
81
+ else
82
+ Pathname(@context_dir)
83
+ end
83
84
  end
84
85
  end
85
86
  end
@@ -1,10 +1,18 @@
1
+ require_relative '../errors/programmer_mistake'
2
+ require_relative '../ingest/destination_directory'
3
+
1
4
  module Bookbinder
2
5
  Section = Struct.new(:path_to_repository,
3
6
  :full_name,
4
7
  :copied,
5
- :subnav_templ,
6
8
  :destination_dir,
7
- :directory_name) do
9
+ :desired_directory_name,
10
+ :subnav_templ,
11
+ :preprocessor_config) do
12
+ def requires_preprocessing?
13
+ !preprocessor_config.nil?
14
+ end
15
+
8
16
  def path_to_repository
9
17
  Pathname(self[:path_to_repository].to_s)
10
18
  end
@@ -13,14 +21,23 @@ module Bookbinder
13
21
  subnav_templ.sub(/^_/, '').sub(/\.erb$/, '') if subnav_templ
14
22
  end
15
23
 
16
- def directory
17
- directory_name
24
+ def desired_directory
25
+ Ingest::DestinationDirectory.new(full_name, desired_directory_name)
18
26
  end
19
27
 
20
28
  def subnav
21
- namespace = directory.gsub('/', '_')
29
+ namespace = desired_directory.to_s.gsub('/', '_')
22
30
  template = subnav_template || 'default'
23
31
  {namespace => template}
24
32
  end
33
+
34
+ def path_to_preprocessor_attribute(attr)
35
+ path_to_repository.join(preprocessor_config[attr]) if preprocessor_config[attr]
36
+ rescue NoMethodError => e
37
+ raise Errors::ProgrammerMistake.new(
38
+ "path_to_preprocessor_attribute assumes preprocessor_config is available, got nil.\n" +
39
+ "Original exception:\n\n#{e.inspect}\n\n#{e.backtrace.join("\n")}"
40
+ )
41
+ end
25
42
  end
26
43
  end
@@ -26,14 +26,11 @@ module Bookbinder
26
26
  working_copy = cloner.call(source_repo_name: from,
27
27
  source_ref: 'master',
28
28
  destination_parent_dir: workspace)
29
- example = code_example_repo.get_instance(attributes, working_copy: working_copy) {
30
- |path, name, copied, _, dest, directory|
31
- CodeExample.new(path, name, copied, dest, directory)
32
- }
29
+
33
30
  snippet, language = code_example_reader.get_snippet_and_language_at(at,
34
- example.path_to_repository,
35
- example.copied,
36
- example.full_name)
31
+ working_copy.copied_to,
32
+ working_copy.copied?,
33
+ working_copy.full_name)
37
34
 
38
35
  delimiter = '```'
39
36
 
@@ -83,10 +80,6 @@ module Bookbinder
83
80
 
84
81
  private
85
82
 
86
- def code_example_repo
87
- @code_example_repo ||= Repositories::SectionRepository.new(bookbinder_logger)
88
- end
89
-
90
83
  def index_subnav
91
84
  return true if current_page.data.index_subnav
92
85
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bookbindery
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Grafton
@@ -15,104 +15,90 @@ authors:
15
15
  autorequire:
16
16
  bindir: install_bin
17
17
  cert_chain: []
18
- date: 2015-05-05 00:00:00.000000000 Z
18
+ date: 2015-05-21 00:00:00.000000000 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: fog-aws
22
22
  requirement: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 0.0.6
27
27
  type: :runtime
28
28
  prerelease: false
29
29
  version_requirements: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: 0.0.6
34
- - !ruby/object:Gem::Dependency
35
- name: octokit
36
- requirement: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - '='
39
- - !ruby/object:Gem::Version
40
- version: 2.7.0
41
- type: :runtime
42
- prerelease: false
43
- version_requirements: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - '='
46
- - !ruby/object:Gem::Version
47
- version: 2.7.0
48
34
  - !ruby/object:Gem::Dependency
49
35
  name: ansi
50
36
  requirement: !ruby/object:Gem::Requirement
51
37
  requirements:
52
- - - ~>
38
+ - - "~>"
53
39
  - !ruby/object:Gem::Version
54
40
  version: '1.4'
55
41
  type: :runtime
56
42
  prerelease: false
57
43
  version_requirements: !ruby/object:Gem::Requirement
58
44
  requirements:
59
- - - ~>
45
+ - - "~>"
60
46
  - !ruby/object:Gem::Version
61
47
  version: '1.4'
62
48
  - !ruby/object:Gem::Dependency
63
49
  name: unf
64
50
  requirement: !ruby/object:Gem::Requirement
65
51
  requirements:
66
- - - ~>
52
+ - - "~>"
67
53
  - !ruby/object:Gem::Version
68
54
  version: '0.1'
69
55
  type: :runtime
70
56
  prerelease: false
71
57
  version_requirements: !ruby/object:Gem::Requirement
72
58
  requirements:
73
- - - ~>
59
+ - - "~>"
74
60
  - !ruby/object:Gem::Version
75
61
  version: '0.1'
76
62
  - !ruby/object:Gem::Dependency
77
63
  name: middleman
78
64
  requirement: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - ~>
66
+ - - "~>"
81
67
  - !ruby/object:Gem::Version
82
68
  version: 3.3.5
83
69
  type: :runtime
84
70
  prerelease: false
85
71
  version_requirements: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - ~>
73
+ - - "~>"
88
74
  - !ruby/object:Gem::Version
89
75
  version: 3.3.5
90
76
  - !ruby/object:Gem::Dependency
91
77
  name: middleman-syntax
92
78
  requirement: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - ~>
80
+ - - "~>"
95
81
  - !ruby/object:Gem::Version
96
82
  version: '2.0'
97
83
  type: :runtime
98
84
  prerelease: false
99
85
  version_requirements: !ruby/object:Gem::Requirement
100
86
  requirements:
101
- - - ~>
87
+ - - "~>"
102
88
  - !ruby/object:Gem::Version
103
89
  version: '2.0'
104
90
  - !ruby/object:Gem::Dependency
105
91
  name: redcarpet
106
92
  requirement: !ruby/object:Gem::Requirement
107
93
  requirements:
108
- - - ~>
94
+ - - "~>"
109
95
  - !ruby/object:Gem::Version
110
96
  version: 3.2.3
111
97
  type: :runtime
112
98
  prerelease: false
113
99
  version_requirements: !ruby/object:Gem::Requirement
114
100
  requirements:
115
- - - ~>
101
+ - - "~>"
116
102
  - !ruby/object:Gem::Version
117
103
  version: 3.2.3
118
104
  - !ruby/object:Gem::Dependency
@@ -133,140 +119,140 @@ dependencies:
133
119
  name: anemone
134
120
  requirement: !ruby/object:Gem::Requirement
135
121
  requirements:
136
- - - '>='
122
+ - - ">="
137
123
  - !ruby/object:Gem::Version
138
124
  version: '0'
139
125
  type: :runtime
140
126
  prerelease: false
141
127
  version_requirements: !ruby/object:Gem::Requirement
142
128
  requirements:
143
- - - '>='
129
+ - - ">="
144
130
  - !ruby/object:Gem::Version
145
131
  version: '0'
146
132
  - !ruby/object:Gem::Dependency
147
133
  name: css_parser
148
134
  requirement: !ruby/object:Gem::Requirement
149
135
  requirements:
150
- - - '>='
136
+ - - ">="
151
137
  - !ruby/object:Gem::Version
152
138
  version: '0'
153
139
  type: :runtime
154
140
  prerelease: false
155
141
  version_requirements: !ruby/object:Gem::Requirement
156
142
  requirements:
157
- - - '>='
143
+ - - ">="
158
144
  - !ruby/object:Gem::Version
159
145
  version: '0'
160
146
  - !ruby/object:Gem::Dependency
161
147
  name: puma
162
148
  requirement: !ruby/object:Gem::Requirement
163
149
  requirements:
164
- - - '>='
150
+ - - ">="
165
151
  - !ruby/object:Gem::Version
166
152
  version: '0'
167
153
  type: :runtime
168
154
  prerelease: false
169
155
  version_requirements: !ruby/object:Gem::Requirement
170
156
  requirements:
171
- - - '>='
157
+ - - ">="
172
158
  - !ruby/object:Gem::Version
173
159
  version: '0'
174
160
  - !ruby/object:Gem::Dependency
175
161
  name: rack-rewrite
176
162
  requirement: !ruby/object:Gem::Requirement
177
163
  requirements:
178
- - - '>='
164
+ - - ">="
179
165
  - !ruby/object:Gem::Version
180
166
  version: '0'
181
167
  type: :runtime
182
168
  prerelease: false
183
169
  version_requirements: !ruby/object:Gem::Requirement
184
170
  requirements:
185
- - - '>='
171
+ - - ">="
186
172
  - !ruby/object:Gem::Version
187
173
  version: '0'
188
174
  - !ruby/object:Gem::Dependency
189
175
  name: therubyracer
190
176
  requirement: !ruby/object:Gem::Requirement
191
177
  requirements:
192
- - - '>='
178
+ - - ">="
193
179
  - !ruby/object:Gem::Version
194
180
  version: '0'
195
181
  type: :runtime
196
182
  prerelease: false
197
183
  version_requirements: !ruby/object:Gem::Requirement
198
184
  requirements:
199
- - - '>='
185
+ - - ">="
200
186
  - !ruby/object:Gem::Version
201
187
  version: '0'
202
188
  - !ruby/object:Gem::Dependency
203
189
  name: git
204
190
  requirement: !ruby/object:Gem::Requirement
205
191
  requirements:
206
- - - ~>
192
+ - - "~>"
207
193
  - !ruby/object:Gem::Version
208
194
  version: 1.2.8
209
195
  type: :runtime
210
196
  prerelease: false
211
197
  version_requirements: !ruby/object:Gem::Requirement
212
198
  requirements:
213
- - - ~>
199
+ - - "~>"
214
200
  - !ruby/object:Gem::Version
215
201
  version: 1.2.8
216
202
  - !ruby/object:Gem::Dependency
217
203
  name: license_finder
218
204
  requirement: !ruby/object:Gem::Requirement
219
205
  requirements:
220
- - - '>='
206
+ - - ">="
221
207
  - !ruby/object:Gem::Version
222
208
  version: '0'
223
209
  type: :development
224
210
  prerelease: false
225
211
  version_requirements: !ruby/object:Gem::Requirement
226
212
  requirements:
227
- - - '>='
213
+ - - ">="
228
214
  - !ruby/object:Gem::Version
229
215
  version: '0'
230
216
  - !ruby/object:Gem::Dependency
231
217
  name: pry-byebug
232
218
  requirement: !ruby/object:Gem::Requirement
233
219
  requirements:
234
- - - '>='
220
+ - - ">="
235
221
  - !ruby/object:Gem::Version
236
222
  version: '0'
237
223
  type: :development
238
224
  prerelease: false
239
225
  version_requirements: !ruby/object:Gem::Requirement
240
226
  requirements:
241
- - - '>='
227
+ - - ">="
242
228
  - !ruby/object:Gem::Version
243
229
  version: '0'
244
230
  - !ruby/object:Gem::Dependency
245
231
  name: rake
246
232
  requirement: !ruby/object:Gem::Requirement
247
233
  requirements:
248
- - - '>='
234
+ - - ">="
249
235
  - !ruby/object:Gem::Version
250
236
  version: '0'
251
237
  type: :development
252
238
  prerelease: false
253
239
  version_requirements: !ruby/object:Gem::Requirement
254
240
  requirements:
255
- - - '>='
241
+ - - ">="
256
242
  - !ruby/object:Gem::Version
257
243
  version: '0'
258
244
  - !ruby/object:Gem::Dependency
259
245
  name: rspec
260
246
  requirement: !ruby/object:Gem::Requirement
261
247
  requirements:
262
- - - '>='
248
+ - - ">="
263
249
  - !ruby/object:Gem::Version
264
250
  version: '0'
265
251
  type: :development
266
252
  prerelease: false
267
253
  version_requirements: !ruby/object:Gem::Requirement
268
254
  requirements:
269
- - - '>='
255
+ - - ">="
270
256
  - !ruby/object:Gem::Version
271
257
  version: '0'
272
258
  description: A command line utility to be run in Book repositories to stitch together
@@ -277,21 +263,19 @@ executables:
277
263
  extensions: []
278
264
  extra_rdoc_files: []
279
265
  files:
280
- - install_bin/bookbinder
281
- - lib/bookbinder.rb
282
266
  - lib/bookbinder/app_fetcher.rb
283
267
  - lib/bookbinder/archive.rb
284
268
  - lib/bookbinder/archive_menu_configuration.rb
285
269
  - lib/bookbinder/artifact_namer.rb
286
- - lib/bookbinder/book.rb
287
270
  - lib/bookbinder/cf_command_runner.rb
288
271
  - lib/bookbinder/cli.rb
289
272
  - lib/bookbinder/code_example_reader.rb
290
273
  - lib/bookbinder/colorizer.rb
291
274
  - lib/bookbinder/command_runner.rb
292
275
  - lib/bookbinder/command_validator.rb
293
- - lib/bookbinder/commands/bind.rb
276
+ - lib/bookbinder/commands/bind/bind_options.rb
294
277
  - lib/bookbinder/commands/bind/directory_preparer.rb
278
+ - lib/bookbinder/commands/bind.rb
295
279
  - lib/bookbinder/commands/bookbinder_command.rb
296
280
  - lib/bookbinder/commands/build_and_push_tarball.rb
297
281
  - lib/bookbinder/commands/chain.rb
@@ -306,8 +290,8 @@ files:
306
290
  - lib/bookbinder/config/aws_credentials.rb
307
291
  - lib/bookbinder/config/bind_config_factory.rb
308
292
  - lib/bookbinder/config/cf_credentials.rb
309
- - lib/bookbinder/config/local_bind_configuration.rb
310
293
  - lib/bookbinder/config/remote_bind_configuration.rb
294
+ - lib/bookbinder/config/section_config.rb
311
295
  - lib/bookbinder/configuration.rb
312
296
  - lib/bookbinder/configuration_fetcher.rb
313
297
  - lib/bookbinder/configuration_validator.rb
@@ -317,27 +301,27 @@ files:
317
301
  - lib/bookbinder/distributor.rb
318
302
  - lib/bookbinder/dita_command_creator.rb
319
303
  - lib/bookbinder/dita_html_to_middleman_formatter.rb
320
- - lib/bookbinder/dita_preprocessor.rb
321
- - lib/bookbinder/dita_section_gatherer_factory.rb
322
304
  - lib/bookbinder/errors/cli_error.rb
305
+ - lib/bookbinder/errors/programmer_mistake.rb
323
306
  - lib/bookbinder/git_accessor.rb
324
- - lib/bookbinder/git_client.rb
325
- - lib/bookbinder/git_hub_repository.rb
326
307
  - lib/bookbinder/html_document_manipulator.rb
327
308
  - lib/bookbinder/ingest/cloner_factory.rb
328
309
  - lib/bookbinder/ingest/destination_directory.rb
329
- - lib/bookbinder/ingest/git_hub_repository_cloner.rb
310
+ - lib/bookbinder/ingest/git_cloner.rb
330
311
  - lib/bookbinder/ingest/local_filesystem_cloner.rb
312
+ - lib/bookbinder/ingest/repo_identifier.rb
331
313
  - lib/bookbinder/ingest/working_copy.rb
332
- - lib/bookbinder/local_dita_section_gatherer.rb
333
314
  - lib/bookbinder/local_file_system_accessor.rb
334
315
  - lib/bookbinder/middleman_runner.rb
335
316
  - lib/bookbinder/post_production/sitemap_writer.rb
317
+ - lib/bookbinder/preprocessing/copy_to_site_gen_dir.rb
318
+ - lib/bookbinder/preprocessing/dita_preprocessor.rb
319
+ - lib/bookbinder/preprocessing/preprocessor.rb
336
320
  - lib/bookbinder/pusher.rb
337
- - lib/bookbinder/remote_dita_section_gatherer.rb
338
321
  - lib/bookbinder/remote_yaml_credential_provider.rb
339
322
  - lib/bookbinder/repositories/command_repository.rb
340
323
  - lib/bookbinder/repositories/section_repository.rb
324
+ - lib/bookbinder/repositories/section_repository_factory.rb
341
325
  - lib/bookbinder/server_director.rb
342
326
  - lib/bookbinder/shell_out.rb
343
327
  - lib/bookbinder/sheller.rb
@@ -345,36 +329,36 @@ files:
345
329
  - lib/bookbinder/sitemap_generator.rb
346
330
  - lib/bookbinder/spider.rb
347
331
  - lib/bookbinder/stabilimentum.rb
348
- - lib/bookbinder/streams/switchable_stdout_and_red_stderr.rb
332
+ - lib/bookbinder/streams/colorized_stream.rb
349
333
  - lib/bookbinder/subnav_formatter.rb
350
334
  - lib/bookbinder/terminal.rb
335
+ - lib/bookbinder/time_fetcher.rb
351
336
  - lib/bookbinder/validation_checkers/archive_menu_checker.rb
352
- - lib/bookbinder/validation_checkers/config_version_checker.rb
353
337
  - lib/bookbinder/validation_checkers/dita_section_checker.rb
354
338
  - lib/bookbinder/validation_checkers/duplicate_section_name_checker.rb
355
339
  - lib/bookbinder/validation_checkers/repository_name_presence_checker.rb
356
340
  - lib/bookbinder/validation_checkers/required_keys_checker.rb
357
341
  - lib/bookbinder/values/blue_green_app.rb
358
342
  - lib/bookbinder/values/cf_routes.rb
359
- - lib/bookbinder/values/code_example.rb
360
- - lib/bookbinder/values/dita_section.rb
361
343
  - lib/bookbinder/values/output_locations.rb
362
344
  - lib/bookbinder/values/section.rb
363
345
  - lib/bookbinder/values/subnav.rb
364
346
  - lib/bookbinder/values/user_message.rb
365
347
  - lib/bookbinder/yaml_loader.rb
348
+ - lib/bookbinder.rb
349
+ - template_app/app.rb
350
+ - template_app/config.ru
351
+ - template_app/Gemfile
352
+ - template_app/Gemfile.lock
353
+ - template_app/lib/rack_static.rb
354
+ - template_app/lib/vienna_application.rb
366
355
  - master_middleman/archive_drop_down_menu.rb
367
356
  - master_middleman/bookbinder_helpers.rb
368
357
  - master_middleman/config.rb
369
358
  - master_middleman/quicklinks_renderer.rb
370
359
  - master_middleman/submodule_aware_assets.rb
371
- - template_app/Gemfile
372
- - template_app/Gemfile.lock
373
- - template_app/app.rb
374
- - template_app/config.ru
375
- - template_app/lib/rack_static.rb
376
- - template_app/lib/vienna_application.rb
377
- homepage: https://github.com/cloudfoundry-incubator/bookbinder
360
+ - install_bin/bookbinder
361
+ homepage: https://github.com/pivotal-cf/bookbinder
378
362
  licenses:
379
363
  - MIT
380
364
  metadata: {}
@@ -384,17 +368,17 @@ require_paths:
384
368
  - lib
385
369
  required_ruby_version: !ruby/object:Gem::Requirement
386
370
  requirements:
387
- - - '>='
371
+ - - "~>"
388
372
  - !ruby/object:Gem::Version
389
- version: '0'
373
+ version: '2.0'
390
374
  required_rubygems_version: !ruby/object:Gem::Requirement
391
375
  requirements:
392
- - - '>='
376
+ - - ">="
393
377
  - !ruby/object:Gem::Version
394
378
  version: '0'
395
379
  requirements: []
396
380
  rubyforge_project:
397
- rubygems_version: 2.4.2
381
+ rubygems_version: 2.0.14
398
382
  signing_key:
399
383
  specification_version: 4
400
384
  summary: Markdown to Rackup application documentation generator