public function NewRelicConfigSubscriber::onImport in New Relic 2.x
Same name and namespace in other branches
- 8 src/EventSubscriber/NewRelicConfigSubscriber.php \Drupal\new_relic_rpm\EventSubscriber\NewRelicConfigSubscriber::onImport()
- 2.0.x src/EventSubscriber/NewRelicConfigSubscriber.php \Drupal\new_relic_rpm\EventSubscriber\NewRelicConfigSubscriber::onImport()
Attempts to create a deployment on New Relic when a config import happens.
Parameters
\Drupal\Core\Config\ConfigImporterEvent $event: The current config event that we are responding to.
File
- src/
EventSubscriber/ NewRelicConfigSubscriber.php, line 71
Class
- NewRelicConfigSubscriber
- Config event listener to mark deployments when a user imports configuration.
Namespace
Drupal\new_relic_rpm\EventSubscriberCode
public function onImport(ConfigImporterEvent $event) {
$config = $this->configFactory
->get('new_relic_rpm.settings');
if (!$config
->get('config_import')) {
return;
}
$changes = $event
->getChangelist();
$name = $this->currentUser
->getAccountName();
$description = $this
->t('A configuration import was run on the site.');
$changelog = '';
if (!empty($changes['create'])) {
$changelog .= 'Configurations created:
';
foreach ($changes['create'] as $config_key) {
$changelog .= $config_key . '
';
}
}
if (!empty($changes['update'])) {
$changelog .= 'Configurations updated:
';
foreach ($changes['update'] as $config_key) {
$changelog .= $config_key . '
';
}
}
if (!empty($changes['delete'])) {
$changelog .= 'Configurations deleted:
';
foreach ($changes['delete'] as $config_key) {
$changelog .= $config_key . '
';
}
}
if (!empty($changes['rename'])) {
$changelog .= 'Configurations renamed:
';
foreach ($changes['rename'] as $config_key) {
$changelog .= $config_key . '
';
}
}
/** @var \Drupal\new_relic_rpm\Client\NewRelicApiClient $client */
$client = \Drupal::service('new_relic_rpm.client');
$client
->createDeployment('config_import', $description, $name, $changelog);
}