生成变量

以下​ 生成 ​变量在生成阶段控制操作,可以继承和覆盖来自全局变量的值。 在.magento.env.yaml文件的build阶段中插入这些变量:

stage:
  build:
    BUILD_VARIABLE_NAME: value

有关自定义生成和部署过程的详细信息:

v2.2中删除了以下变量:

  • skip_di_clearing
  • skip_di_compilation

ERROR_REPORT_DIR_NESTING_LEVEL

  • 默认1
  • 版本—Adobe Commerce 2.1.4及更高版本

设置用于保存错误报告文件的目录嵌套级别,以避免报告目录填入成千上万个文件,这会使管理和查看数据变得困难。 此设置默认为1。 通常,除非在管理<magento_root>/var/report/目录中的错误报告文件时遇到问题,否则无需更改默认值。

stage:
  build:
    ERROR_REPORT_DIR_NESTING_LEVEL: 2

QUALITY_PATCHES

  • 默认值未设置
  • 版本—Adobe Commerce 2.1.4及更高版本

指定要在部署期间应用的Adobe Commerce质量修补程序列表。

stage:
  build:
    QUALITY_PATCHES: [ ]

以下示例指定部署期间要应用的三个修补程序。

stage:
  build:
    QUALITY_PATCHES:
      - MC-31387
      - MDVA-4567
      - MC-456345

请参阅应用修补程序

SCD_COMPRESSION_LEVEL

  • 默认6
  • 版本—Adobe Commerce 2.1.4及更高版本

指定压缩静态内容时要使用的gzip压缩级别(09);0禁用压缩。

stage:
  build:
    SCD_COMPRESSION_LEVEL: 4

SCD_COMPRESSION_TIMEOUT

  • 默认600
  • 版本—Adobe Commerce 2.1.4及更高版本

当压缩静态资源所花费的时间超过压缩超时限制时,将中断部署过程。 设置静态内容压缩命令的最长执行时间(秒)。

stage:
  build:
    SCD_COMPRESSION_TIMEOUT: 800

SCD_NO_PARENT

  • 默认false
  • 版本—Adobe Commerce 2.4.2及更高版本

设置为true以防止在生成阶段为父主题生成静态内容。

在构建阶段设置SCD_NO_PARENT: false,以便为父主题生成静态内容不会影响站点部署或导致不必要的站点停机。 请参阅静态内容部署

stage:
  build:
    SCD_NO_PARENT: false

SCD_MATRIX

  • 默认值未设置
  • 版本—Adobe Commerce 2.1.4及更高版本

您可以为每个主题配置多个区域设置。 此自定义有助于通过减少不必要的主题文件来加快构建过程。 例如,您可以使用英语构建​ magento/backend ​主题,并使用其他语言构建自定义主题。

以下示例使用三种区域设置构建Magento/backend主题:

stage:
  build:
    SCD_MATRIX:
      "Magento/backend":
        language:
          - en_US
          - fr_FR
          - af_ZA

以下示例使用三种区域设置构建三个主题:

stage:
  build:
    SCD_MATRIX:
      "Magento/backend":
        language:
          - en_US
          - fr_FR
          - af_ZA
      "Magento/blank":
        language:
          - en_US
          - fr_FR
          - af_ZA
      "Magento/luma":
        language:
          - en_US
          - fr_FR
          - af_ZA

或者,您可以选择​ ​部署主题:

stage:
  build:
    SCD_MATRIX:
      "Magento/backend": [ ]

SCD_MAX_EXECUTION_TIME

  • 默认值未设置
  • 版本—Adobe Commerce 2.2.0及更高版本

允许您增加静态内容部署的最大预期执行时间。

默认情况下,云基础架构上的Adobe Commerce将最大预期执行时间设置为900秒,但在某些情况下,您可能需要更多时间才能完成云项目的静态内容部署。

stage:
  build:
    SCD_MAX_EXECUTION_TIME: 3600
