Class: ReleaseInvoker

Inherits:
Object show all
Defined in:
lib/ceedling/release_invoker.rb

Instance Method Summary collapse

Instance Method Details

#artifactinate(*files) ⇒ Object



22
23
24
25
26
# File 'lib/ceedling/release_invoker.rb', line 22

def artifactinate( *files )
  files.flatten.each do |file|
    @file_wrapper.cp( file, @configurator.project_release_artifacts_path ) if @file_wrapper.exist?( file )
  end
end

#convert_libraries_to_arguments(libraries) ⇒ Object



28
29
30
31
32
33
34
# File 'lib/ceedling/release_invoker.rb', line 28

def convert_libraries_to_arguments(libraries)
  args = ((libraries || []) + ((defined? LIBRARIES_SYSTEM) ? LIBRARIES_SYSTEM : [])).flatten
  if (defined? LIBRARIES_FLAG)
    args.map! {|v| LIBRARIES_FLAG.gsub(/\$\{1\}/, v) }
  end
  return args
end

#get_library_paths_to_argumentsObject



36
37
38
39
40
41
42
# File 'lib/ceedling/release_invoker.rb', line 36

def get_library_paths_to_arguments()
  paths = (defined? PATHS_LIBRARIES) ? (PATHS_LIBRARIES || []).clone : []
  if (defined? LIBRARIES_PATH_FLAG)
    paths.map! {|v| LIBRARIES_PATH_FLAG.gsub(/\$\{1\}/, v) }
  end
  return paths
end

#setup_and_invoke_objects(files) ⇒ Object



16
17
18
19
20
# File 'lib/ceedling/release_invoker.rb', line 16

def setup_and_invoke_objects( files )
  objects = @file_path_utils.form_release_build_objects_filelist( files )
  @task_invoker.invoke_release_objects( objects )
  return objects
end

#sort_objects_and_libraries(both) ⇒ Object



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/ceedling/release_invoker.rb', line 44

def sort_objects_and_libraries(both)
  extension = if ((defined? EXTENSION_SUBPROJECTS) && (defined? EXTENSION_LIBRARIES))
    extension_libraries = if (EXTENSION_LIBRARIES.class == Array)
                            EXTENSION_LIBRARIES.join(")|(?:\\")
                          else
                            EXTENSION_LIBRARIES
                          end
    "(?:\\#{EXTENSION_SUBPROJECTS})|(?:\\#{extension_libraries})"
  elsif (defined? EXTENSION_SUBPROJECTS)
    "\\#{EXTENSION_SUBPROJECTS}"
  elsif (defined? EXTENSION_LIBRARIES)
    if (EXTENSION_LIBRARIES.class == Array)
      "(?:\\#{EXTENSION_LIBRARIES.join(")|(?:\\")})"
    else
      "\\#{EXTENSION_LIBRARIES}"
    end
  else
    "\\.LIBRARY"
  end
  sorted_objects = both.group_by {|v| v.match(/.+#{extension}$/) ? :libraries : :objects }
  libraries = sorted_objects[:libraries] || []
  objects   = sorted_objects[:objects]   || []
  return objects, libraries
end