Sha256: 75b5c758087594a6027def62333666d2cd8562255a92d7f67790f2450095bc48

Contents?: true

Size: 1.84 KB

Versions: 14

Compression:

Stored size: 1.84 KB

Contents

require 'cocoapods'

require_relative '../source/util/sh_util'

module OrmDev
  class Command
    class Update < Command
      self.summary = '更新本地插件pod仓库。'
      self.description = <<-DESC
          插件管理.
          更新本地插件pod仓库。
      DESC

      self.arguments = [
          CLAide::Argument.new('PATH', false)
      ]

      def self.options
        [
            ['--no-repo-update', 'Skip running `pod repo update` before install'],
        ].concat(super)
      end

      def initialize(argv)
        @podspec_file = argv.shift_argument
        @podspec_files = Pathname.pwd.children.select { |pn| pn.extname == '.podspec' }
        @repo_update = argv.flag?('repo-update')
        super
      end

      def validate!
        super
        if @podspec_file
          help! "podspec file at #{@podspec_file} does not exist" unless File.exist? @podspec_file
          @podspec_path = @podspec_file
        else
          raise Pod::Informative, 'No podspec file found, please specify one' unless @podspec_files.length > 0
          raise Pod::Informative, 'Multiple podspec file found, please specify one' unless @podspec_files.length == 1
          @podspec_path = @podspec_files.first
        end
      end

      def run
        super
        OrmDev::LogUtil.info '[插件管理] 更新Pod依赖库'.green
        @spec = Pod::Specification.from_file(@podspec_path)
        OrmDev::SHUtil.run_command("pod cache clean #{@spec.name} --all",'清除Pod缓存',false)
        Dir.chdir('Example') do
          pod_update_command = ''
          pod_update_command << "#{@spec.name}_SOURCE=1"
          pod_update_command << ' pod update'
          pod_update_command << ' --no-repo-update' unless @repo_update
          OrmDev::SHUtil.run_command(pod_update_command,'更新Pod依赖库',false)
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
ormdev-0.2.3 lib/ormdev/command/update.rb
ormdev-0.2.2 lib/ormdev/command/update.rb
ormdev-0.2.1 lib/ormdev/command/update.rb
ormdev-0.2.0 lib/ormdev/command/update.rb
ormdev-0.1.8 lib/ormdev/command/update.rb
ormdev-0.1.7 lib/ormdev/command/update.rb
ormdev-0.1.6 lib/ormdev/command/update.rb
ormdev-0.1.5 lib/ormdev/command/update.rb
ormdev-0.1.4 lib/ormdev/command/update.rb
ormdev-0.1.3 lib/ormdev/command/update.rb
ormdev-0.1.2 lib/ormdev/command/update.rb
ormdev-0.1.1 lib/ormdev/command/update.rb
ormdev-0.1.0 lib/ormdev/command/update.rb
ormdev-0.0.9 lib/ormdev/command/update.rb