vbuck/magento-module-bundler
最新稳定版本:1.4.0
Composer 安装命令:
composer require vbuck/magento-module-bundler
包简介
Module bundling utility. Bundles Magento modules from Composer vendor spaces into ZIP artifacts.
README 文档
README
Bundles Magento modules from Composer vendor spaces into ZIP artifacts.
In some cases, a module must be installed using the app/code space, even though it is only configured for Composer
based installation. This utility helps to bundle one or more Composer packages into a single ZIP archive.
Use Cases
- Offering multiple options for installation without manual packaging effort.
- Creating bundles of modules from one or more Composer packages for distribution.
This tool was built to support automated bundling of multiple Composer packages from a meta-package.
Installation
Works as a Composer package to load with your project:
composer config repositories.magento-module-bundler vcs https://github.com/vbuck/magento-module-bundler.git
composer require vbuck/magento-module-bundler:*
Or you can download the standalone CLI tool:
wget https://raw.githubusercontent.com/vbuck/magento-module-bundler/main/bin/module-bundler
chmod +x module-bundler
sudo mv module-bundler /usr/local/bin/
How to Use
Example scenario:
- I need to install a module into
app/codebut it only installs via Composer. - To perform this action, I first need use Composer to download the package.
- I must then copy its content into the
app/codespace using the correct vendor and module name as a path. - I must then remove the original copy from the vendor space, and optionally clean my Composer files.
- I can optionally bundle the moved contents into a ZIP archive for distribution.
I want to automate this process using a single command.
Code Sample
$instance = new \Vbuck\MagentoModuleBundler\Bundler('/path/to/magento/root');
$result = $instance->bundle(
[
'vendor/package1',
'vendor/package2',
'/path/to/other/package',
'package-*',
],
'/path/to/output',
\Vbuck\MagentoModuleBundler\Bundler::BEHAVIOR_INDIVIDUAL_BUNDLES, // or BEHAVIOR_SINGLE_BUNDLE
\Vbuck\MagentoModuleBundler\Bundler::OUTPUT_TYPE_MAGENTO // or OUTPUT_TYPE_COMPOSER
);
if ($result[0]->state === true) {
echo "Module {$result[0]->name} has been bundled";
}
Command-Line Usage
bin/module-bundler --app-root=/path/to/magento \
--package=/path/to/magento/root \
--package=vendor/package1 \
--package=/path/to/other/package \
--package=package-*
--single-bundle
--output-path=/path/to/bundles
Options:
--app-root[=PATH] Optional path to a Magento installation. Defaults to current working directory.
--output-path[=PATH] Optional path to write your bundles. Defaults to current working directory.
--package[=SEARCH] A search string for a package. Can be absolute, relative, package name, wildcard.
--single-bundle Optional flag to bundle all matching packages into a single artifact.
--composer-artifact Optional flag to output the bundle as a Composer artifact instead of a Magento bundle.
Architectural Principles
- Simple: low complexity, few dependencies, "gistable" deployment
- Flexible: can use in a project or as a standalone utility
统计信息
- 总下载量: 413
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-03-13