Sha256: 185246307a90896ea6a89889799e9e7c2d0d16bdc060fc3ae95103a93cc2d2ff

Contents?: true

Size: 1.18 KB

Versions: 658

Compression:

Stored size: 1.18 KB

Contents

require 'shellwords'

require_relative '../module'
require_relative '../generators/build_command_generator'

module Gym
  class XcodebuildFixes
    class << self
      # Determine IPAs for the Watch App which aren't inside of a containing
      # iOS App and removes them.
      #
      # In the future it may be nice to modify the plist file for the archive
      # itself so that it points to the correct IPA as well.
      #
      # This is a workaround for this bug
      # https://github.com/CocoaPods/CocoaPods/issues/4178
      def generic_archive_fix
        UI.verbose("Looking For Orphaned WatchKit2 Applications")

        Dir.glob("#{BuildCommandGenerator.archive_path}/Products/Applications/*.app").each do |app_path|
          if is_watchkit_app?(app_path)
            UI.verbose("Removing Orphaned WatchKit2 Application #{app_path}")
            FileUtils.rm_rf(app_path)
          end
        end
      end

      # Does this application have a WatchKit target
      def is_watchkit_app?(app_path)
        plist_path = "#{app_path}/Info.plist"
        `/usr/libexec/PlistBuddy -c 'Print :DTSDKName' #{plist_path.shellescape} 2>&1`.match(/^\s*watchos2\.\d+\s*$/) != nil
      end
    end
  end
end

Version data entries

658 entries across 658 versions & 5 rubygems

Version Path
fastlane-2.227.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.226.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.225.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.224.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.223.1 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.223.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.222.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.221.1 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.221.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.220.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.219.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.218.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-security-patched-2.216.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.217.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.216.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.215.1 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.215.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-mercafacil-2.214.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.214.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb
fastlane-2.213.0 gym/lib/gym/xcodebuild_fixes/generic_archive_fix.rb