pantheon-systems/example-drops-7-composer

在Pantheon上使用Composer安装drops-7。

1.1.1 2020-07-12 22:19 UTC

README

此存储库可用于在Pantheon上设置Composer管理的Drupal 7网站。

CircleCI Actively Maintained

Pantheon example-drops-7-composer Dev Site example-drops-7-composer

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

  • 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-7-composer my-new-site --team="Agency Org Name"

这里显示的参数是

  • 源存储库的名称,pantheon-systems/example-drops-7-composer。如果您对其他源存储库(如WordPress)感兴趣,请参阅Terminus Build Tools Plugin
  • 将要创建的Pantheon网站和GitHub存储库将使用的机器名称。将my-new-site更改为对您有意义的名称。
  • 可选的--team标志引用一个Pantheon组织。Pantheon组织通常是网络开发机构或大学。设置此参数会导致新创建的网站进入指定的组织。运行Terminus命令terminus org:list以查看您是成员的组织。可能没有。

重要文件和目录

/web

由于pantheon.yml中的配置,Pantheon将从/web子目录提供网站服务,从而方便基于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文件。

Github Actions

如果您需要为现有项目启用Github Actions,应将.ci.github复制到.github中,然后向Github Actions配置中添加以下密钥:

  • TERMINUS_TOKEN
  • TERMINUS_SITE
  • SSH_PRIVATE_KEY
  • GIT_EMAIL

更新您的站点

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