Sha256: 3e751c682e61ebca7e122decde5ce766510ab71e73ad5ff99825663b77842b00

Contents?: true

Size: 1.21 KB

Versions: 2

Compression:

Stored size: 1.21 KB

Contents

module Hyla
  module Commands
    class Create < Command

      def self.process(args, options)
        destination = options[:destination] if check_mandatory_option?('--d / --destination', options[:destination])
        artefact_type = options[:artefact_type] if check_mandatory_option?('--a / --artefact_type', options[:artefact_type])
        type = options[:type] if check_mandatory_option?('--t / --type', options[:type])

        copy_artefact(type, artefact_type, destination)
      end

      #
      # Copy Artefact to Destination directory
      #
      def self.copy_artefact(type, artefact_type, destination)
        artefact_file_name = type + '_' + artefact_type + Configuration::ADOC_EXT
        source = [Configuration::samples, artefact_file_name] * '/'
        destination = File.expand_path(destination)

        FileUtils.cp(source, destination)

        Hyla::logger.info ">>   Artefact #{artefact_file_name} added to project #{destination}"

        case artefact_type
          when 'image','audio','video'
           source_dir = [Configuration::samples, artefact_type] * '/'
           FileUtils.cp_r(source_dir,destination)
        end
      end

    end # class Create
  end # module Commands
end # module Hyla

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
hyla-1.0.2 lib/hyla/commands/create.rb
hyla-1.0.1 lib/hyla/commands/create.rb