digipolisgent / drupal-copy-profile
可以作为安装配置文件的开发使用,用于复制网站目录中的当前配置文件,因此可以像使用drupal-composer/drupal-project一样使用。
Requires
- php: >=5.4.5
- composer-plugin-api: ^1.0.0
Requires (Dev)
- composer/composer: ^1
- phpunit/phpunit: ^4.4.0
This package is auto-updated.
Last update: 2024-09-13 17:25:42 UTC
README
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.json
的extra
部分提供一些设置来配置此插件。
{ "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-defaults
是false
(默认值),则excludes
中列出的任何项目都将添加到常规默认值。
profile-name
选项允许您设置安装配置文件名称。默认为根包的项目名称(包名称的第二部分)
web-root
选项允许您设置复制配置文件到的替代路径。默认为drupal/core
的安装位置,这应该没问题。
自定义命令
默认情况下,插件在每次composer安装和更新时执行。如果您想手动调用它,您可以将命令回调添加到根composer.json
的scripts
-部分,如下所示
{ "scripts": { "drupal-copy-profile": "DigipolisGent\\DrupalCopyProfile\\Plugin::copyProfile" } }
之后,您可以通过使用composer drupal-scaffold
根据您的配置手动复制配置文件。