WARNING
如果在部署后应用程序中遇到静态内容文件问题(例如缺少自定义主题文件),请将最大预期执行时间增加到900秒或更高。

SCD_STRATEGY

  • 默认quick
  • 版本—Adobe Commerce 2.2.0及更高版本

为静态内容自定义部署策略。 请参阅部署静态视图文件

如果您有多个区域设置,请仅使用这些选项​__:

  • standard — 为所有包部署所有静态视图文件。
  • quick — (默认值)可最大限度地缩短部署时间。
  • compact — 节省服务器上的磁盘空间。 在Adobe Commerce版本2.2.4及更早版本中,此设置将使用1的值覆盖scd_threads的值。
stage:
  build:
    SCD_STRATEGY: "compact"

SCD_THREADS

  • 默认 — 自动
  • 版本—Adobe Commerce 2.1.4及更高版本

设置静态内容部署的线程数。 默认值是根据检测到的CPU线程数设置的,不超过4的值。 增加线程数会加快静态内容部署;减少线程数会减慢部署速度。 您可以设置线程值,例如:

stage:
  build:
    SCD_THREADS: 2

要进一步缩短部署时间,请使用配置管理scd-dump命令将静态部署移动到生成阶段。

SCD_USE_BALER

  • 默认值未设置
  • 版本—Adobe Commerce 2.3.0及更高版本

Baler扫描您生成的JavaScript代码并创建优化的JavaScript捆绑包。 将优化的捆绑包部署到您的站点可以减少加载您的站点时的网络请求数并缩短页面加载时间。

设置为true可在执行静态内容部署后运行过滤器。

stage:
  build:
    SCD_USE_BALER: true
NOTE
由于Baler是Alpha版本,因此不建议在生产环境中使用它。

SKIP_COMPOSER_DUMP_AUTOLOAD

  • 默认值未设置
  • 版本—Adobe Commerce 2.1.4及更高版本

设置为true以在Cloud Docker安装期间跳过composer dump-autoload命令。 此变量仅与具有可写文件系统的Cloud Docker容器相关。 在这种情况下,跳过该命令可防止其他命令尝试从已删除的generated目录访问代码时出错。

当Adobe Commerce运行composer dump-autoload时,它将创建带有指向generated文件夹中生成的类的链接的自动加载文件,这在具有只读文件系统的生产环境中不是问题。 但是,对于具有可写文件系统的Cloud Docker安装(仅为使用./vendor/bin/ece-docker build:compose --with-test进行测试和开发而创建),您可以运行bin/magento -n setup:upgrade命令而不使用--keep-generated选项,这将删除generated目录。 如果删除了目录,则composer dump-autoload命令将失败,因为自动加载包含指向已删除目录中的文件的链接。

stage:
  build:
    SKIP_COMPOSER_DUMP_AUTOLOAD: true

SKIP_SCD

  • 默认值未设置
  • 版本—Adobe Commerce 2.1.4及更高版本

设置为true可在生成阶段跳过静态内容部署。

如果您已在使用配置管理的生成阶段部署静态内容,则可以跳过静态内容部署以进行快速生成测试。

在生成阶段,设置SKIP_SCD: false,以便在生成阶段进行静态内容生成,该过程不会影响站点部署或导致不必要的站点停机。 请参阅静态内容部署

stage:
  build:
    SKIP_SCD: false

VERBOSE_COMMANDS

  • 默认值未设置
  • 版本—Adobe Commerce 2.1.4及更高版本

为部署阶段执行的bin/magento个CLI命令启用或禁用Symfony调试详细级别。

NOTE
要使用VERBOSE_COMMANDS控制命令输出中成功和失败的bin/magento CLI命令的详细信息,必须设置MIN_LOGGING_LEVEL debug

选择日志中提供的详细信息级别:

  • -v=正常输出
  • -vv=更多详细输出
  • -vvv =详细输出,非常适用于调试
stage:
  build:
    VERBOSE_COMMANDS: "-vv"
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26