Class: Gym::Runner

Inherits:
Object
  • Object
show all
Defined in:
gym/lib/gym/runner.rb

Printing out things collapse

Instance Method Summary collapse

Instance Method Details

Parameters:

  • An (Array)

    array containing all the parts of the command


66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File 'gym/lib/gym/runner.rb', line 66

def print_command(command, title)
  rows = command.map do |c|
    current = c.to_s.dup
    next unless current.length > 0

    match_default_parameter = current.match(/(-.*) '(.*)'/)
    if match_default_parameter
      # That's a default parameter, like `-project 'Name'`
      match_default_parameter[1, 2]
    else
      current.gsub!("| ", "\| ") # as the | will somehow break the terminal table
      [current, ""]
    end
  end

  puts(Terminal::Table.new(
         title: title.green,
         headings: ["Option", "Value"],
         rows: FastlaneCore::PrintTable.transform_output(rows.delete_if { |c| c.to_s.empty? })
  ))
end

#runString

Returns The path to the resulting ipa.

Returns:

  • (String)

    The path to the resulting ipa


16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# File 'gym/lib/gym/runner.rb', line 16

def run
  unless Gym.config[:skip_build_archive]
    build_app
  end
  verify_archive unless Gym.config[:skip_archive]

  return nil if Gym.config[:skip_archive]

  FileUtils.mkdir_p(File.expand_path(Gym.config[:output_directory]))

  # Determine platform to archive
  is_mac = Gym.project.mac? || Gym.building_mac_catalyst_for_mac?
  is_ios = !is_mac && (Gym.project.ios? || Gym.project.tvos? || Gym.project.watchos?)

  # Archive
  if is_ios
    fix_generic_archive unless Gym.project.watchos? # See https://github.com/fastlane/fastlane/pull/4325
    return BuildCommandGenerator.archive_path if Gym.config[:skip_package_ipa]

    package_app
    compress_and_move_dsym
    path = move_ipa
    move_manifest
    move_app_thinning
    move_app_thinning_size_report
    move_apps_folder
    move_asset_packs
    move_appstore_info
  elsif is_mac
    path = File.expand_path(Gym.config[:output_directory])
    compress_and_move_dsym
    if Gym.project.mac_app? || Gym.building_mac_catalyst_for_mac?
      path = copy_mac_app
      return path if Gym.config[:skip_package_pkg]

      package_app
      path = move_pkg
      move_appstore_info
      return path
    end
    copy_files_from_path(File.join(BuildCommandGenerator.archive_path, "Products/usr/local/bin/*")) if Gym.project.command_line_tool?
  end
  return path
end