Skip to content
Snippets Groups Projects

TECH-421: Allow queueing of migrations to run during cron

Merged TECH-421: Allow queueing of migrations to run during cron

Files

+ 24
2
@@ -100,10 +100,17 @@ class BatchImportForm extends ConfigFormBase {
$form['#attached']['library'][] = 'batch_import/import_form';
$form['actions']['#type'] = 'actions';
$form['actions']['queue_import'] = [
'#type' => 'submit',
'#value' => $this->t('Queue import for cron'),
'#button_type' => 'primary',
'#submit' => [[$this, 'queueSubmitForm']],
];
$form['actions']['run_import'] = [
'#type' => 'submit',
'#value' => $this->t('Trigger Batch Import'),
'#value' => $this->t('Manually run import'),
'#button_type' => 'primary',
'#submit' => [[$this, 'manualSubmitForm']],
];
return parent::buildForm($form, $form_state);
@@ -207,7 +214,22 @@ class BatchImportForm extends ConfigFormBase {
/**
* {@inheritdoc}
*/
public function submitForm(array &$form, FormStateInterface $form_state) {
public function manualSubmitForm(array &$form, FormStateInterface $form_state) {
// Loop through selected migrations.
$plugins = $form_state->getValue('migrations');
// Filter out empty values.
$plugins = array_filter($plugins);
// Run migrations.
$this->migrationActivation->manualMigration($plugins);
parent::submitForm($form, $form_state);
}
/**
* {@inheritdoc}
*/
public function queueSubmitForm(array &$form, FormStateInterface $form_state) {
// Loop through selected migrations.
$plugins = $form_state->getValue('migrations');
// Filter out empty values.
Loading