201 lines
		
	
	
		
			7.2 KiB
		
	
	
	
		
			Ruby
		
	
	
			
		
		
	
	
			201 lines
		
	
	
		
			7.2 KiB
		
	
	
	
		
			Ruby
		
	
	
# frozen_string_literal: true
 | 
						|
 | 
						|
require "fileutils"
 | 
						|
 | 
						|
require_relative "./.vuepress/process_file.rb"
 | 
						|
require_relative "./.vuepress/add_placeholders.rb"
 | 
						|
 | 
						|
$verbose = false
 | 
						|
 | 
						|
def verbose(message)
 | 
						|
  puts message if $verbose
 | 
						|
end
 | 
						|
 | 
						|
if Dir.exist?("docs") then
 | 
						|
    puts "➡️ Removing processed docs"
 | 
						|
    FileUtils.rm_rf("docs")
 | 
						|
end
 | 
						|
if Dir.exist?("addons/integrations") then
 | 
						|
    puts "➡️ Removing processed addons"
 | 
						|
    FileUtils.rm_rf("docs")
 | 
						|
end
 | 
						|
 | 
						|
puts "➡️ Migrating the introduction article"
 | 
						|
process_file(".", "introduction.md", "docs", "https://github.com/openhab/openhab-docs/blob/main/introduction.md")
 | 
						|
FileUtils.mv("docs/introduction.md", "docs/readme.md")
 | 
						|
 | 
						|
# puts "➡️ Migrating common images"
 | 
						|
# FileUtils.mkdir_p("docs/images")
 | 
						|
 | 
						|
puts "➡️ Migrating logos"
 | 
						|
FileUtils.cp_r("./images/addons", ".vuepress/public/logos")
 | 
						|
 | 
						|
puts "➡️ Migrating the Concepts section"
 | 
						|
