diff options
author | Rémy Coutable <remy@rymai.me> | 2017-01-19 18:32:10 +0100 |
---|---|---|
committer | Nick Thomas <nick@gitlab.com> | 2017-01-19 21:02:45 +0000 |
commit | 2bf5fe5edead9ec59e3a9a3bac3ed3eb1601ba41 (patch) | |
tree | 1852dbd90533954f34a6b55466a7692883cf09ed | |
parent | 4bf9725035f20e3a571a3fc9bda273f3bdd3cbbe (diff) | |
download | gitlab-ce-2bf5fe5edead9ec59e3a9a3bac3ed3eb1601ba41.tar.gz |
Rename duplicate migrations and skip them if table/columns are already present
The time tracking feature was backported from EE to CE, thus the CE
migrations should be uniquely named and should skip the actual migration
content if the table/columns already exist (that means that the EE
migrations were already performed).
Signed-off-by: Rémy Coutable <remy@rymai.me>
4 files changed, 35 insertions, 68 deletions
diff --git a/db/migrate/20161223034433_add_estimate_to_issuables_ce.rb b/db/migrate/20161223034433_add_estimate_to_issuables_ce.rb new file mode 100644 index 00000000000..2cbe626d752 --- /dev/null +++ b/db/migrate/20161223034433_add_estimate_to_issuables_ce.rb @@ -0,0 +1,15 @@ +class AddEstimateToIssuablesCe < ActiveRecord::Migration + include Gitlab::Database::MigrationHelpers + + DOWNTIME = false + + def change + unless column_exists?(:issues, :time_estimate) + add_column :issues, :time_estimate, :integer + end + + unless column_exists?(:merge_requests, :time_estimate) + add_column :merge_requests, :time_estimate, :integer + end + end +end diff --git a/db/migrate/20161223034433_add_time_estimate_to_issuables.rb b/db/migrate/20161223034433_add_time_estimate_to_issuables.rb deleted file mode 100644 index 8d89756a9bc..00000000000 --- a/db/migrate/20161223034433_add_time_estimate_to_issuables.rb +++ /dev/null @@ -1,30 +0,0 @@ -# See http://doc.gitlab.com/ce/development/migration_style_guide.html -# for more information on how to write migrations for GitLab. - -class AddTimeEstimateToIssuables < ActiveRecord::Migration - include Gitlab::Database::MigrationHelpers - - # Set this constant to true if this migration requires downtime. - DOWNTIME = false - - # When a migration requires downtime you **must** uncomment the following - # constant and define a short and easy to understand explanation as to why the - # migration requires downtime. - # DOWNTIME_REASON = '' - - # When using the methods "add_concurrent_index" or "add_column_with_default" - # you must disable the use of transactions as these methods can not run in an - # existing transaction. When using "add_concurrent_index" make sure that this - # method is the _only_ method called in the migration, any other changes - # should go in a separate migration. This ensures that upon failure _only_ the - # index creation fails and can be retried or reverted easily. - # - # To disable transactions uncomment the following line and remove these - # comments: - # disable_ddl_transaction! - - def change - add_column :issues, :time_estimate, :integer - add_column :merge_requests, :time_estimate, :integer - end -end diff --git a/db/migrate/20161223034646_create_timelogs.rb b/db/migrate/20161223034646_create_timelogs.rb deleted file mode 100644 index d3353a67eec..00000000000 --- a/db/migrate/20161223034646_create_timelogs.rb +++ /dev/null @@ -1,38 +0,0 @@ -# See http://doc.gitlab.com/ce/development/migration_style_guide.html -# for more information on how to write migrations for GitLab. - -class CreateTimelogs < ActiveRecord::Migration - include Gitlab::Database::MigrationHelpers - - # Set this constant to true if this migration requires downtime. - DOWNTIME = false - - # When a migration requires downtime you **must** uncomment the following - # constant and define a short and easy to understand explanation as to why the - # migration requires downtime. - # DOWNTIME_REASON = '' - - # When using the methods "add_concurrent_index" or "add_column_with_default" - # you must disable the use of transactions as these methods can not run in an - # existing transaction. When using "add_concurrent_index" make sure that this - # method is the _only_ method called in the migration, any other changes - # should go in a separate migration. This ensures that upon failure _only_ the - # index creation fails and can be retried or reverted easily. - # - # To disable transactions uncomment the following line and remove these - # comments: - # disable_ddl_transaction! - - def change - create_table :timelogs do |t| - t.integer :time_spent, null: false - t.references :trackable, polymorphic: true - t.references :user - - t.timestamps null: false - end - - add_index :timelogs, [:trackable_type, :trackable_id] - add_index :timelogs, :user_id - end -end diff --git a/db/migrate/20161223034646_create_timelogs_ce.rb b/db/migrate/20161223034646_create_timelogs_ce.rb new file mode 100644 index 00000000000..e8a4b406012 --- /dev/null +++ b/db/migrate/20161223034646_create_timelogs_ce.rb @@ -0,0 +1,20 @@ +class CreateTimelogsCe < ActiveRecord::Migration + include Gitlab::Database::MigrationHelpers + + DOWNTIME = false + + def change + unless table_exists?(:timelogs) + create_table :timelogs do |t| + t.integer :time_spent, null: false + t.references :trackable, polymorphic: true + t.references :user + + t.timestamps null: false + end + + add_index :timelogs, [:trackable_type, :trackable_id] + add_index :timelogs, :user_id + end + end +end |