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