pantheon-systems / circle-scripts
使用 Circle CI 使用 Composer 构建Drupal站点,使用 Behat 进行测试,然后部署到 Pantheon。
Requires
This package is not auto-updated.
Last update: 2024-09-19 04:53:12 UTC
README
此项目已弃用;它已被一个更新且更全面的example Drupal 7 Circle CI Composer 项目所取代,可以用来快速创建您自己的派生项目。
原始文档
此项目旨在从 Drupal 站点的 composer.json
文件的 require 部分中包含。这样做可以让您实现以下功能
- 在您的 composer.json 文件中指定您使用的 Drupal 模块、主题和库,并使用 Composer 构建它们。
- 自动通过 Circle CI 每次提交构建组件。
- 使用 Behat 从 Circle CI 运行您站点的测试。
- 每次测试通过时,自动将您的站点部署到您的 Pantheon 开发环境或某个分支。
所有这些都可以通过仅提交到您的存储库的几个轻量级文件来完成。
设置
将 examples
目录的内容复制到您的项目的根目录,并根据需要重命名文件
example.gitignore -> .gitignore
example.circle.yml -> circle.yml
example.behat.yml -> behat.yml
features -> features
您还需要一个用于您的项目的 composer.json 文件。项目 example-drupal7-circle-composer 可以用作模板,快速创建您自己的项目;对于 Drupal 8,请参阅drupal-composer/drupal-project。
配置
您必须自定义这些文件的内容以满足您项目的需求。请参阅下面的详细说明;有关更多信息,请参阅每个文件内的注释。
Composer
不要使用 pantheon-systems/circle-scripts 项目中包含的 composer.json 文件;而是使用上面 设置 部分中提到的项目的 composer.json 文件。
在您的 composer.json 文件中将 name 和 description 设置为您项目适当的值。
自定义 require 部分以包含您项目需要的模块和主题。您可能想尝试使用 drush composer-generate 来开始。如果要在 Pantheon 上运行您的站点,则应保留 "pantheon-systems/drops-7" 作为您的主要组件;否则,如果您更喜欢,可以将其替换为 "drupal/drupal"。
您 composer.json 文件 require 部分中的自定义安装程序控制项目中的组件安装方式。始终将这些项目放在顶部,以便它们在安装过程的开始阶段可用。在自定义安装程序之前的模块和主题可能无法正确安装。
Circle CI
设置您的项目以便 Circle CI 进行测试
- 在您的网络浏览器中登录到 https://circleci.com。
- 在左侧菜单栏上点击 "+", "Add Projects"。
- 找到您想要配置以进行测试的存储库。如果需要,导航到正确的组织,并使用 "Filter repos..." 字段来减少显示列表的大小。
- 点击“构建项目”以启用仓库并首次构建它。
接下来,设置用于推送至Pantheon脚本的环境外部变量。
在“项目设置”>“环境变量”中编辑这些设置(https://circleci.com/gh/ORG/PROJECT/edit#env-vars)。
您还需要设置一个SSH密钥,以便推送至Pantheon脚本可以将更改提交到Pantheon的Git仓库。
- 创建公钥/私钥SSH密钥对。您可能想使用与GitHub不同的密钥。
- 将公钥SSH密钥添加到您的Pantheon账户。.
- 将私钥SSH密钥添加到Circle CI。您可以选择留空“主机”字段,或将它设置为“codeserver.$PENV.$PUUID.drush.in”,其中"$PENV"将替换为您在PENV环境变量中使用的相同值,"$PUUID"将替换为您的Pantheon站点的UUID。
请参阅Circle CI文档获取有关配置的更多信息。
Behat
此示例配置为运行一个Behat测试,以确认通过drush site-install
正确设置了站点名称。请注意,站点名称的前半部分由您在.travis.yml文件中自定义的SITE_NAME
环境变量设置;后半部分在Travis上设置为“Travis Test Site”,在Pantheon上设置为“Pantheon Test Site”。
请参阅behat文档获取有关将更多测试添加到项目的说明。
本地测试
设置完成后,进行本地测试很简单。
$ composer install
$ ./bin/local-test