class PreviewDocs
How to test:
export BUILDKITE_COMMIT="c8b601a225" export BUILDKITE_BUILD_CREATOR="zzak" export BUILDKITE_REPO="https://github.com/rails/rails.git" export BUILDKITE_BUILD_NUMBER="60" export BUILDKITE_BUILD_URL="https://buildkite.com/rails/docs-preview/builds/60" export BUILDKITE_BRANCH="preview_docs" export BUILDKITE_MESSAGE="commit message" export BUILDKITE_PULL_REQUEST="42" bundle exec rake preview_docs open preview/index.html
Attributes
Public Class Methods
# File tools/preview_docs.rb, line 21 def initialize @commit = link_to(EnvVars.sha[0, 7], "#{EnvVars.repo}/commit/#{EnvVars.sha}") @author = EnvVars.actor @build = link_to(EnvVars.build_number, EnvVars.build_url) @repo = link_to(EnvVars.repo_slug, "#{EnvVars.repo}") @branch = link_to(EnvVars.branch, "#{EnvVars.repo}/tree/#{EnvVars.branch}") @message = EnvVars.message || "n/a" @pull_request = EnvVars.pull_request ? link_to("##{EnvVars.pull_request}", "#{EnvVars.repo}/pull/#{EnvVars.pull_request}") : "n/a" end
Public Instance Methods
# File tools/preview_docs.rb, line 43 def escape(str) CGI.escapeHTML(str) end
# File tools/preview_docs.rb, line 39 def link_to(name, url) "<a href=\"#{escape(url)}\">#{escape(name)}</a>" end
# File tools/preview_docs.rb, line 31 def render(outdir) template = File.open("tools/preview_docs/index.html.erb").read result = ERB.new(template).result(binding) File.open("#{outdir}/index.html", "w") do |f| f.write result end end