ComposerScaffoldCommand.php

Same filename and directory in other branches
  1. 9 composer/Plugin/Scaffold/ComposerScaffoldCommand.php
  2. 8.9.x composer/Plugin/Scaffold/ComposerScaffoldCommand.php
  3. 10 composer/Plugin/Scaffold/ComposerScaffoldCommand.php

Namespace

Drupal\Composer\Plugin\Scaffold

File

composer/Plugin/Scaffold/ComposerScaffoldCommand.php

View source
<?php

namespace Drupal\Composer\Plugin\Scaffold;

use Composer\Command\BaseCommand;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;

/**
 * The "drupal:scaffold" command class.
 *
 * Manually run the scaffold operation that normally happens after
 * 'composer install'.
 *
 * @internal
 */
class ComposerScaffoldCommand extends BaseCommand {
  
  /**
   * {@inheritdoc}
   */
  protected function configure() {
    $this->setName('drupal:scaffold')
      ->setAliases([
      'scaffold',
    ])
      ->setDescription('Update the Drupal scaffold files.')
      ->setHelp(<<<EOT
The <info>drupal:scaffold</info> command places the scaffold files in their
respective locations according to the layout stipulated in the composer.json
file.

<info>php composer.phar drupal:scaffold</info>

It is usually not necessary to call <info>drupal:scaffold</info> manually,
because it is called automatically as needed, e.g. after an <info>install</info>
or <info>update</info> command. Note, though, that only packages explicitly
allowed to scaffold in the top-level composer.json will be processed by this
command.

For more information, see https://www.drupal.org/docs/develop/using-composer/using-drupals-composer-scaffold.
EOT
);
  }
  
  /**
   * {@inheritdoc}
   */
  protected function execute(InputInterface $input, OutputInterface $output) : int {
    $handler = new Handler($this->requireComposer(), $this->getIO());
    $handler->scaffold();
    return 0;
  }

}

Classes

Title Deprecated Summary
ComposerScaffoldCommand The "drupal:scaffold" command class.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.