class Kick
Public Class Methods
new()
click to toggle source
# File lib/kick.rb, line 7 def initialize file = File.join(Dir.pwd, 'kick.spec') @build_settings = OpenStruct.new(YAML.load_file(file)) puts @build_settings @base_name = @build_settings.base_name @provisioning_profile_in_developer_program_name = @build_settings.provisioning_profile_name @provisioning_profile_name = @provisioning_profile_in_developer_program_name.gsub(/ /, '_') end
Public Instance Methods
build()
click to toggle source
# File lib/kick.rb, line 33 def build self.clean self.update_mobileprovision computer_name = %x[scutil --get ComputerName].strip puts "computer_name: #{computer_name}" code_signing_identity = @build_settings.code_signing_identity[computer_name] scheme = @build_settings.scheme command_build = "ipa build -m #{@provisioning_profile_name}.mobileprovision -i \"#{code_signing_identity}\" -s \"#{scheme}\" --verbose" puts command_build system(command_build) puts 'build completed' self.info end
clean()
click to toggle source
# File lib/kick.rb, line 16 def clean system("rm #{@base_name}.ipa") system("rm #{@base_name}.app.dSYM.zip") system("rm #{@provisioning_profile_name}.mobileprovision") end
dist(distribution_list=nil, custom_notes=nil)
click to toggle source
# File lib/kick.rb, line 54 def dist(distribution_list=nil, custom_notes=nil) self.build notes = custom_notes || @build_settings.notes api_token = @build_settings.api_token team_token = @build_settings.team_token if distribution_list == nil distribution_list = @build_settings.distribution_list end command_deploy = "ipa distribute:testflight -a #{api_token} -T #{team_token} -m '#{notes}' -l #{distribution_list} --notify --verbose" system(command_deploy) puts 'deploy completed' self.info self.clean end
info()
click to toggle source
# File lib/kick.rb, line 28 def info command_info = "ipa info #{@base_name}.ipa" system(command_info) end
update_mobileprovision()
click to toggle source
# File lib/kick.rb, line 22 def update_mobileprovision developer_portal_team_id = @build_settings.developer_portal_team_id command_info = "ios profiles:download \"#{@provisioning_profile_in_developer_program_name}\" --team #{developer_portal_team_id}" system(command_info) end