digipolisgent/drupal-copy-profile

可以作为安装配置文件的开发使用,用于复制网站目录中的当前配置文件,因此可以像使用drupal-composer/drupal-project一样使用。

安装: 47

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 3

分支: 0

类型:composer-plugin

1.0.0 2019-08-13 06:38 UTC

This package is auto-updated.

Last update: 2024-09-13 17:25:42 UTC


README

Latest Stable Version Latest Unstable Version Total Downloads License

Build Status Maintainability Test Coverage PHP 7 ready

Composer插件,用于协助安装配置文件的开发。这允许安装配置文件像drupal-composer/drupal-project一样使用,您的项目作为安装配置文件进行测试,作为根项目。

致谢

此项目基本上是drupal-composer/drupal-scaffold的复制。感谢该包的开发者提供的灵感。

使用方法

在安装或更新drupal/core之前,在您的composer项目中运行composer require --dev digipolisgent/drupal-copy-profile:dev-master

一旦项目需要drupal-copy-profile,它将自动将项目目录中的安装配置文件复制到已安装的Drupal站点的正确配置文件目录。

您可以通过在composer.json的require-dev部分中添加这些包来轻松使用。

  • drupal/core
  • composer/installers
  • drupal-composer/drupal-scaffold

您还必须按照以下方式配置drupal-scaffold路径

    "extra": {
        "installer-paths": {
            "web/core": ["type:drupal-core"],
            "web/libraries/{$name}": ["type:drupal-library"],
            "web/modules/contrib/{$name}": ["type:drupal-module"],
            "web/profiles/contrib/{$name}": ["type:drupal-profile"],
            "web/themes/contrib/{$name}": ["type:drupal-theme"],
            "drush/contrib/{$name}": ["type:drupal-drush"]
        },
    }

配置

您可以通过在您的根composer.jsonextra部分提供一些设置来配置此插件。

{
  "extra": {
    "drupal-copy-profile": {
      "excludes": [
        "scripts"
      ],
      "profile-name": "lightning",
      "web-root": "www",
      "omit-defaults": false
    }
  }
}

使用drupal-copy-profile选项的excludes,您可以提供不应从根项目复制的附加路径。插件提供了以下默认包含项

web-root
vendor-path
.git

web-root可以通过选项进行配置,但默认为drupal/core安装的位置。vendor-path来自composer配置,默认为vendor

当将omit-defaults设置为true时,将不会使用默认排除项;在这种情况下,只有那些在excludes选项中明确列出文件将予以考虑。如果omit-defaultsfalse(默认值),则excludes中列出的任何项目都将添加到常规默认值。

profile-name选项允许您设置安装配置文件名称。默认为根包的项目名称(包名称的第二部分)

web-root选项允许您设置复制配置文件到的替代路径。默认为drupal/core的安装位置,这应该没问题。

自定义命令

默认情况下,插件在每次composer安装和更新时执行。如果您想手动调用它,您可以将命令回调添加到根composer.jsonscripts-部分,如下所示

{
  "scripts": {
    "drupal-copy-profile": "DigipolisGent\\DrupalCopyProfile\\Plugin::copyProfile"
  }
}

之后,您可以通过使用composer drupal-scaffold根据您的配置手动复制配置文件。