class Fastlane::Helper::VersioningIosHelper
Constants
- XCODEPROJ_TEST
Public Class Methods
get_build_number_command(xcodeproj)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 33 def self.get_build_number_command(xcodeproj) path = self.get_xcodeproj_path(xcodeproj) return [ "cd", path, "&&", "agvtool", "what-version", "-terse" ].join(" ") end
get_version_command(xcodeproj)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 18 def self.get_version_command(xcodeproj) path = self.get_xcodeproj_path(xcodeproj) return [ "cd", path, "&&", "agvtool", "what-marketing-version", "-terse1" ].join(" ") end
get_xcodeproj(xcodeproj)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 8 def self.get_xcodeproj(xcodeproj) return Helper.test? ? XCODEPROJ_TEST : xcodeproj end
get_xcodeproj_path(xcodeproj)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 12 def self.get_xcodeproj_path(xcodeproj) project_file = self.get_xcodeproj(xcodeproj) path = project_file ? File.join(project_file, "..") : "." return File.expand_path(path).shellescape end
is_agv_enabled(xcodeproj)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 57 def self.is_agv_enabled(xcodeproj) # We do not want to run agvtool under tests to avoid # output about not having a project configured for AGV command_get = "#{self.get_version_command(xcodeproj)} > /dev/null 2>&1" unless Helper.test? agv_enabled = system(command_get) raise "Apple Generic Versioning (AGV) is not enabled." unless agv_enabled end end
parse_build_number(build_number)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 53 def self.parse_build_number(build_number) return build_number.to_s.strip end
parse_version(version)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 48 def self.parse_version(version) # @todo SemVer check return version.to_s.strip end
set_build_number_command(xcodeproj, build_number)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 40 def self.set_build_number_command(xcodeproj, build_number) path = self.get_xcodeproj_path(xcodeproj) agvtool_command = build_number ? "new-version -all #{self.parse_build_number(build_number)}" : "next-version -all" return [ "cd", path, "&&", "agvtool", agvtool_command ].join(" ") end
set_version_command(xcodeproj, version)
click to toggle source
# File lib/fastlane/plugin/versioning_ios/helper/versioning_ios_helper.rb, line 25 def self.set_version_command(xcodeproj, version) path = self.get_xcodeproj_path(xcodeproj) version = self.parse_version(version) return [ "cd", path, "&&", "agvtool", "new-marketing-version", version ].join(" ") end