summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Kumar Mohan <arunmohandm@gmail.com>2019-06-18 17:14:33 -0500
committerArun Kumar Mohan <arunmohandm@gmail.com>2019-06-18 17:14:33 -0500
commitd9abaab0c8fcc2f09c525a75093f7bb8858764ad (patch)
treece47e5c5a6b9f53940771604e79df15760f22865
parent6fa900547dbd30b0db0070f87dbeb4b05d485b9b (diff)
downloadgitlab-ce-d9abaab0c8fcc2f09c525a75093f7bb8858764ad.tar.gz
Disallow `NULL` values for `geo_nodes.primary` column
-rw-r--r--db/post_migrate/20190618171120_update_geo_nodes_primary.rb20
-rw-r--r--db/schema.rb4
2 files changed, 22 insertions, 2 deletions
diff --git a/db/post_migrate/20190618171120_update_geo_nodes_primary.rb b/db/post_migrate/20190618171120_update_geo_nodes_primary.rb
new file mode 100644
index 00000000000..dc9cfbda177
--- /dev/null
+++ b/db/post_migrate/20190618171120_update_geo_nodes_primary.rb
@@ -0,0 +1,20 @@
+# frozen_string_literal: true
+
+# See http://doc.gitlab.com/ce/development/migration_style_guide.html
+# for more information on how to write migrations for GitLab.
+
+class UpdateGeoNodesPrimary < ActiveRecord::Migration[5.1]
+ include Gitlab::Database::MigrationHelpers
+
+ DOWNTIME = false
+
+ def up
+ change_column_default(:geo_nodes, :primary, false)
+ change_column_null(:geo_nodes, :primary, false, false)
+ end
+
+ def down
+ change_column_default(:geo_nodes, :primary, nil)
+ change_column_null(:geo_nodes, :primary, true)
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index a9643d70966..5d48aa5087d 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,7 +10,7 @@
#
# It's strongly recommended that you check this file into your version control system.
-ActiveRecord::Schema.define(version: 20190613030606) do
+ActiveRecord::Schema.define(version: 20190618171120) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@@ -1391,7 +1391,7 @@ ActiveRecord::Schema.define(version: 20190613030606) do
end
create_table "geo_nodes", id: :serial, force: :cascade do |t|
- t.boolean "primary"
+ t.boolean "primary", default: false, null: false
t.integer "oauth_application_id"
t.boolean "enabled", default: true, null: false
t.string "access_key"