@@ -20,6 +20,7 @@ TYPES_OVERVIEW_ERB = File.join(__dir__, 'references/types/overview.erb')
20
20
TYPES_OVERVIEW_MD = File . join ( TYPES_DIR , 'overview.md' )
21
21
UNIFIED_TYPE_ERB = File . join ( __dir__ , 'references/unified_type.erb' )
22
22
UNIFIED_TYPE_MD = File . join ( OUTPUT_DIR , 'type.md' )
23
+ SINGLE_TYPE_ERB = File . join ( __dir__ , 'references/types/single_type.erb' )
23
24
24
25
def render_erb ( erb_file , variables )
25
26
# Create a binding so only the variables we specify will be visible
@@ -332,6 +333,7 @@ namespace :references do
332
333
end
333
334
end
334
335
336
+ desc "Generate resource type references"
335
337
task :type do
336
338
FileUtils . mkdir_p ( TYPES_DIR )
337
339
@@ -385,6 +387,24 @@ namespace :references do
385
387
content = render_erb ( UNIFIED_TYPE_ERB , variables )
386
388
File . write ( UNIFIED_TYPE_MD , content )
387
389
puts "Generated #{ UNIFIED_TYPE_MD } "
390
+
391
+ # Based on https://github.com/puppetlabs/puppet-docs/blob/1a13be3fc6981baa8a96ff832ab090abc986830e/lib/puppet_references/puppet/type.rb#L78-L85
392
+ # one type per page
393
+ types . each do |type |
394
+ variables = {
395
+ title : "Resource Type: #{ type } " ,
396
+ type : type ,
397
+ sha : sha ,
398
+ now : now ,
399
+ canonical : "/puppet/latest/types/#{ type } .html" ,
400
+ body : render_resource_type ( type , type_data [ type ] )
401
+ }
402
+
403
+ content = render_erb ( SINGLE_TYPE_ERB , variables )
404
+ output = File . join ( TYPES_DIR , "#{ type } .md" )
405
+ File . write ( output , content )
406
+ puts "Generated #{ output } "
407
+ end
388
408
end
389
409
end
390
410
end
0 commit comments