fleetflow-atom
FleetFlowのコア機能を提供するライブラリクレート。
概要
fleetflow-atomは、FleetFlowの中核となる機能を提供します:
- KDLパーサー - KDL設定ファイルの解析
- データモデル - Flow、Service、Stage、Processなどの構造体
- ローダー - プロジェクト全体の設定読み込み
- テンプレートエンジン - 変数展開とテンプレート処理
- ファイル検出 - 自動的な設定ファイルの発見
使用例
use ;
// KDL文字列をパース
let kdl_content = r#"
service "postgres" {
version "16"
}
stage "local" {
service "postgres"
}
"#;
let flow = parse_kdl_string?;
// Flowからサービスにアクセス
if let Some = flow.services.get
主な型
Flow
プロセスの設計図。データベースに格納可能。
Service
コンテナサービスの定義。
Stage
環境(local、dev、stg、prdなど)の定義。
Process
実行中のプロセス情報。データベースに格納可能。
機能
KDLパーサー
KDL形式の設定ファイルを解析してFlowオブジェクトに変換。
use parser;
let flow = parse_kdl_file?;
プロジェクトローダー
プロジェクト全体(複数ファイル)を自動的に読み込み。
use loader;
let flow = load_project?;
テンプレート処理
変数展開とテンプレート機能。
use TemplateProcessor;
let mut processor = new;
processor.add_variable;
let result = processor.render?;
ドキュメント
ライセンス
MIT OR Apache-2.0