diff options
Diffstat (limited to 'db')
8 files changed, 58 insertions, 32 deletions
diff --git a/db/fixtures/development/14_builds.rb b/db/fixtures/development/14_builds.rb index 124704cb451..e65abe4ef77 100644 --- a/db/fixtures/development/14_builds.rb +++ b/db/fixtures/development/14_builds.rb @@ -1,6 +1,6 @@ class Gitlab::Seeder::Builds STAGES = %w[build notify_build test notify_test deploy notify_deploy] - + def initialize(project) @project = project end @@ -8,26 +8,26 @@ class Gitlab::Seeder::Builds def seed! pipelines.each do |pipeline| begin - build_create!(pipeline, name: 'build:linux', stage: 'build') - build_create!(pipeline, name: 'build:osx', stage: 'build') + build_create!(pipeline, name: 'build:linux', stage: 'build', status_event: :success) + build_create!(pipeline, name: 'build:osx', stage: 'build', status_event: :success) - build_create!(pipeline, name: 'slack post build', stage: 'notify_build') + build_create!(pipeline, name: 'slack post build', stage: 'notify_build', status_event: :success) - build_create!(pipeline, name: 'rspec:linux', stage: 'test') - build_create!(pipeline, name: 'rspec:windows', stage: 'test') - build_create!(pipeline, name: 'rspec:windows', stage: 'test') - build_create!(pipeline, name: 'rspec:osx', stage: 'test') - build_create!(pipeline, name: 'spinach:linux', stage: 'test') - build_create!(pipeline, name: 'spinach:osx', stage: 'test') - build_create!(pipeline, name: 'cucumber:linux', stage: 'test') - build_create!(pipeline, name: 'cucumber:osx', stage: 'test') + build_create!(pipeline, name: 'rspec:linux', stage: 'test', status_event: :success) + build_create!(pipeline, name: 'rspec:windows', stage: 'test', status_event: :success) + build_create!(pipeline, name: 'rspec:windows', stage: 'test', status_event: :success) + build_create!(pipeline, name: 'rspec:osx', stage: 'test', status_event: :success) + build_create!(pipeline, name: 'spinach:linux', stage: 'test', status: :pending) + build_create!(pipeline, name: 'spinach:osx', stage: 'test', status_event: :cancel) + build_create!(pipeline, name: 'cucumber:linux', stage: 'test', status_event: :run) + build_create!(pipeline, name: 'cucumber:osx', stage: 'test', status_event: :drop) - build_create!(pipeline, name: 'slack post test', stage: 'notify_test') + build_create!(pipeline, name: 'slack post test', stage: 'notify_test', status_event: :success) - build_create!(pipeline, name: 'staging', stage: 'deploy', environment: 'staging') - build_create!(pipeline, name: 'production', stage: 'deploy', environment: 'production', when: 'manual') + build_create!(pipeline, name: 'staging', stage: 'deploy', environment: 'staging', status_event: :success) + build_create!(pipeline, name: 'production', stage: 'deploy', environment: 'production', when: 'manual', status: :success) - commit_status_create!(pipeline, name: 'jenkins') + commit_status_create!(pipeline, name: 'jenkins', status: :success) print '.' rescue ActiveRecord::RecordInvalid @@ -48,7 +48,7 @@ class Gitlab::Seeder::Builds def build_create!(pipeline, opts = {}) attributes = build_attributes_for(pipeline, opts) - build = Ci::Build.new(attributes) + build = Ci::Build.create!(attributes) if opts[:name].start_with?('build') artifacts_cache_file(artifacts_archive_path) do |file| @@ -60,23 +60,20 @@ class Gitlab::Seeder::Builds end end - build.save! - build.update(status: build_status) - if %w(running success failed).include?(build.status) # We need to set build trace after saving a build (id required) build.trace = FFaker::Lorem.paragraphs(6).join("\n\n") end end - + def commit_status_create!(pipeline, opts = {}) attributes = commit_status_attributes_for(pipeline, opts) - GenericCommitStatus.create(attributes) + GenericCommitStatus.create!(attributes) end - + def commit_status_attributes_for(pipeline, opts) { name: 'test build', stage: 'test', stage_idx: stage_index(opts[:stage]), - ref: 'master', user: build_user, project: @project, pipeline: pipeline, + ref: 'master', tag: false, user: build_user, project: @project, pipeline: pipeline, created_at: Time.now, updated_at: Time.now }.merge(opts) end diff --git a/db/migrate/20160705055254_move_from_developers_can_merge_to_protected_branches_merge_access.rb b/db/migrate/20160705055254_move_from_developers_can_merge_to_protected_branches_merge_access.rb index fa93936ced7..1db0df92bec 100644 --- a/db/migrate/20160705055254_move_from_developers_can_merge_to_protected_branches_merge_access.rb +++ b/db/migrate/20160705055254_move_from_developers_can_merge_to_protected_branches_merge_access.rb @@ -14,7 +14,7 @@ class MoveFromDevelopersCanMergeToProtectedBranchesMergeAccess < ActiveRecord::M def up execute <<-HEREDOC INSERT into protected_branch_merge_access_levels (protected_branch_id, access_level, created_at, updated_at) - SELECT id, (CASE WHEN developers_can_merge THEN 1 ELSE 0 END), now(), now() + SELECT id, (CASE WHEN developers_can_merge THEN 30 ELSE 40 END), now(), now() FROM protected_branches HEREDOC end @@ -23,7 +23,7 @@ class MoveFromDevelopersCanMergeToProtectedBranchesMergeAccess < ActiveRecord::M execute <<-HEREDOC UPDATE protected_branches SET developers_can_merge = TRUE WHERE id IN (SELECT protected_branch_id FROM protected_branch_merge_access_levels - WHERE access_level = 1); + WHERE access_level = 30); HEREDOC end end diff --git a/db/migrate/20160705055308_move_from_developers_can_push_to_protected_branches_push_access.rb b/db/migrate/20160705055308_move_from_developers_can_push_to_protected_branches_push_access.rb index 56f6159d1d8..5c3e189bb5b 100644 --- a/db/migrate/20160705055308_move_from_developers_can_push_to_protected_branches_push_access.rb +++ b/db/migrate/20160705055308_move_from_developers_can_push_to_protected_branches_push_access.rb @@ -14,7 +14,7 @@ class MoveFromDevelopersCanPushToProtectedBranchesPushAccess < ActiveRecord::Mig def up execute <<-HEREDOC INSERT into protected_branch_push_access_levels (protected_branch_id, access_level, created_at, updated_at) - SELECT id, (CASE WHEN developers_can_push THEN 1 ELSE 0 END), now(), now() + SELECT id, (CASE WHEN developers_can_push THEN 30 ELSE 40 END), now(), now() FROM protected_branches HEREDOC end @@ -23,7 +23,7 @@ class MoveFromDevelopersCanPushToProtectedBranchesPushAccess < ActiveRecord::Mig execute <<-HEREDOC UPDATE protected_branches SET developers_can_push = TRUE WHERE id IN (SELECT protected_branch_id FROM protected_branch_push_access_levels - WHERE access_level = 1); + WHERE access_level = 30); HEREDOC end end diff --git a/db/migrate/20160705055809_remove_developers_can_push_from_protected_branches.rb b/db/migrate/20160705055809_remove_developers_can_push_from_protected_branches.rb index f563f660ddf..52a9819c628 100644 --- a/db/migrate/20160705055809_remove_developers_can_push_from_protected_branches.rb +++ b/db/migrate/20160705055809_remove_developers_can_push_from_protected_branches.rb @@ -14,6 +14,6 @@ class RemoveDevelopersCanPushFromProtectedBranches < ActiveRecord::Migration end def down - add_column_with_default(:protected_branches, :developers_can_push, :boolean, default: false, null: false) + add_column_with_default(:protected_branches, :developers_can_push, :boolean, default: false, allow_null: false) end end diff --git a/db/migrate/20160705055813_remove_developers_can_merge_from_protected_branches.rb b/db/migrate/20160705055813_remove_developers_can_merge_from_protected_branches.rb index aa71e06d36e..4a7bde7f9f3 100644 --- a/db/migrate/20160705055813_remove_developers_can_merge_from_protected_branches.rb +++ b/db/migrate/20160705055813_remove_developers_can_merge_from_protected_branches.rb @@ -14,6 +14,6 @@ class RemoveDevelopersCanMergeFromProtectedBranches < ActiveRecord::Migration end def down - add_column_with_default(:protected_branches, :developers_can_merge, :boolean, default: false, null: false) + add_column_with_default(:protected_branches, :developers_can_merge, :boolean, default: false, allow_null: false) end end diff --git a/db/migrate/20160802010328_remove_builds_enable_index_on_projects.rb b/db/migrate/20160802010328_remove_builds_enable_index_on_projects.rb new file mode 100644 index 00000000000..5fd51cb65f1 --- /dev/null +++ b/db/migrate/20160802010328_remove_builds_enable_index_on_projects.rb @@ -0,0 +1,9 @@ +class RemoveBuildsEnableIndexOnProjects < ActiveRecord::Migration + include Gitlab::Database::MigrationHelpers + + DOWNTIME = false + + def change + remove_index :projects, column: :builds_enabled if index_exists?(:projects, :builds_enabled) + end +end diff --git a/db/migrate/20160804150737_add_timestamps_to_members_again.rb b/db/migrate/20160804150737_add_timestamps_to_members_again.rb new file mode 100644 index 00000000000..6691ba57fbb --- /dev/null +++ b/db/migrate/20160804150737_add_timestamps_to_members_again.rb @@ -0,0 +1,21 @@ +# rubocop:disable all +# 20141121133009_add_timestamps_to_members.rb was meant to ensure that all +# rows in the members table had created_at and updated_at set, following an +# error in a previous migration. This failed to set all rows in at least one +# case: https://gitlab.com/gitlab-org/gitlab-ce/issues/20568 +# +# Why this happened is lost in the mists of time, so repeat the SQL query +# without speculation, just in case more than one person was affected. +class AddTimestampsToMembersAgain < ActiveRecord::Migration + DOWNTIME = false + + def up + execute "UPDATE members SET created_at = NOW() WHERE created_at IS NULL" + execute "UPDATE members SET updated_at = NOW() WHERE updated_at IS NULL" + end + + def down + # no change + end + +end diff --git a/db/schema.rb b/db/schema.rb index 5b35a528e71..71980a6d51f 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20160726093600) do +ActiveRecord::Schema.define(version: 20160804150737) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -852,7 +852,6 @@ ActiveRecord::Schema.define(version: 20160726093600) do end add_index "projects", ["builds_enabled", "shared_runners_enabled"], name: "index_projects_on_builds_enabled_and_shared_runners_enabled", using: :btree - add_index "projects", ["builds_enabled"], name: "index_projects_on_builds_enabled", using: :btree add_index "projects", ["ci_id"], name: "index_projects_on_ci_id", using: :btree add_index "projects", ["created_at", "id"], name: "index_projects_on_created_at_and_id", using: :btree add_index "projects", ["creator_id"], name: "index_projects_on_creator_id", using: :btree |