tschifftner / magento2-deployscripts
该包最新版本(dev-master)没有提供许可证信息。
Magento 2 构建和部署脚本集合
dev-master
2016-11-09 15:02 UTC
Requires
- php: ~5.5.0|~5.6.0|~7.0.0
- magento/magento-composer-installer: *
This package is not auto-updated.
Last update: 2024-09-14 19:14:45 UTC
README
使用 Jenkins / CI 管道部署 Magento2 项目的脚本。这包括打包项目和部署,同时设置数据库、环境等所有必需的变量。
部署脚本基于 @fbrnc 和 AOE (https://github.com/AOEpeople/magento-deployscripts) 为 Magento 1 做的出色工作
部署工作原理
-
将整个 Magento 项目打包成一个构建存档(project.tar.gz)
-
生成的构建存档被复制到中央存储服务器
-
将部署脚本克隆到预发布的/生产服务器上以进行部署
-
执行 deploy.sh,下载并解压 package.tar.gz 并运行 install.sh
magento2-deployscripts/deploy.sh -r /tmp/artifacts/project.tar.gz -e devbox -d -t /var/www/project/devbox/
-
install.sh 设置数据库和环境变量
-
清理旧版本
使用 zettr.phar 定义设置
根据 zettr 文档在 config/settings.csv 中定义配置
- 环境设置
- 数据库更新
- XmlFile 配置
安装
将此包添加到您的 Magento composer.json 中
"require": {
"tschifftner/magento2-deployscripts": "dev-master"
},
要使用 zettr 与 Magento2,您还需要将其添加(只要拉取请求未合并,则需要仓库)
"require": {
"aoepeople/zettr": "@dev"
},
"repositories": {
"0": {
"type": "vcs",
"url": "https://github.com/tschifftner/zettr.git"
}
},
由于 Magento 中存在错误,您目前还需要它
"require": {
"tschifftner/magento2-module-tschifftner-deployhelper": "dev-master"
},
部署(手动或通过 Jenkins 作业)
1) 构建包
-
更新 Magento2 项目源代码到最新版本
-
运行 Shell 命令
bin/composer.phar update --verbose --no-ansi --no-interaction --prefer-source
vendor/tschifftner/magento2-deployscripts/build.sh -f project.tar.gz -b $BUILD_NUMBER
- 归档工件和/或复制到中央存储,如 sftp 或 s3
2) 部署
预发布或生产的部署都是相同的,只是变量不同。
- 将部署脚本克隆到可访问的位置
git clone https://github.com/tschifftner/magento2-deployscripts.git ~/deployscripts
- 确保脚本可执行
chmod +x ~/deployscripts/{deploy,cleanup}.sh
- 部署构建包
# e = environment (staging,production,devbox,etc)
# r = package url
# u = user
# p = password
# t = project dir
~/deployscripts/deploy.sh -e staging -r http://storageserver.com/project.tar.gz -u 'user' -p 'password' -t /var/www/project/ || exit1
- 清理旧版本
~/deployscripts/cleanup.sh -r ~/releases/ || exit1