class Fastlane::Actions::DeployFileProviderAction

Constants

RUN_VARIANT_ANDROID
RUN_VARIANT_IOS

Public Class Methods

authors() click to toggle source
# File lib/fastlane/plugin/deploy_file_provider/actions/deploy_file_provider_action.rb, line 35
def self.authors
  ["Kamil Krzyk, Przemysław Wośko"]
end
available_options() click to toggle source
# File lib/fastlane/plugin/deploy_file_provider/actions/deploy_file_provider_action.rb, line 39
def self.available_options
  [
    FastlaneCore::ConfigItem.new(key: :platform,
                               env_name: "DEPLOY_FOR_PLATFORM",
                               description: "For which platform files should be prepared",
                               is_string: true,
                               optional: false),

    FastlaneCore::ConfigItem.new(key: :apiCredentialsPath,
                               env_name: "API_CREDENTIALS_PATH",
                               description: "File that contains your OAuth2.0 data",
                               is_string: true,
                               optional: false),
    FastlaneCore::ConfigItem.new(key: :spreadsheetId,
                               env_name: "SPREADSHEET_ID",
                               description: "Your spreadsheet id",
                               is_string: true,
                               optional: false),
    FastlaneCore::ConfigItem.new(key: :spreadsheetApplicationName,
                               env_name: "SPREADSHEET_APPLICATION_NAME",
                               description: "Your google plafrom application name",
                               is_string: true,
                               optional: false),
    FastlaneCore::ConfigItem.new(key: :credentialsPath,
                               env_name: "SPREADSHEET_APPLICATION_NAME",
                               description: "Sphreadsheet OAuth2 credentials url",
                               is_string: true,
                               optional: false),

    FastlaneCore::ConfigItem.new(key: :metaDataRoot,
                               env_name: "METADATA_ROOT",
                               description: "Path to metadata root location",
                               is_string: true,
                               optional: false),
   FastlaneCore::ConfigItem.new(key: :json_key,
                               env_name: "STORE_CREDENTIALS",
                               description: "Location of file allowing you to access app/play store",
                               is_string: true,
                               optional: true),

   FastlaneCore::ConfigItem.new(key: :appVersion,
                              env_name: "APP_VERSION",
                              description: "App version",
                              is_string: true,
                              optional: true)
  ]
end
description() click to toggle source
# File lib/fastlane/plugin/deploy_file_provider/actions/deploy_file_provider_action.rb, line 31
def self.description
  "Prepares metadata files with structure ready for AppStore, PlayStore deploy"
end
is_supported?(platform) click to toggle source
# File lib/fastlane/plugin/deploy_file_provider/actions/deploy_file_provider_action.rb, line 87
def self.is_supported?(platform)
  platform == :android || platform == :ios
end
run(params) click to toggle source
# File lib/fastlane/plugin/deploy_file_provider/actions/deploy_file_provider_action.rb, line 11
def self.run(params)
  UI.message("DeployFileProvider plugin starts running!".yellow)

  # Init variables
  platform = "#{params[:platform]}".downcase

  # Checking for metadata changes
  country_MetaData = Provider::MetadataChangesProvider.fetchMetaDataChanges(params)

  # Running plugin for specific platform
  if platform.eql? RUN_VARIANT_ANDROID
    Helper::AndroidFileHelper.prepareFiles(params, country_MetaData)
  elsif platform.eql? RUN_VARIANT_IOS
    Helper::IOSFileHelper.prepareFiles(params, country_MetaData)
  else
    UI.message("Error: Unknown platform. Plugin won't run!".red)
    raise Exception, "Lane was stopped by script"
  end
end