summaryrefslogtreecommitdiff
path: root/db/migrate
diff options
context:
space:
mode:
authorSean McGivern <sean@mcgivern.me.uk>2018-01-02 12:33:42 +0000
committerSean McGivern <sean@mcgivern.me.uk>2018-01-02 12:33:42 +0000
commit81dcd8ed8f71968215c7e776da482e83823c8b74 (patch)
treefdc1ab89e688b4bf2812007b8c84cf2b539bc850 /db/migrate
parent91864a92b9821f43c4551f96c6af8dff49bbedaa (diff)
parentd2ebc9b931d12cb2cb120d6f7c940744bc1be39c (diff)
downloadgitlab-ce-81dcd8ed8f71968215c7e776da482e83823c8b74.tar.gz
Merge branch '39289-local-schema-rb-automatically-reverts-datetime-to-datetime_with_timezone-after-migrations' into 'master'
Prevent schema.rb reverting from datetime_with_timezone to datetime Closes #39289 See merge request gitlab-org/gitlab-ce!14956
Diffstat (limited to 'db/migrate')
-rw-r--r--db/migrate/20171019141859_fix_dev_timezone_schema.rb25
1 files changed, 25 insertions, 0 deletions
diff --git a/db/migrate/20171019141859_fix_dev_timezone_schema.rb b/db/migrate/20171019141859_fix_dev_timezone_schema.rb
new file mode 100644
index 00000000000..fb7c17dd747
--- /dev/null
+++ b/db/migrate/20171019141859_fix_dev_timezone_schema.rb
@@ -0,0 +1,25 @@
+class FixDevTimezoneSchema < ActiveRecord::Migration
+ include Gitlab::Database::MigrationHelpers
+
+ # The this migrations tries to help solve unwanted changes to `schema.rb`
+ # while developing GitLab. Installations created before we started using
+ # `datetime_with_timezone` are likely to face this problem. Updating those
+ # columns to the new type should help fix this.
+
+ # Set this constant to true if this migration requires downtime.
+ DOWNTIME = false
+
+ TIMEZONE_TABLES = %i(appearances ci_group_variables ci_pipeline_schedule_variables events gpg_keys gpg_signatures project_auto_devops)
+
+ def up
+ return unless Rails.env.development? || Rails.env.test?
+
+ TIMEZONE_TABLES.each do |table|
+ change_column table, :created_at, :datetime_with_timezone
+ change_column table, :updated_at, :datetime_with_timezone
+ end
+ end
+
+ def down
+ end
+end