flow.ci

开源持续集成解决方案
授权协议 Apache
开发语言 Java
所属分类 开发工具、 持续集成系统(CI/CD)
软件类型 开源软件
地区 国产
投 递 者 翟奇逸
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

flow.ci 是国内首套开源持续集成(CI) 解决方案,帮助企业团队实现开发流程(build-test-deploy)自动化,快速持续交付高质量软件。

flowci 的设计目标是通过简单易用的 CI 产品,加强公司产品迭代,提升产品功能满意度和可用性,快速持续交付高质量软件。

功能特性:

  • 界面化配置,简单易用

  • 集成能力( Docker、FASTLANE、Slack、钉钉 )

  • 工作流插件,提供官方插件,可自定义插件

  • 数据统计分析能力( 构建数据全掌握,方便项目管理 )

  • 分布式构建

  • 与容器云平台集成能力

安装部署:

请阅读安装部署文档:

整体架构:

flowci 主要分为三个部分,如下图所示:


flow Front End:

flowci 的前端部分,现阶段主要为 web 页面。

后期会提供命令行工具,IDE 插件等

flow API:

此服务主要提供 flowci 的基础服务,如 flow 管理,job 管理,用户管理等。

flow Control Center:

flowci Agent 控制中心(简称 CC),主要包括控制 Agent 状态,命令分发,Agent 配置管理等功能。

  • 最近遇到安卓工程的CI在跑完后概率性出现卡住的现象。搜索相关资料发现Gradle工程默认情况下会开启守护进程(Daemon)进行构建,于是猜想可能是问题原因。 禁用守护进程的方法: 通过环境变量: 添加标志-Dorg.gradle.daemon=false到GRADLE_OPTS环境变量 通过build.properties文件: 添加org.gradledaemon=false到%GRADLE_

 相关资料
  • translated_page: https://github.com/PX4/Devguide/blob/master/en/test_and_ci/continous_integration.md translated_sha: 95b39d747851dd01c1fe5d36b24e59ec865e323e PX4 Continuous Integration PX4 builds and

  • 我们做的还不够好,先占个坑。 欢迎贡献章节。

  • 注意有关编写测试的建议, 请参阅 Testing Your Code. Why? 与 Kent Beck 一起撰写关于 持续集成 (简称 : CI ) 的 Martin Fowler 对 CI 进行了如下的描述: 持续集成是一种软件开发实践,团队成员经常整合他们的工作,通常每个人至少每天集成一次 - 导致每天进行多次集成。 每个集成都通过自动构建(包括测试)进行验证,以尽快检测集成错误。 许多团队

  • 对应于 Ruby 的一个或多个版本,你很轻松就可以测试你的网站构建。以下指引将展示怎样在 Travis 上建立一个免费的,集成了处理 pull 请求的 GitHub 的构建环境。如果你使用私有代码库的话,也有相应的付费选择。 1. 启用 Travis 以及 Github 启用 Travis 来构建你的 Github 代码库非常简单: 前往你在 travis-ci.org 的个人档案: https:

  • 持续集成的目的,是让产品可以快速迭代,同时还能保持高质量。它的核心措施是,代码集成到主干之前,必须通过自动化测试。只要有一个测试用例失败,就不能集成。由于我们的代码托管在github上面,所以选择Travis CI来做持续集成是一个不错的选择。 要触发构建工作,需要在项目根目录下面添加一个.travis.yml的文件: sudo: required services: - docker e

  • 虽然以下示例中使用在Travis CI,但原则上应该,也可以直接转移到其他持续集成提供商. 以下是Travis CI的.travis.yml示例,确保配置了mdbook build和mdbook test运行成功。加快CI运转时间的关键是缓存mdbook的安装,以便您可以不用每次CI运行就编译一次mdbook。 language: rust sudo: false cache: - carg

  • translated_page: https://github.com/PX4/Devguide/blob/master/en/test_and_ci/jenkins_ci.md translated_sha: 95b39d747851dd01c1fe5d36b24e59ec865e323e Jenkins CI Jenkins continuous integration server on S

  • 它们还提供了一个警告:如果您能够持续部署到测试系统,有时也会使用术语“持续部署”。 这一切让我很困惑。任何更详细的解释(或附带一个例子)都是赞赏的!