| 
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73 | # File 'precheck/lib/precheck/commands_generator.rb', line 23
def run
  program :name, 'precheck'
  program :version, Fastlane::VERSION
  program :description, Precheck::DESCRIPTION
  program :help, "Author", "Joshua Liebowitz <[email protected]>, @taquitos"
  program :help, "Website", "https://fastlane.tools"
  program :help, "Documentation", "https://docs.fastlane.tools/actions/precheck/"
  program :help_formatter, FastlaneCore::HelpFormatter
  global_option("--verbose") { FastlaneCore::Globals.verbose = true }
  command :check_metadata do |c|
    c.syntax = "fastlane precheck"
    c.description = Precheck::DESCRIPTION
    FastlaneCore::CommanderGenerator.new.generate(Precheck::Options.available_options, command: c)
    c.action do |_args, options|
      Precheck.config = FastlaneCore::Configuration.create(Precheck::Options.available_options, options.__hash__)
      Precheck::Runner.new.run
    end
  end
  command :init do |c|
    c.syntax = "fastlane precheck init"
    c.description = "Creates a new Precheckfile for you"
    c.action do |args, options|
      containing = FastlaneCore::Helper.fastlane_enabled_folder_path
      path = File.join(containing, Precheck.precheckfile_name)
      UI.user_error!("Precheckfile already exists") if File.exist?(path)
      is_swift_fastfile = args.include?("swift")
      if is_swift_fastfile
        path = File.join(containing, Precheck.precheckfile_name + ".swift")
        UI.user_error!("Precheckfile.swift already exists") if File.exist?(path)
      end
      if is_swift_fastfile
        template = File.read("#{Precheck::ROOT}/lib/assets/PrecheckfileTemplate.swift")
      else
        template = File.read("#{Precheck::ROOT}/lib/assets/PrecheckfileTemplate")
      end
      File.write(path, template)
      UI.success("Successfully created '#{path}'. Open the file using a code editor.")
    end
  end
  default_command(:check_metadata)
  run!
end |