PHP Script
<?php
function aws(string $command) : array|false {
$aws_command = 'aws --no-cli-pager --no-paginate --output json ' . $command;
$output = [];
$result_code = NULL;
if (exec($aws_command, $output, $result_code)) {PHP Script
<?php
function aws(string $command) : array|false {
$aws_command = 'aws --no-cli-pager --no-paginate --output json ' . $command;
$output = [];
$result_code = NULL;
if (exec($aws_command, $output, $result_code)) {$index = \Drupal\search_api\Entity\Index::load('solr_index');
$query = $index->query();
$parse_mode = \Drupal::service('plugin.manager.search_api.parse_mode')->createInstance('direct');
$query->setParseMode($parse_mode);
$query->keys('keywords to search');
$results = $query->execute();
$items = $results->getResultItems();If you do, or want to, use AWS to deploy your apps, you will end up using AWS SES via SMTP when you're launching an app that sends out emails of any kind (user registrations, email notifications, etc). For example, I have used this configuration on various Ruby on Rails apps, however, it is just basic SMTP configurations and crosses over to any framework that supports SMTP sendmail.
There are two ways to go about this:
Luckily, you found this MD file and the NOT SO EASY WAY is suddenly copy-pasta... sudo yum....
$database = \Drupal::database();
$charset = $database->getConnectionOptions()['charset'] ?? 'utf8mb4';
$collation = $database->getConnectionOptions()['collation'] ?? 'utf8mb4_general_ci';
echo PHP_EOL;
$tables = $database->query('SHOW TABLE STATUS where Collation <> :collation', [':collation' => $collation ])->fetchAllAssoc('Name');
if (count($tables)) {
echo 'Converting collation of ', count($tables), ' tables to ', $collation, PHP_EOL;$entity_type_manager = \Drupal::entityTypeManager();
$storage = $entity_type_manager->getStorage('migration');
$migration_plugin_manager = \Drupal::service('plugin.manager.migration');
$migration_id = '...';
$migration = $storage->load($migration_id);
$migration_plugin = $migration_plugin_manager->createInstance($migration_id, $migration->toArray());
$source_plugin = $migration_plugin->getSourcePlugin();curl -sXGET "http://${SEARCH_AUTH_USERNAME}:${SEARCH_AUTH_PASSWORD}@${SEARCH_HASH}.${SEARCH_URL}/_cat/indices?format=json&pretty=true"
curl -sXGET "http://${SEARCH_AUTH_USERNAME}:${SEARCH_AUTH_PASSWORD}@${SEARCH_HASH}.${SEARCH_URL}/_cat/indices/${SEARCH_HASH}--${SEARCH_INDEX}node?format=json&pretty=true"
curl -s "http://${SEARCH_AUTH_USERNAME}:${SEARCH_AUTH_PASSWORD}@${SEARCH_HASH}.${SEARCH_URL}/_ingest/pipeline?pretty=true"
use \Drupal\node\Entity\NodeType;
$panelizer = [];
$repo = \Drupal::service('entity_display.repository');
$types = NodeType::loadMultiple();
foreach (array_keys($types) as $node_type) {
$viewmode_options = $repo->getViewModeOptionsByBundle('node', $node_type);
foreach (array_keys($viewmode_options) as $viewmode_option) {use Drupal\search_api\Entity\Index;
$index = Index::load('node')
$server = $index->getServerInstance()
$backend = $server->getBackend()
$backend->getCluster()
$cluster_manager = \Drupal::service('elasticsearch_connector.cluster_manager')use Drupal\Component\Utility\UrlHelper;
$include = 'eJx...';
explode(',',UrlHelper::uncompressQueryParameter($include));