sourcebroker/deployer-extended-magento2

使用 deployer.org 部署 Magento2。

1.0.0 2022-01-26 11:48 UTC

This package is auto-updated.

Last update: 2024-08-26 17:41:39 UTC


README

它做什么?

本包为使用 deployer (deployer.org) 部署 Magento2 提供部署任务,并额外提供了同步数据库和媒体文件的任务。

依赖项

本包依赖于以下包

安装

  1. 使用 composer 安装包

    composer require sourcebroker/deployer-extended-magento2
    

    注意!此命令将安装 deployer/dist 包,它将在 ./vendor/bin/dep 中创建二进制文件。您应使用此二进制文件来运行部署。建议您在 ~/.profile 中设置别名 dep="php ./vendor/bin/dep",以便能够使用常规 "dep" 命令运行 deployer。

  2. 如果您将 deployer 作为 composer 包使用,请在您的 deploy.php 中添加以下行

    new \SourceBroker\DeployerExtendedMagento2\Loader();
    
  3. 如果您将 deployer 作为 phar 使用,请在您的 deploy.php 中添加以下行

    require_once(__DIR__ . '/vendor/sourcebroker/deployer-loader/autoload.php');
    new \SourceBroker\DeployerExtendedMagento2\Loader();
    
  4. 从您的 deploy.php 中移除任务 "deploy"。否则,您将覆盖 deployer/deploy/task/deploy.php 中定义的部署任务。

  5. 基于 phar 的 deploy.php 示例文件

    <?php
    
    namespace Deployer;
    
    require_once(__DIR__ . '/vendor/sourcebroker/deployer-loader/autoload.php');
    new \SourceBroker\DeployerExtendedMagento2\Loader();
    
    set('repository', 'git@my-git:my-project.git');
    
    host('live')
        ->hostname('111.111.111.111')
        ->user('www-data')
        ->set('public_urls', ['http://www.example.com/'])
        ->set('deploy_path', '/var/www/example.com.live');
    
    host('beta')
        ->hostname('111.111.111.111')
        ->user('www-data')
        ->set('public_urls', ['http://beta.example.com/'])
        ->set('deploy_path', '/var/www/example.com.beta');
    
    host('local')
        ->set('public_urls', ['http://example-com.ddev.site/'])
        ->set('deploy_path', getcwd());
    

注意 host('local'); 的声明,这对于数据库任务声明域名替换和数据库转储的路径是必需的。

Magento2 的特殊任务

magento:deploy:git_checkout

如果我们使用 composer 安装 Magento2,那么在 pub/ 文件夹中会有一些文件,如 '.htaccess' 或 'index.php',我们有时想要更改它们。不幸的是,在克隆仓库之后的 composer 安装步骤中,pub/ 文件将用 vendor/magento/magento2-base 中的文件覆盖。

此任务允许对在 'git_checkout_items' 参数中定义的文件/文件夹执行检出。因此,如果您更改了 pub/.htaccess,它将被还原。默认情况下,'git_checkout_items' 参数包含项目 'pub/.htaccess'。