summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/services/ci/create_pipeline_service.rb9
1 files changed, 7 insertions, 2 deletions
diff --git a/app/services/ci/create_pipeline_service.rb b/app/services/ci/create_pipeline_service.rb
index 699b3e8555e..354e53a367c 100644
--- a/app/services/ci/create_pipeline_service.rb
+++ b/app/services/ci/create_pipeline_service.rb
@@ -36,7 +36,7 @@ module Ci
project: project,
current_user: current_user,
push_options: params[:push_options],
- **extra_options(**options))
+ **extra_options(options))
sequence = Gitlab::Ci::Pipeline::Chain::Sequence
.new(pipeline, command, SEQUENCE)
@@ -108,7 +108,12 @@ module Ci
end
# rubocop: enable CodeReuse/ActiveRecord
- def extra_options
+ def extra_options(options = {})
+ # In Ruby 2.4, even when options is empty, f(**options) doesn't work when f
+ # doesn't have any parameters. We reproduce the Ruby 2.5 behavior by
+ # checking explicitely that no arguments are given.
+ raise ArgumentError if options.any?
+
{} # overriden in EE
end
end