提升第三/典范基础

Paragon Drupal 8 分发的基于 Composer 的安装模板

8.1.0-alpha31 2021-05-11 19:13 UTC

README

Paragon 是一个专注于提供清洁起点以进行网站构建的 Drupal 分发,内置了适量的配置。这允许开发者专注于构建自定义功能,而不是重复他们之前已经构建了 100 次的标准基线功能。

本分发的目的是创建一个 Drupal 安装,在初始安装之后将被视为一个艺术品,并独立于本项目维护。因此,而不是将其作为官方安装配置文件,Paragon 被管理为一个 Composer 模板,该模板大量使用了 drupal/core-composer-scaffold,并且还包括了可以用于安装站点的导出配置。

先决条件

  • Lando:请参阅 Lando 要求
  • 访问 Elevated Third Github 组织、Paragon-base 仓库和 SSH 密钥设置。
  • 您必须使用 Composer 2。
    • 要安装特定版本,请使用以下命令并传递版本约束:composer self-update 2.0.7
    • 如果您已经安装并且需要切换到 compsoer 2,请运行 composer self-update --2

设置说明

要创建新的 Paragon 安装,请按照以下步骤操作

步骤 #1:克隆仓库

  1. 运行以下命令: composer create-project elevatedthird/paragon-base [安装目录名称],这将克隆 composer 模板并创建所有必要的文件。
  2. 您将被提示选择项目的托管环境。如果您不想使用特定平台的文件,请选择“自定义”。您可以通过运行 composer setup-platform 来设置托管要求。

步骤 #2:项目设置

  1. 使用新创建的站点目录设置本地站点。Paragon 内置了 Lando,可以通过在站点根目录中运行 lando start 来启动。Lando 配置位于 .lando.yml 中,数据库设置在 settings.lando.php 中自动包含在 settings.php 中。

  2. 请确保更改 .lando.yml 文件中的应用名称

步骤 #3:站点设置

  1. 本地站点运行后,导航到 http://paragon.lndo.site/(或您的本地站点正在运行的任何 URL)并继续进行 Drupal 安装。当提示选择安装配置文件时,请确保选择“使用现有配置”,这将从 /config/default 目录中的现有配置安装。

步骤 #4:数据库设置

  1. 如果使用 Lando,当提示添加 Drupal 数据库连接详细信息时,您可以通过运行 lando info 找到连接信息。

步骤 #5:数据库设置

  1. 安装完成后,请确保删除自动生成的数据库连接详细信息,这些信息可能已被附加到 settings.php 的底部,然后您应该就绪了!

步骤 #6:设置 Drush

  1. 从项目根目录运行 mkdir -p drush/sites

常见命令

一些可能有帮助的常见命令

  • lando start/stop
  • lando poweroff
  • lando rebuild - 完全重建站点和项目容器。如果在运行中遇到 lando 问题,这将非常有用。
  • composer install
  • composer depends [供应商/包]
  • composer show [供应商/包]

Xdebug 命令

  • lando xdebug debug:启用步骤调试。这可以在代码运行时逐行执行,并分析变量的值。
  • lando xdebug:关闭xdebug。
  • lando xdebug develop:启用开发助手,包括重载的var_dump()。
  • lando xdebug coverage:启用代码覆盖率分析,生成代码覆盖率报告,主要与PHPUnit结合使用。
  • lando xdebug gcstats:启用垃圾收集统计,收集PHP垃圾收集机制的统计信息。
  • lando xdebug profile:启用性能分析,您可以使用KCacheGrind等工具分析性能瓶颈。
  • lando xdebug trace:启用函数跟踪功能,允许您记录每个函数调用,包括参数、变量赋值和请求文件时的返回值。最常见的xdebug命令是debug和off,但还有其他可用模式。

E3 Github工作流

默认情况下,所有Paragon项目都启用了Github Actions。要禁用,请将.github/workflows/main.yml重命名为main.disable

  1. 确保您已邀请hosting@elevatedthird.com加入您的项目。
  2. 在项目根目录中设置.env文件。这些变量将被用作Github工作流的设置。
  3. 如果您的网站在Pantheon上,您需要取消注释并填写PANTHEON_SITE变量。
  4. 如果您不使用kinetic,请将THEME_NAME变量更改为活动主题文件夹的名称。同时,更改composer.json中的build-themenpm-install脚本中的主题路径。

特定平台说明

Acquia

  1. 确保您有hooks/dev/post-code-update/drush-deploy.sh
  2. 确保以下代码存在于settings.php中。
if (isset($_ENV['AH_SITE_ENVIRONMENT'])) {
  if (file_exists($app_root . '/' . $site_path . '/settings.acquia.php')) {
    include $app_root . '/' . $site_path . '/settings.acquia.php';
  }
}

Pantheon

  1. 确保您将docroot文件夹名称更改为web
  2. 在您的composer.json文件中将docroot更改为web
  3. 确保以下代码存在于settings.php中。
if(isset($_ENV['PANTHEON_ENVIRONMENT'])) {
  if (file_exists($app_root . '/' . $site_path . '/settings.pantheon.php')) {
    include $app_root . '/' . $site_path . '/settings.pantheon.php';
  }
}

平台

  1. 确保您的.platform.app.yaml部署钩子看起来像这样
  deploy: |
    set -e
    php ./drush/platformsh_generate_drush_yml.php
    cd docroot
    drush deploy
  1. 确保以下代码存在于settings.php中。
if (isset($_ENV['PLATFORM_PROJECT'])) {
  if (file_exists($app_root . '/' . $site_path . '/settings.platformsh.php')) {
    include $app_root . '/' . $site_path . '/settings.platformsh.php';
  }
}

Tugboat集成

默认情况下,Paragon创建一个包含与Tugboat QA相关的配置的.tugboat文件夹。您必须设置一个tugboat项目并将其与Github仓库连接。

相关项目