Fixhub 0.2.1 发布, 基于 Laravel 5.5 开发的开源 Web 自动部署系统

分享 phecho ⋅ 于 2017-09-30 10:33:12 ⋅ 最后回复由 ahkxhyl 2017-10-14 20:21:15 ⋅ 1951 阅读

首先提前祝大家中秋和国庆快乐。言归正传,Fixhub 是一款基于PHP Laravel 5.5框架开发的开源Web自动化部署系统。一年前,我在Laravel china发布了Fixhub第一版,请看链接: https://laravel-china.org/topics/2722/fixhub-an-open-source-web-based-on-the-latest-version-of-laravel-53-automatic-deployment-system 当时收获了很多来自这里的Github star。后来由于操作不慎,我把Fixhub的github仓库删除过一次,相当于star又重新归零,重新上路又收获了200+star。在此感谢Laravel china官方和网友对Fixhub的厚爱。

Fixhub一直是我们团队内部使用的部署系统(我们通过自托管的Gitlab和Fixhub进行无缝集成,完全实现了自动化部署)。

最近我对Fixhub的功能和程序结构方面做了一些更新,也把Laravel从5.3升级到了5.5。

近期更新内容

新功能:

  • 实现多环境部署功能,项目和部署模板里都可以设置多个部署环境
  • 集成OAuth2.0平台接入商,可通过后台进行管理
  • 实现找回密码、新用户账号开通邮件通知功能
  • 新增hooks功能,可实现Slack、邮件和Webhook等第三方服务的集成
  • 新增项目分组的详情页
  • 在管理后台首页显示相关环境变量和组件信息

改进:

  • 重构Notification机制
  • 优化部署详情页,明显区分内置步骤和自定义步骤
  • Gravatar功能可进行关闭
  • 新增 端砚黑 主题
  • 清理issues、nofitySlacks和notifyEmails相关文件
  • 将Laravel框架从5.3升级到5.5
  • 优化API路由结构
  • 升级dotenv、ioredis、socket.io等组件
  • 在部署详情页,将内置部署步骤与手动设置的前、后置任务区分显示
  • 简化部署步骤模板页,调整显示方式,可以更直观地分辨前置、当前、后置任务的执行顺序
  • 调整部分icon

Bug修复:

  • 修复JS内语言不一致的bug
  • 修复部署模板页面的ace报错
  • 修复表单可重复提交的bug
  • 修复编辑项目时会报模板错误的bug
  • 修复CI过程中的CS检查warning

以下是一些简单的系统截图:

一、部署环境
以往我们内部靠建多个项目达到多环境部署
file
现在更方便了,在同一个项目创建多个环境即可
file
file
同样的,部署模板也支持多环境设置
file

二、部署操作
创建上线单,可部署到多个环境
file
上线单可以非常清楚地看到所部署的环境
file

三、社交平台接入
后台管理
file
登录页
file

演示地址:http://fixhub.org/ 感兴趣的朋友可以使用自己的Github账号或者我们提供的演示账号登录体验。
我们的演示账号信息如下:
用户名:fixhub
密码:fixhub

想要体验管理员完整功能的可以告诉我,我可以把你的账号设置为管理员。欢迎大家和拍砖交流,谢谢。

源码地址: https://github.com/Fixhub/Fixhub or http://git.oschina.net/Fixhub/Fixhub

本帖已被设为精华帖!
附言 0  ·  2017-10-09 15:54:22

0.2.1之后更新的主要特性:

1、新增项目克隆、转换为模板的功能
2、新增Audit logs功能

本帖由 MrJing 于 3周前 加精
回复数量: 16
  • Summer MOD A Life-long learner.
    2017-09-30 12:07:12

    感谢开源 :smile:

    @MrJing 晶晶少见的加精哈

  • phecho
    2017-09-30 12:46:35

    谢谢 @Summer@MrJing

  • MrJing MOD
    2017-09-30 13:02:59

    @Summer 大哥,我一定会再勤快一点的,我已经戒掉了游戏
    @phecho 不客气,应得的赞誉

  • Jinrenjie
    2017-09-30 14:34:49 ⋅ via iOS 客户端

    不错,已star

  • forice4kevin
    2017-10-02 00:04:20

    不错的项目,已star. 下午试了一下,上线单没删除功能很不方便,比如配置错误什么的?另外部署服务器因为是单独配置的,如果被删除的话,上线单会报错,感觉这部分逻辑可以再梳理一下.

  • phecho
    2017-10-02 00:12:00

    @forice4kevin 感谢关注。服务器删除上线单会报错的问题在0.2.2版本中修复了。

  • dinghua
    2017-10-04 08:29:47

    @phecho 能分享一下你们的 Laravel 项目的部署步骤吗?

  • dinghua
    2017-10-09 14:09:08

    @phecho 遇到一个奇怪的现象,如果在项目发布的时候,我登录后台去查看,就有很大的可能性发布失败,我不去看一般就不会失败。没有仔细测试,纯属主观感受。

  • dinghua
    2017-10-09 14:09:56

    @phecho 可能需要量子物理来解释 :smiley:

  • MrJing MOD
    2017-10-09 14:52:11

    @dinghua 哈哈,薛定谔式发布吗

  • phecho
    2017-10-09 15:09:34

    @dinghua :+1: 量子物理, 好深奥啊。
    有相关报错信息么?

  • dinghua
    2017-10-09 15:45:05

    file
    就一直显示正在上线

  • phecho
    2017-10-09 15:49:25

    @dinghua 可以改成debug模式,然后看看storage/logs/cli*.log。

  • phecho
    2017-10-09 16:25:47

    1、支持项目克隆和转换为部署模板

    file

    2、新增Audit logs

    file

  • reatang
    2017-10-13 15:55:32

    感谢作者和作者的团队带来的贡献

  • ahkxhyl
    2017-10-14 20:21:15

    谢谢分享 UI让人感觉很舒爽

暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 Emoji 自动补全来咯,可用的 Emoji 请见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
  请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
Ctrl+Enter