Dir.glob("./concepts/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./concepts", file, "docs/concepts", "#{$docs_repo_root}/concepts/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images and diagrams"
 | 
						|
FileUtils.cp_r("./concepts/images", "docs/concepts")
 | 
						|
FileUtils.cp_r("./concepts/diagrams", "docs/concepts")
 | 
						|
 | 
						|
puts "➡️ Migrating the Installation section"
 | 
						|
Dir.glob("./installation/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  next if file == "designer.md"
 | 
						|
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./installation", file, "docs/installation",
 | 
						|
               "#{$docs_repo_root}/installation/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
FileUtils.cp_r("./installation/images", "docs/installation")
 | 
						|
 | 
						|
puts "➡️ Migrating the Tutorial section"
 | 
						|
Dir.glob("./tutorials/getting_started/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./tutorials/getting_started", file, "docs/tutorial",
 | 
						|
               "#{$docs_repo_root}/tutorials/getting_started/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
FileUtils.cp_r("./tutorials/getting_started/images", "docs/tutorial")
 | 
						|
 | 
						|
puts "➡️ Migrating the Configuration section"
 | 
						|
Dir.glob("./configuration/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  next if file == "transform.md" # Useless, copy the one from addons
 | 
						|
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./configuration", file, "docs/configuration",
 | 
						|
               "#{$docs_repo_root}/configuration/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
FileUtils.cp_r("./configuration/images", "docs/configuration")
 | 
						|
 | 
						|
puts "➡️ Migrating the Main UI section"
 | 
						|
Dir.glob("./mainui/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./mainui", file, "docs/mainui", "#{$docs_repo_root}/mainui/#{file}")
 | 
						|
end
 | 
						|
%w[developer settings].each do |subsection|
 | 
						|
  Dir.glob("./mainui/#{subsection}/*.md") do |path|
 | 
						|
    file = File.basename(path)
 | 
						|
    verbose "   ➡️ #{subsection}/#{file}"
 | 
						|
    process_file("./mainui/#{subsection}", file, "docs/mainui/#{subsection}",
 | 
						|
                  "#{$docs_repo_root}/mainui/#{subsection}/#{file}")
 | 
						|
  end
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
FileUtils.cp_r("./mainui/images", "docs/mainui")
 | 
						|
 | 
						|
puts "➡️ Migrating the Migration Tutorial section"
 | 
						|
Dir.glob("./configuration/migration/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./configuration/migration", file, "docs/configuration/migration",
 | 
						|
               "#{$docs_repo_root}/configuration/migration/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
# FileUtils.cp_r("./configuration/migration/images", "docs/configuration/migration/") // no images placed yet
 | 
						|
 | 
						|
puts "➡️ Migrating the Blockly Tutorial section"
 | 
						|
Dir.glob("./configuration/blockly/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./configuration/blockly", file, "docs/configuration/blockly",
 | 
						|
               "#{$docs_repo_root}/configuration/blockly/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
# FileUtils.cp_r("./configuration/blockly/images", "docs/configuration/blockly/") // no images placed yet
 | 
						|
 | 
						|
puts "➡️ Migrating the UI section"
 | 
						|
Dir.glob("./ui/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./ui", file, "docs/ui", "#{$docs_repo_root}/ui/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
FileUtils.cp_r("./ui/images", "docs/ui")
 | 
						|
 | 
						|
verbose "   ➡️ habpanel"
 | 
						|
FileUtils.mkdir_p("docs/ui/habpanel")
 | 
						|
process_file("./_addons_uis/habpanel/doc", "habpanel.md", "docs/ui/habpanel", "")
 | 
						|
verbose "      ➡️ images"
 | 
						|
if Dir.exist?("./_addons_uis/habpanel/doc/images")
 | 
						|
  FileUtils.cp_r("./_addons_uis/habpanel/doc/images",
 | 
						|
                 "docs/ui/habpanel")
 | 
						|
end
 | 
						|
 | 
						|
verbose "   ➡️ habot"
 | 
						|
FileUtils.mkdir_p("docs/ui/habot")
 | 
						|
process_file("./_addons_uis/habot", "readme.md", "docs/ui/habot", "")
 | 
						|
verbose "      ➡️ images"
 | 
						|
 | 
						|
verbose "   ➡️ components"
 | 
						|
FileUtils.mkdir_p("docs/ui/components")
 | 
						|
Dir.glob("./_addons_uis/org.openhab.ui/doc/components/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "    ➡️ #{file}"
 | 
						|
  process_file("./_addons_uis/org.openhab.ui/doc/components", file, "docs/ui/components", "https://github.com/openhab/openhab-webui/blob/main/bundles/org.openhab.ui/doc/components/#{file}")
 | 
						|
end
 | 
						|
verbose "      ➡️ images"
 | 
						|
if Dir.exist?("./_addons_uis/org.openhab.ui/doc/components/images")
 | 
						|
  FileUtils.cp_r("./_addons_uis/org.openhab.ui/doc/components/images",
 | 
						|
                 "docs/ui/components")
 | 
						|
end
 | 
						|
 | 
						|
puts "➡️ Migrating the Apps section"
 | 
						|
Dir.glob("./addons/uis/apps/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./addons/uis/apps", file, "docs/apps",
 | 
						|
               "#{$docs_repo_root}/addons/uis/apps/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
FileUtils.cp_r("./addons/uis/apps/images", "docs/apps")
 | 
						|
 | 
						|
puts "➡️ Migrating the Administration section"
 | 
						|
Dir.glob("./administration/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./administration", file, "docs/administration",
 | 
						|
               "#{$docs_repo_root}/administration/#{file}")
 | 
						|
end
 | 
						|
verbose "   ➡️ images"
 | 
						|
FileUtils.cp_r("./administration/images", "docs/administration")
 | 
						|
 | 
						|
puts "➡️ Migrating the Developer section"
 | 
						|
Dir.glob("./developers/*.md") do |path|
 | 
						|
  file = File.basename(path)
 | 
						|
  verbose "   ➡️ #{file}"
 | 
						|
  process_file("./developers", file, "docs/developer", "#{$docs_repo_root}/developer/#{file}")
 | 
						|
end
 | 
						|
%w[audio bindings ioservices legacy module-types osgi persistence transformations utils
 | 
						|
   ide].each do |subsection|
 | 
						|
  Dir.glob("./developers/#{subsection}/*.md") do |path|
 | 
						|
    file = File.basename(path)
 | 
						|
    verbose "   ➡️ #{subsection}/#{file}"
 | 
						|
    process_file("./developers/#{subsection}", file, "docs/developer/#{subsection}",
 | 
						|
                 "#{$docs_repo_root}/developer/#{subsection}/#{file}")
 | 
						|
  end
 | 
						|
end
 | 
						|
 | 
						|
verbose "   ➡️ images"
 | 
						|
FileUtils.cp_r("./developers/bindings/images", "docs/developer/bindings")
 | 
						|
FileUtils.cp_r("./developers/osgi/images", "docs/developer/osgi")
 | 
						|
FileUtils.cp_r("./developers/ide/images", "docs/developer/ide")
 | 
						|
 | 
						|
["addons"].each do |subsection|
 | 
						|
  Dir.glob("./developers/#{subsection}/*.md") do |path|
 | 
						|
    file = File.basename(path)
 | 
						|
    verbose "   ➡️ #{subsection}/#{file}"
 | 
						|
    process_file("./developers/#{subsection}", file, "docs/developer/#{subsection}",
 | 
						|
                 "#{$docs_repo_root}/developer/#{subsection}/#{file}")
 | 
						|
  end
 | 
						|
end
 | 
						|
 | 
						|
add_placeholder_pages()
 |