diff options
author | Shinya Maeda <shinya@gitlab.com> | 2018-11-16 17:55:23 +0900 |
---|---|---|
committer | Shinya Maeda <shinya@gitlab.com> | 2018-11-16 17:55:23 +0900 |
commit | e46d328ac8d3166b82bacbf329acd319177b952e (patch) | |
tree | bcf4912609749d77bdb2586c3dae9948946ccd6c | |
parent | 350fe00b0a78dbf36d668e658cd5a87530829b3e (diff) | |
download | gitlab-ce-mr-pipelines.tar.gz |
Use big serialmr-pipelines
-rw-r--r-- | app/services/ci/create_merge_request_pipelines_service.rb | 9 | ||||
-rw-r--r-- | db/migrate/20181114155639_create_merge_request_pipelines_table.rb | 3 | ||||
-rw-r--r-- | db/schema.rb | 3 |
3 files changed, 9 insertions, 6 deletions
diff --git a/app/services/ci/create_merge_request_pipelines_service.rb b/app/services/ci/create_merge_request_pipelines_service.rb index 4b54139cc63..53a73dc9192 100644 --- a/app/services/ci/create_merge_request_pipelines_service.rb +++ b/app/services/ci/create_merge_request_pipelines_service.rb @@ -4,12 +4,17 @@ module Ci class CreateMergeRequestPipelinesService < BaseService def execute(source, **args, &block) return unless Feature.enabled?(:ci_merge_request_pipelines, default_enabled: true) + raise ArgumentError, 'ref must be specified' unless params[:ref] + + pipelines = [] find_merge_requests do |merge_request| - Ci::CreatePipelineService + pipelines << Ci::CreatePipelineService .new(merge_request.target_project, current_user, params) - .execute(source, args, merge_request: merge_request, &block) + .execute(source, **args, merge_request: merge_request, &block) end + + pipelines end private diff --git a/db/migrate/20181114155639_create_merge_request_pipelines_table.rb b/db/migrate/20181114155639_create_merge_request_pipelines_table.rb index 68b49b70e27..fc40ff51e5e 100644 --- a/db/migrate/20181114155639_create_merge_request_pipelines_table.rb +++ b/db/migrate/20181114155639_create_merge_request_pipelines_table.rb @@ -2,13 +2,12 @@ class CreateMergeRequestPipelinesTable < ActiveRecord::Migration DOWNTIME = false def change - create_table :merge_request_pipelines do |t| + create_table :merge_request_pipelines, id: :bigserial do |t| t.references :merge_request, null: false, index: true, foreign_key: { on_delete: :cascade } t.references :pipeline, null: false, index: true t.foreign_key :ci_pipelines, column: :pipeline_id, on_delete: :cascade t.datetime_with_timezone :created_at, null: false - t.datetime_with_timezone :updated_at, null: false end end end diff --git a/db/schema.rb b/db/schema.rb index b331ebdaadd..0f1249875d1 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -1198,11 +1198,10 @@ ActiveRecord::Schema.define(version: 20181114155639) do t.index ["pipeline_id"], name: "index_merge_request_metrics_on_pipeline_id", using: :btree end - create_table "merge_request_pipelines", force: :cascade do |t| + create_table "merge_request_pipelines", id: :bigserial, force: :cascade do |t| t.integer "merge_request_id", null: false t.integer "pipeline_id", null: false t.datetime_with_timezone "created_at", null: false - t.datetime_with_timezone "updated_at", null: false t.index ["merge_request_id"], name: "index_merge_request_pipelines_on_merge_request_id", using: :btree t.index ["pipeline_id"], name: "index_merge_request_pipelines_on_pipeline_id", using: :btree end |