fastlane/lib/fastlane/actions/pod_lib_lint.rb in fastlane-2.123.0.beta.20190508200056 vs fastlane/lib/fastlane/actions/pod_lib_lint.rb in fastlane-2.123.0.beta.20190509200030

- old
+ new

@@ -1,8 +1,9 @@ module Fastlane module Actions class PodLibLintAction < Action + # rubocop:disable Metrics/PerceivedComplexity def self.run(params) command = [] command << "bundle exec" if params[:use_bundle_exec] && shell_out_should_use_bundle_exec? command << "pod lib lint" @@ -18,10 +19,15 @@ command << "--use-libraries" if params[:use_libraries] command << "--use-modular-headers" if params[:use_modular_headers] command << "--fail-fast" if params[:fail_fast] command << "--private" if params[:private] command << "--quick" if params[:quick] + command << "--no-clean" if params[:no_clean] + command << "--no-subspecs" if params[:no_subspecs] + command << "--platforms=#{params[:platforms]}" if params[:platforms] + command << "--skip-import-validation" if params[:skip_import_validation] + command << "--skip-tests" if params[:skip_tests] result = Actions.sh(command.join(' ')) UI.success("Pod lib lint Successfully ⬆️ ") return result end @@ -93,11 +99,11 @@ description: "Lint uses static libraries to install the spec", type: Boolean, default_value: false, env_name: "FL_POD_LIB_LINT_USE_LIBRARIES"), FastlaneCore::ConfigItem.new(key: :use_modular_headers, - description: "Lint using modular libraries", + description: "Lint using modular libraries (available since cocoapods >= 1.6)", type: Boolean, default_value: false, env_name: "FL_POD_LIB_LINT_USE_MODULAR_HEADERS"), FastlaneCore::ConfigItem.new(key: :fail_fast, description: "Lint stops on the first failing platform or subspec", @@ -111,10 +117,35 @@ env_name: "FL_POD_LIB_LINT_PRIVATE"), FastlaneCore::ConfigItem.new(key: :quick, description: "Lint skips checks that would require to download and build the spec", type: Boolean, default_value: false, - env_name: "FL_POD_LIB_LINT_QUICK") + env_name: "FL_POD_LIB_LINT_QUICK"), + FastlaneCore::ConfigItem.new(key: :no_clean, + description: "Lint leaves the build directory intact for inspection", + type: Boolean, + default_value: false, + env_name: "FL_POD_LIB_LINT_NO_CLEAN"), + FastlaneCore::ConfigItem.new(key: :no_subspecs, + description: "Lint skips validation of subspecs", + type: Boolean, + default_value: false, + env_name: "FL_POD_LIB_LINT_NO_SUBSPECS"), + FastlaneCore::ConfigItem.new(key: :platforms, + description: "Lint against specific platforms (defaults to all platforms supported by "\ + "the podspec). Multiple platforms must be comma-delimited (available since cocoapods >= 1.6)", + optional: true, + env_name: "FL_POD_LIB_LINT_PLATFORMS"), + FastlaneCore::ConfigItem.new(key: :skip_import_validation, + description: "Lint skips validating that the pod can be imported (available since cocoapods >= 1.3)", + type: Boolean, + default_value: false, + env_name: "FL_POD_LIB_LINT_SKIP_IMPORT_VALIDATION"), + FastlaneCore::ConfigItem.new(key: :skip_tests, + description: "Lint skips building and running tests during validation (available since cocoapods >= 1.3)", + type: Boolean, + default_value: false, + env_name: "FL_POD_LIB_LINT_SKIP_TESTS") ] end def self.output end