openeuropa / oe_profile
OpenEuropa 安装配置文件。
Requires
- php: >=8.0
- drupal/core: ^9.4
- openeuropa/oe_theme: ^3.1
Requires (Dev)
- composer/installers: ^1.5
- drupal/config_devel: ~1.2
- drupal/core-composer-scaffold: ^9.4
- drupal/drupal-extension: ^4.0
- drush/drush: ^10.0.0 || ^11.0.4
- nikic/php-parser: ^3.1.5 || ^4
- openeuropa/code-review: ^2.0.0-alpha6
- openeuropa/composer-artifacts: ^1.0.0-alpha1
- openeuropa/task-runner-drupal-project-symlink: ^1.0-beta6
README
此安装配置文件已不再维护,并建议不要使用。
我们建议您创建自己的配置文件或使用“最小化”安装配置文件。
您可以使用 配置文件切换器 模块为现有站点切换安装配置文件。
OpenEuropa 配置文件
基本安装配置文件,它所做的只是
- 启用最小数量的核心模块。
- 将
seven
设置为管理主题,并将oe_theme
设置为前端主题。
理由
选择最小化安装配置文件将使处理全分布式方法变得更容易:安装配置文件被视为一个空壳,它不会对网站的任何模块和主题造成任何兼容性问题。最重要的是,这将允许模块和主题维护者正确地以语义方式对他们的工作进行版本控制。
此配置文件还将用于构建使用 OpenEuropa 多个组件的基本站点。
安装
建议使用基于 Composer 的工作流程来安装 OpenEuropa 配置文件。
在项目根目录下运行
$ composer install
在设置和安装站点之前,请确保通过将 ./runner.yml.dist
复制到 ./runner.yml
并覆盖相关属性来自定义默认配置值。
要设置项目,请运行
$ ./vendor/bin/run drupal:site-setup
这将
- 在
./build/profiles/custom/oe_profile
中创建配置文件的符号链接,以便它可供目标站点使用 - 使用
./runner.yml.dist
中的值设置 Drush 和 Drupal 的设置 - 使用
./runner.yml.dist
中的值设置 Behat 配置文件
请注意:项目文件和目录通过使用 OpenEuropa 任务运行器的 Drupal 项目符号链接 命令在目标站点内部进行符号链接。
如果您在项目根目录中添加了新的文件或目录,您需要重新运行 drupal:site-setup
以确保它们被正确地符号链接。
如果您不希望重新运行完整的站点设置,可以简单地运行
$ ./vendor/bin/run drupal:symlink-project
设置成功后,通过运行以下命令安装站点
$ ./vendor/bin/run drupal:site-install
这将
- 安装目标站点
- 将 OpenEuropa 主题设置为默认主题
- 启用开发模块
使用 Docker Compose
通过使用 Docker Compose,可以大大简化上述设置过程。
要求
将 docker-compose.yml.dist 复制到 docker-compose.yml。
您可以为您的本地Docker设置进行任何需要的修改。但是,默认设置应该足够设置项目。
运行
$ docker-compose up -d
然后
$ docker-compose exec web composer install
$ docker-compose exec web ./vendor/bin/run drupal:site-install
您的测试站点将在以下地址可用:http://localhost:8080/build。
按照以下方式运行测试
$ docker-compose exec web ./vendor/bin/behat
步骤调试
要启用从命令行的步骤调试,将XDEBUG_SESSION
环境变量设置为任何值传递给容器
docker-compose exec -e XDEBUG_SESSION=1 web <your command>
请注意,从XDebug 3开始,如果设置了变量但客户端没有监听调试连接,则会在控制台输出连接错误消息。该错误消息会导致PHPUnit测试的假阴性。
要从浏览器开始步骤调试,使用浏览器扩展或像在https://www.jetbrains.com/phpstorm/marklets/生成的书签来设置正确的cookie。