Class: Fastlane::Actions::CertAction

Inherits:
Object
  • Object
show all
Defined in:
lib/fastlane/actions/cert.rb

Class Method Summary collapse

Class Method Details

.run(params) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/fastlane/actions/cert.rb', line 9

def self.run(params)
  require 'cert'
  require 'cert/options'

  return if Helper.test?

  Dir.chdir(FastlaneFolder.path || Dir.pwd) do
    # This should be executed in the fastlane folder

    values = params.first
    unless values.kind_of?Hash
      # Old syntax
      values = {}
      params.each do |val|
        values[val] = true
      end
    end

    Cert.config = FastlaneCore::Configuration.create(Cert::Options.available_options, (values || {}))

    Cert::CertRunner.run
    cert_file_path = ENV["CER_FILE_PATH"]
    certificate_id = ENV["CER_CERTIFICATE_ID"]
    Actions.lane_context[SharedValues::CERT_FILE_PATH] = cert_file_path
    Actions.lane_context[SharedValues::CERT_CERTIFICATE_ID] = certificate_id

    Helper.log.info("Use signing certificate '#{certificate_id}' from now on!".green)

    ENV["SIGH_CERTIFICATE_ID"] = certificate_id
  end
end