Sha256: 5bdb6119d93dd5f7003685f171199a4b423db24f85da50de0d1c5ab9c41b0f30

Contents?: true

Size: 1.43 KB

Versions: 24

Compression:

Stored size: 1.43 KB

Contents

require 'openc3/utilities/migration'
require 'openc3/models/microservice_model'

module OpenC3
  class NoScopeLogMessages < Migration
    def self.run
      # Add NOSCOPE topic to log message microservice for DEFAULT scope
      model = MicroserviceModel.get_model(name: "DEFAULT__OPENC3__LOG", scope: 'DEFAULT')
      if model
        model.topics = ["DEFAULT__openc3_log_messages", "NOSCOPE__openc3_log_messages"]
        model.update
      end

      ScopeModel.get_all_models(scope: nil).each do |scope, scope_model|
        parent = "#{scope}__SCOPEMULTI__#{scope}"

        # Remove NOTIFICATION log microservice from scopes
        model = MicroserviceModel.get_model(name: "#{scope}__NOTIFICATION__LOG", scope: scope)
        if model
          model.destroy
        end

        # Add Scope Cleanup microservice to scopes
        model = MicroserviceModel.get_model(name: "#{scope}__SCOPECLEANUP__#{scope}", scope: scope)
        unless model
          scope_model.deploy_scopecleanup_microservice("", {}, parent)
        end

        model = MicroserviceModel.get_model(name: parent, scope: scope)
        if model
          model.cmd.delete("#{scope}__NOTIFICATION__LOG")
          unless model.cmd.include?("#{scope}__SCOPECLEANUP__#{scope}")
            model.cmd << "#{scope}__SCOPECLEANUP__#{scope}"
          end
          model.update
        end
      end
    end
  end
end

unless ENV['OPENC3_NO_MIGRATE']
  OpenC3::NoScopeLogMessages.run
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
openc3-6.2.1 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-6.2.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-6.1.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-6.0.2 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-6.0.1 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-6.0.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.20.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.19.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.18.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.17.1 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.17.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.16.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.15.2 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.15.1 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.15.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.14.2 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.14.1 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.14.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.13.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb
openc3-5.12.0 lib/openc3/migrations/20230915000002_no_scope_log_messages.rb