class Composer
Public Class Methods
new()
click to toggle source
# File lib/build/composer.rb, line 3 def initialize end
Public Instance Methods
convert_env_args_to_env_hash(args)
click to toggle source
@param [hash] args @return [hash]
# File lib/build/composer.rb, line 44 def convert_env_args_to_env_hash(args) env_hash = {} # do first arg env_var = args[:env].split('=') env_hash[env_var[0].to_sym] = env_var[1] # do rest of args args.extras.each do |x| env_var = x.split('=') env_hash[env_var[0].to_sym] = env_var[1] end env_hash end
development(data_container_name, env_hash)
click to toggle source
@param [string] data_container_name @param [hash] env_hash
# File lib/build/composer.rb, line 9 def development(data_container_name, env_hash) puts '-- Installing Composer development dependencies' docker_command = get_docker_command(data_container_name, env_hash) + 'install --verbose --profile' puts '---- Running: ' << docker_command fail 'Composer development installation failed' unless system docker_command end
production(data_container_name, env_hash)
click to toggle source
@param [string] data_container_name @param [hash] env_hash
# File lib/build/composer.rb, line 18 def production(data_container_name, env_hash) puts '---- Installing Composer production dependencies' docker_command = get_docker_command(data_container_name, env_hash) + 'install --no-dev --optimize-autoloader --no-interaction --verbose --profile' puts '---- Running: ' << docker_command fail 'Composer production installation failed' unless system docker_command end
Private Instance Methods
get_docker_command(data_container_name, env_hash)
click to toggle source
@param [string] data_container_name @param [hash] env_hash @return [string]
# File lib/build/composer.rb, line 29 def get_docker_command(data_container_name, env_hash) puts '---- Launching Composer container' docker_env_vars = env_hash.map{|k,v| "#{k}=#{v}"}.join(' --env ') docker_command = "docker run --rm --volumes-from #{data_container_name} " if docker_env_vars.length > 5 docker_command << "--env #{docker_env_vars} " end docker_command << 'vjftw/composer ' docker_command end