Class: ThemeCheck::Packager
- Inherits:
-
Object
- Object
- ThemeCheck::Packager
- Defined in:
- lib/theme_check/packager.rb
Constant Summary collapse
- ROOT =
File.('../../..', __FILE__)
- PACKAGING_DIR =
File.join(ROOT, 'packaging')
- BUILDS_DIR =
File.join(PACKAGING_DIR, 'builds', ThemeCheck::VERSION)
Instance Method Summary collapse
- #build_homebrew ⇒ Object
-
#initialize ⇒ Packager
constructor
A new instance of Packager.
Constructor Details
#initialize ⇒ Packager
Returns a new instance of Packager.
8 9 10 |
# File 'lib/theme_check/packager.rb', line 8 def initialize FileUtils.mkdir_p(BUILDS_DIR) end |
Instance Method Details
#build_homebrew ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/theme_check/packager.rb', line 12 def build_homebrew root_dir = File.join(PACKAGING_DIR, 'homebrew') build_path = File.join(BUILDS_DIR, "theme-check.rb") puts "\nBuilding Homebrew package" puts "Generating formula..." File.delete(build_path) if File.exist?(build_path) spec_contents = File.read(File.join(root_dir, 'theme_check.base.rb')) spec_contents = spec_contents.gsub('THEME_CHECK_VERSION', ThemeCheck::VERSION) puts "Grabbing sha256 checksum from Rubygems.org" require 'digest/sha2' require 'open-uri' gem_checksum = open("https://rubygems.org/downloads/theme-check-#{ThemeCheck::VERSION}.gem") do |io| Digest::SHA256.new.hexdigest(io.read) end puts "Got sha256 checksum for gem: #{gem_checksum}" spec_contents = spec_contents.gsub('THEME_CHECK_GEM_CHECKSUM', gem_checksum) puts "Writing generated formula\n To: #{build_path}\n\n" File.write(build_path, spec_contents) end |