Class: PEM::CommandsGenerator

Inherits:
Object
  • Object
show all
Includes:
Commander::Methods
Defined in:
pem/lib/pem/commands_generator.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.startObject


14
15
16
# File 'pem/lib/pem/commands_generator.rb', line 14

def self.start
  self.new.run
end

Instance Method Details

#runObject


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
# File 'pem/lib/pem/commands_generator.rb', line 18

def run
  program :name, 'pem'
  program :version, Fastlane::VERSION
  program :description, 'CLI for \'PEM\' - Automatically generate and renew your push notification profiles'
  program :help, 'Author', 'Felix Krause <[email protected]krausefx.com>'
  program :help, 'Website', 'https://fastlane.tools'
  program :help, 'Documentation', 'https://docs.fastlane.tools/actions/pem/'
  program :help_formatter, :compact

  global_option('--verbose') { FastlaneCore::Globals.verbose = true }
  global_option('--env STRING[,STRING2]', String, 'Add environment(s) to use with `dotenv`')

  command :renew do |c|
    c.syntax = 'fastlane pem renew'
    c.description = 'Renews the certificate (in case it expired) and shows the path to the generated pem file'

    FastlaneCore::CommanderGenerator.new.generate(PEM::Options.available_options, command: c)

    c.action do |args, options|
      PEM.config = FastlaneCore::Configuration.create(PEM::Options.available_options, options.__hash__)
      PEM::Manager.start
    end
  end

  default_command(:renew)

  run!
end