class GrokCLI::Docker::WordPress::Init

Public Instance Methods

execute(hostname, machine_name) click to toggle source
# File lib/grok_cli/docker/wordpress/init.rb, line 8
def execute(hostname, machine_name)
  FileUtils.cp(template_path('docker-compose.yml'), '.')
  puts "Created docker-compose.yml"

  File.open('.grok-cli.yml', 'w') do |file|
    file.write(render_grok_cli(hostname, machine_name))
    puts "Created .grok-cli.yml"
  end

  File.open('.env', 'w') do |file|
    file.write(render_env)
    puts "Created .env"
  end

  File.open('wp-config.php', 'w') do |file|
    file.write(render_wp_config)
    puts "Created wp-config.php"
  end
end

Private Instance Methods

render_env() click to toggle source
# File lib/grok_cli/docker/wordpress/init.rb, line 43
def render_env
  @password = SecureRandom.hex

  template = File.read(template_path('.env.erb'))

  ERB.new(template).result(binding)
end
render_grok_cli(hostname, machine_name) click to toggle source
# File lib/grok_cli/docker/wordpress/init.rb, line 34
def render_grok_cli(hostname, machine_name)
  @hostname = hostname
  @machine_name = machine_name

  template = File.read(template_path('.grok-cli.yml.erb'))

  ERB.new(template).result(binding)
end
render_wp_config() click to toggle source
# File lib/grok_cli/docker/wordpress/init.rb, line 51
def render_wp_config
  @password = SecureRandom.hex

  template = File.read(template_path('wp-config.php.erb'))

  ERB.new(template).result(binding)
end
template_path(path) click to toggle source
# File lib/grok_cli/docker/wordpress/init.rb, line 30
def template_path(path)
  Pathname.new(File.dirname(__FILE__)).join('./../../../templates/wordpress').join(path)
end