realestatepointe/d8-pantheon-composer

在Pantheon上使用Composer安装Drupal 8。


README

该仓库是使用Pantheon的Composer工作流程的起始状态。它旨在由Terminus Build Tools插件复制,该插件将为您设置全新的

  • GitHub仓库
  • 免费的Pantheon沙箱网站
  • CircleCI配置,用于运行测试并将源代码库(GitHub)推送到Pantheon。

有关此工作流程样式的更多背景信息,请参阅Pantheon文档

安装

先决条件

在运行terminus build:project:create命令之前,请确保您已满足所有先决条件

您可能发现将GitHub和CircleCI令牌作为变量导出到命令行中更容易,以便Build Tools插件可以自动检测它们。

export GITHUB_TOKEN=[REDACTED]
export CIRCLE_TOKEN=[REDACTED]

一键设置

一旦您已满足所有先决条件,您可以使用一个命令创建此仓库的副本

terminus build:project:create pantheon-systems/example-drops-8-composer my-new-site --team="Agency Org Name"

这里显示的参数是

  • 源仓库的名称,pantheon-systems/example-drops-8-composer。如果您对其他源仓库(如WordPress)感兴趣,请参阅Terminus Build Tools插件
  • 将被用于即将创建的Pantheon网站和GitHub仓库的机器名称。将my-new-site更改为对您有意义的内容。
  • --team标志是可选的,它指的是Pantheon组织。Pantheon组织通常是网络开发代理机构或大学。设置此参数将使新创建的网站位于给定的组织内。运行Terminus命令terminus org:list以查看您是成员的组织。可能没有任何组织。

重要文件和目录

/web

Pantheon将从/web子目录提供服务,这是由于pantheon.yml中的配置,从而方便了基于Composer的工作流程。将您的网站存储在此子目录中也允许将测试、脚本和其他与您的项目相关的文件存储在您的仓库中,而不会污染您的Web文档根目录。

/config

移动到git根目录的目录之一是/config。此目录包含Drupal的.yml配置文件。在更传统的仓库结构中,这些文件会位于/sites/default/config/。多亏了settings.php中的这一行,配置被完全移动到Web根目录之外。

composer.json

如果您只是在GitHub上浏览这个仓库,您可能会注意到Drupal核心文件本身并不包含在这个仓库中。这是因为Drupal核心和贡献模块是通过Composer安装的,并且在.gitignore文件中被忽略。具体的贡献模块通过composer.json添加到项目中,而composer.lock文件则记录了每个模块(或其他依赖)的确切版本。模块和主题由于composer.json中的"installer-paths"部分而放置在正确的目录中。composer.json还包括了drupal-scaffold的说明,它负责将一些单个文件放置在正确的位置,如settings.pantheon.php

Behat测试

为了使CircleCI有一些测试可以运行,这个仓库包含了一个Behat测试的配置。您可以在/tests/features/目录下添加自己的.feature文件。

更新您的站点

当使用这个仓库来管理您的Drupal站点时,您将不再使用Pantheon仪表板来更新您的Drupal版本。相反,您将通过Composer来管理更新。确保您的站点处于Git模式,将其克隆到本地,然后从那里运行composer命令。像往常一样提交并推送文件回Pantheon。