首页
/ fluentci 的项目扩展与二次开发

fluentci 的项目扩展与二次开发

2025-06-25 01:39:46作者:裘旻烁

项目的基础介绍

Fluent CI 是一个开源的持续集成和持续部署(CI/CD)工具,它允许开发者在本地或服务器上构建、测试和部署代码。Fluent CI 是基于 Dagger、Wasm 和 Deno 构建的自主托管解决方案,完全免费且开源。它不仅提供了一套预构建的管道,还允许用户利用这些管道而无需从头开始编写 CI/CD 配置。

项目核心功能

  • 单命令管理:通过单个命令即可在本地管理 CI/CD 管道。
  • 到处运行:可以在任何机器上运行管道,无论是本地、远程、基于云的服务器、物理服务器还是虚拟机,支持 x86 和 ARM 架构。
  • 导出到 CI 提供商:可以将 Fluent CI 管道导出到 GitHub Actions、GitLab CI、Azure Pipelines、AWS CodePipeline、CircleCI 等任何 CI 提供商。
  • Web UI:通过基于 Web 的用户界面管理管道,例如 FluentCI Studio。
  • 可重用管道注册:在 FluentCI 注册表中搜索可重用管道。
  • Nix 支持:(可选)在 Nix 环境中而不是 Docker 中运行管道。
  • 可扩展性:通过插件支持扩展,可以用 TypeScript、Rust 或任何可以编译到 WebAssembly 的语言编写自己的插件。

项目使用的框架或库

Fluent CI 主要使用以下技术栈:

  • Deno:一种简单、现代且安全的 JavaScript 运行时,用于执行 TypeScript 代码。
  • Dagger:一个用于定义和执行管道的框架。
  • WebAssembly:一种可以在网页上运行的低级语言,用于编写高性能的插件。

项目的代码目录及介绍

项目的代码目录结构大致如下:

fluentci/
├── .github/              # GitHub 专用配置文件
├── .vscode/              # Visual Studio Code 配置文件
├── fixtures/             # 测试用例
├── src/                  # 源代码目录
├── tests/                # 测试代码目录
├── .gitignore            # Git 忽略文件
├── CODE_OF_CONDUCT.md    # 行为准则
├── CONTRIBUTING.md       # 贡献指南
├── LICENSE               # 许可证文件
├── README.md             # 项目自述文件
├── dagger.json           # Dagger 配置文件
├── deno.json             # Deno 配置文件
├── deno.lock             # Deno 锁文件
├── deps.ts               # 依赖文件
├── flake.lock            # Flake 锁文件
├── flake.nix             # Flake Nix 配置
├── import_map.json       # 模块映射文件
├── install.sh            # 安装脚本
├── main.ts               # 主程序文件
├── tea.yaml              # Tea 配置文件

对项目进行扩展或者二次开发的方向

  1. 插件开发:根据需要为 Fluent CI 开发新的插件,以支持更多的功能和集成。
  2. 功能增强:在现有的功能基础上进行增强,比如提升性能、增加新的管道类型、优化用户体验等。
  3. 平台适配:扩展 Fluent CI 对不同操作系统和架构的支持。
  4. Web UI 和体验改进:改进 FluentCI Studio 的用户界面和用户体验。
  5. 文档完善:增加更多样化的文档,帮助用户更好地理解和使用项目。
登录后查看全文
热门项目推荐