Skip to main content

Crate dvcli

Crate dvcli 

Source
Expand description

Develocity CLI Client Library

This crate provides a Rust client for querying Gradle build information from a Develocity server.

§Features

  • Query build results (success/failure, duration, project info)
  • Query deprecation warnings
  • Query build and test failures
  • Supports both JSON and human-readable output formats

§Example

use dvcli::client::DevelocityClient;
use dvcli::config::IncludeOptions;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = DevelocityClient::new(
        "https://develocity.example.com",
        "your-access-key",
        30,
    )?;

    let details = client
        .get_gradle_build_details("abc123xyz", &IncludeOptions::all(), &[])
        .await?;

    println!("Build failed: {}", details.attributes.map(|a| a.has_failed).unwrap_or(false));
    Ok(())
}

Re-exports§

pub use client::DevelocityClient;
pub use config::Config;
pub use config::ConfigBuilder;
pub use config::IncludeOptions;
pub use config::OutputFormat;
pub use error::Error;
pub use error::Result;

Modules§

client
Async HTTP client for the Develocity API.
config
Configuration loading and merging for the CLI.
error
Error types for the Develocity CLI client.
models
Data models for Develocity API responses.
output
Output formatting for the CLI.