2f40fc521e
The `unless defined?(Service)` was useless since in production env, models are eager loaded, thus we wouldn't disable the STI, resulting in the following error: The single-table inheritance mechanism failed to locate the subclass: 'GitlabCiService'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Service.inheritance_column to use another column for that information./opt/gitlab/embedded/service/gitlab-rails/db/post_migrate/20170211073944_disable_invalid_service_templates.rb:11:in `up' Signed-off-by: Rémy Coutable <remy@rymai.me>
13 lines
315 B
Ruby
13 lines
315 B
Ruby
class DisableInvalidServiceTemplates < ActiveRecord::Migration
|
|
DOWNTIME = false
|
|
|
|
class Service < ActiveRecord::Base
|
|
self.inheritance_column = nil
|
|
end
|
|
|
|
def up
|
|
Service.where(template: true, active: true).each do |template|
|
|
template.update(active: false) unless template.valid?
|
|
end
|
|
end
|
|
end
|