distninja

command module
v1.1.0-rc1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 26, 2025 License: Apache-2.0 Imports: 1 Imported by: 0

README

distninja

Build Status Go Report Card License Tag

Introduction

distninja is a distributed build system

Features

  • Graph Database Power - Uses cayley's quad-based storage for complex relationships
  • Schema Support - Structured data with Go struct mapping
  • Rich Queries - Path-based queries for complex dependency analysis
  • Relationship Modeling - Explicit modeling of all Ninja relationships
  • Cycle Detection - Built-in circular dependency detection
  • Performance - Efficient graph traversal and querying

Usage

1. HTTP Server
# Deploy server
distninja serve --http <string> --store <string>
# Test server
go run main.go serve --http :9090 --store /tmp/ninja.db
./script/http.sh
2. gRPC Server
# Deploy server
distninja serve --grpc <string> --store <string>
# Test server
go run main.go serve --grpc :9090 --store /tmp/ninja.db
./script/grpc.sh

APIs

1. HTTP APIs
  • Admin APIs

    • GET /api/v1/health - Get health check
    • GET /api/v1/status - Get server status
  • Build APIs

    • POST /api/v1/builds - Create new build
    • GET /api/v1/builds/stats - Get build statistics
    • GET /api/v1/builds/order - Get topological build order
    • GET /api/v1/builds/{id} - Get specific build
  • Rule APIs

    • POST /api/v1/rules - Create new rule
    • GET /api/v1/rules/{name}/targets - Get targets using a rule
    • GET /api/v1/rules/{name} - Get specific rule
  • Target APIs

    • GET /api/v1/targets - Get all targets
    • GET /api/v1/targets/{path}/dependencies - Get target dependencies
    • GET /api/v1/targets/{path}/reverse_dependencies - Get target reverse dependencies
    • PUT /api/v1/targets/{path}/status - Update target status
    • GET /api/v1/targets/{path} - Get specific target
  • Analysis APIs

    • GET /api/v1/analysis/cycles - Find circular dependencies
  • Debug APIs

    • GET /api/v1/debug/quads - Debug quad information
2. gRPC APIs

TBD

License

Project License can be found here.

Reference

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL