Skip to content

Change integration base classes to be more clearly defined as base classes

This issue came out of this discussion !61744 (comment 576987150).

About

We have some integration models that are used as base classes, but are not named as such, so they appear as though they are actual integrations.

We want to rename these models, and also (edit: done) mark them as abstract classes with self.abstract_class = true.

The integration base classes are:

  1. Integrations::BaseIssueTracker
  2. Integrations::BaseMonitoring
  3. Integrations::BaseSlashCommands
  4. Integrations::BaseChatNotification
  5. Integrations::BaseCi

Proposal

Rename the classes

Rename these classes to:

  1. Integrations::BaseIssueTracker renamed in !63019 (merged)
  2. Integrations::BaseMonitoring renamed in !62645 (merged)
  3. Integrations::BaseSlashCommands renamed in !63015 (merged)
  4. Integrations::BaseChatNotification renamed in !61957 (merged)
  5. Integrations::BaseCi renamed in !62359 (merged)

Mark them all as abstract classes

Add self.abstract_class = true to these classes. won't do #331181 (comment 1042022271).

Availability & Testing

  • run package-and-qa
  • consider overriding base_class on integrations that inherit from the base classes to match existing behavior as per this comment: #331181 (comment 1034209944)
Edited by Arturo Herrero