extraorange / jenkinize_laravel
通过少量步骤在任意Laravel项目中创建CI/CD流水线。
README
Jenkinize Laravel是一个工具,用于简化您Laravel环境的配置和Jenkins部署管道的设置。它使您只需几步即可建立开发、预生产和生产环境。
入门
按照以下说明将“Jenkinize Laravel”集成到现有的或新的Laravel项目中。
先决条件
在开始之前,请确保您有
预设置步骤
- 创建MySQL卷(
project_name_env_mysql
)。 - 创建环境网络(
project_name_env_network
)。 - 使用存储库中提供的
mysql_portainer_custom_template.txt
设置MySQL堆栈。 - 验证
Jenkinsfile
中的配置。 - 将代码推送到存储库,让Jenkins处理其余部分。
安装
要安装“Jenkinize Laravel”,请按照以下步骤操作
-
导航到您的Laravel项目目录。
-
使用Composer将“Jenkinize Laravel”添加到项目中
composer require xtraorange/jenkinize-laravel
-
在Jenkins中创建一个新的多分支管道。
-
选择GitHub作为分支源,并提供您的GitHub凭据。
-
添加您的存储库URL并验证它。
-
将“Discover branches”设置为“All Branches”。
接下来,您需要发布您想要使用的所有资产。您可以通过以下方式发布所有资产:php artisan vendor:publish
或者通过指定它们的标签来发布特定的资产:php artisan vendor:publish --tag=jenkinsfile
php artisan vendor:publish --tag=jenkinize-config
php artisan vendor:publish --tag=docker
php artisan vendor:publish --tag=docker-jenkins
使用
“Jenkinize Laravel”安装后,您可以设置环境和部署管道
- 在
jenkinize.config
文件中为您的每个环境创建一个定义。 - 为每个环境,创建一个相应的
.env.[环境名称]
文件。请勿在此文件中存储敏感信息。 - 为每个环境,在Jenkins中创建一个相应的密钥,用于敏感环境变量值。
(在此处提供更详细的说明)
贡献
如果您想贡献,请将存储库分支并使用功能分支。拉取请求非常受欢迎。
许可证
本项目采用MIT许可证 - 请参阅LICENSE.md文件以获取详细信息。
TODO
- 探索Jenkins中的Docker注册选项。
- 指定Jenkins Docker部署详情。
- 实现适当数据库镜像的自动部署(可能需要创建Docker文件的专用目录?)。
- 细化阶段设置。
- 为Jenkins和其他先决组件编写设置说明。