mahimahi/gitlab-deploy

通过利用 Gitlab 网页钩子,帮助自动化项目部署到服务器

v0.3.6 2017-07-04 10:51 UTC

This package is not auto-updated.

Last update: 2024-09-27 23:22:09 UTC


README

git-deploy-laravel 通过接收从您的代码库服务器的推送事件消息来自动获取项目代码来帮助部署。

这应该可以在 Laravel 5.x 中开箱即用,使用来自 GitHub 和 GitLab 服务器的 webhook。

这是一个帮助我们常见工作流程模式的内部工具,但请随意借用、更改和改进。

安装

步骤 1

将以下内容添加到您的 composer.json 文件中,然后按正常方式更新您的 composer

{
    "require" : {
        "orphans/git-deploy-laravel" : "dev-master"
    }
}

或者运行

composer require orphans/git-deploy-laravel

步骤 2

将以下行添加到您的 config/app.php 文件中的 providers

Orphans\GitDeploy\GitDeployServiceProvider::class,

步骤 3

/git-deploy 路由添加到 CSRF 异常中,以便您的代码库主机可以发送消息到您的项目。

app/Http/Middleware/VerifyCsrfToken.php 文件中添加

protected $except = [
    'git-deploy',
];

使用方法

http://your.website.url/git-deploy 在 GitHub/GitLab 项目中添加 webhook,此包将处理其余部分。webhook 应在推送事件上触发。

您的网站将自动从代码库管理器接收 POST 消息并执行 Git pull。

配置

大多数情况下,该包将找到正确的 Git 仓库和 Git 可执行文件,但我们仍然建议发布我们的配置,因为它将让您启用额外的安全选项和电子邮件通知。

要添加自定义配置,请运行

php artisan vendor:publish --provider="Orphans\GitDeploy\GitDeployServiceProvider"

然后编辑 /config/gitdeploy.php,它已经被很好地注释。

未来计划

  • 分支管理(即仅在更改活动分支时触发)。
  • 在阻止 pull 的代码冲突上发送电子邮件报告。