class OpenShift::CartridgeTools::Diy
Constants
- TEMPLATE_DIR
Public Class Methods
git_keep(directory_name)
click to toggle source
# File lib/openshift/cartridge_tools/diy.rb, line 62 def self.git_keep(directory_name) Dir.chdir(directory_name) do FileUtils.touch('env/.gitkeep') FileUtils.touch('configuration/etc/conf.d/.gitkeep') FileUtils.touch('hooks/.gitkeep') FileUtils.touch('usr/.gitkeep') end end
init_cartridge_dir(directory_name)
click to toggle source
# File lib/openshift/cartridge_tools/diy.rb, line 10 def self.init_cartridge_dir(directory_name) FileUtils.mkdir_p(directory_name) Dir.chdir(directory_name) do ['bin', 'configuration/etc/conf.d', 'env', 'hooks', 'metadata', 'usr'].each do |f| FileUtils.mkdir_p(f) end end end
parse_bin(directory_name, options={})
click to toggle source
# File lib/openshift/cartridge_tools/diy.rb, line 19 def self.parse_bin(directory_name, options={}) Dir.chdir(directory_name) do control_template = ERB.new(File.read(File.join(TEMPLATE_DIR, 'bin/control.erb'))) File.open('bin/control', 'w') { |f| f.write(control_template.result(binding)) } FileUtils.chmod(0755, 'bin/control') setup_template = ERB.new(File.read(File.join(TEMPLATE_DIR, 'bin/setup.erb'))) File.open('bin/setup', 'w') { |f| f.write(setup_template.result(binding)) } FileUtils.chmod(0755, 'bin/setup') end end
parse_docs(directory_name, options={})
click to toggle source
# File lib/openshift/cartridge_tools/diy.rb, line 30 def self.parse_docs(directory_name, options={}) Dir.chdir(directory_name) do FileUtils.cp(File.join(TEMPLATE_DIR, 'COPYRIGHT'), '.') FileUtils.cp(File.join(TEMPLATE_DIR, 'LICENSE'), '.') File.open('README.md', 'w') { |f| f.write("#{options[:short_name].capitalize} OpenShift Cartridge") } end end
parse_manifest(directory_name, options={})
click to toggle source
# File lib/openshift/cartridge_tools/diy.rb, line 45 def self.parse_manifest(directory_name, options={}) Dir.chdir(directory_name) do manifest = YAML::load_file(File.join(TEMPLATE_DIR, 'metadata', 'manifest.yml')) manifest.merge!({ 'Name' => options[:short_name], 'Cartridge-Short-Name' => options[:short_name].upcase, 'Version' => options[:version], 'Cartridge-Version' => '0.0.1', 'Compatible-Versions' => [], 'Cart-Data' => [], 'Provides' => [ options[:short_name], "#{options[:short_name]}-#{options[:version]}"] }) File.write('metadata/manifest.yml', YAML::dump(manifest)) FileUtils.cp(File.join(TEMPLATE_DIR, 'metadata/managed_files.yml'), 'metadata/') end end
parse_spec(directory_name, options={})
click to toggle source
# File lib/openshift/cartridge_tools/diy.rb, line 38 def self.parse_spec(directory_name, options={}) Dir.chdir(directory_name) do spec_template = ERB.new(File.read(File.join(TEMPLATE_DIR, 'openshift-diy-cartridge.spec.erb'))) File.open("#{directory_name}.spec", 'w') { |f| f.write(spec_template.result(binding)) } end end