Skip to content

Output Formats

PipelineConductor supports multiple output formats for compliance reports.

Available Formats

Format Flag Best For
JSON --format json Programmatic processing, APIs
Markdown --format markdown Human review, documentation
SARIF --format sarif GitHub Security integration
CSV --format csv Spreadsheet analysis

JSON Format

Default format with full compliance details.

pipelineconductor scan --orgs myorg --format json

Structure

{
  "timestamp": "2025-01-15T10:30:00Z",
  "summary": {
    "total": 42,
    "compliant": 38,
    "nonCompliant": 4,
    "skipped": 0,
    "errors": 0,
    "complianceRate": 90.48
  },
  "repos": [
    {
      "repo": {
        "fullName": "myorg/api-server",
        "name": "api-server",
        "owner": "myorg",
        "defaultBranch": "main",
        "primaryLanguage": "Go",
        "archived": false,
        "fork": false
      },
      "compliant": true,
      "violations": [],
      "warnings": [],
      "scanTimeMs": 150
    },
    {
      "repo": {
        "fullName": "myorg/legacy-tool",
        "name": "legacy-tool",
        "owner": "myorg"
      },
      "compliant": false,
      "violations": [
        {
          "policy": "ci/workflow-required",
          "rule": "has-workflow",
          "message": "No CI/CD workflow found",
          "severity": "high",
          "remediation": "Create a .github/workflows/ci.yml file"
        }
      ],
      "warnings": [],
      "scanTimeMs": 100
    }
  ],
  "scanDurationMs": 1234,
  "config": {
    "orgs": ["myorg"],
    "profile": "default"
  }
}

Use Cases

  • CI/CD pipeline integration
  • Custom reporting tools
  • Data analysis scripts
  • API responses

Markdown Format

Human-readable format with visual indicators.

pipelineconductor scan --orgs myorg --format markdown

Example Output

# Compliance Report

**Generated:** 2025-01-15T10:30:00Z
**Duration:** 1234ms
**Profile:** default

## Summary

| Metric | Value |
|--------|-------|
| Total Repos | 42 |
| Compliant | 38 |
| Non-Compliant | 4 |
| Skipped | 0 |
| Errors | 0 |
| Compliance Rate | 90.5% |

## Organizations

- myorg

## Repositories

### ✅ PASS myorg/api-server

*Scanned in 150ms*

### ❌ FAIL myorg/legacy-tool

**Violations:**

- 🟠 **[high]** ci/workflow-required: No CI/CD workflow found
  - 💡 Remediation: Create a .github/workflows/ci.yml file

*Scanned in 100ms*

---

*Generated by [PipelineConductor](https://github.com/grokify/pipelineconductor)*

Visual Indicators

Icon Meaning
Compliant repository
Non-compliant repository
⚠️ Warning or error
⏭️ Skipped repository
🔴 Critical severity
🟠 High severity
🟡 Medium severity
🔵 Low severity
Info severity
💡 Remediation hint

Use Cases

  • Team reviews
  • Documentation
  • Pull request comments
  • Slack/Teams notifications

SARIF Format

Static Analysis Results Interchange Format for GitHub Security.

pipelineconductor scan --orgs myorg --format sarif

See SARIF Integration for details.

CSV Format

Comma-separated values for spreadsheet analysis.

pipelineconductor scan --orgs myorg --format csv

Example Output

repo,org,compliant,violation_count,warning_count,error,skipped,skip_reason,scan_time_ms
myorg/api-server,myorg,true,0,0,,,false,,150
myorg/legacy-tool,myorg,false,1,0,,,false,,100
myorg/archived-repo,myorg,true,0,0,,,true,Repository is archived,0

Columns

Column Description
repo Full repository name
org Organization name
compliant Whether repo is compliant
violation_count Number of violations
warning_count Number of warnings
error Error message if scan failed
skipped Whether repo was skipped
skip_reason Reason for skipping
scan_time_ms Scan duration in milliseconds

Use Cases

  • Excel/Google Sheets analysis
  • Pivot tables and charts
  • Data warehousing
  • Executive reporting

Format Selection

By Use Case

Need Recommended Format
Automation JSON
Team review Markdown
GitHub Security SARIF
Spreadsheets CSV
Archival JSON
Quick check Markdown

In Configuration

Set default format in config file:

# ~/.pipelineconductor.yaml
format: markdown

Override at Runtime

# Override config file setting
pipelineconductor scan --orgs myorg --format sarif

Saving Reports

Write to file instead of stdout:

# JSON
pipelineconductor scan --orgs myorg --format json --output report.json

# Markdown
pipelineconductor scan --orgs myorg --format markdown --output report.md

# SARIF
pipelineconductor scan --orgs myorg --format sarif --output results.sarif

# CSV
pipelineconductor scan --orgs myorg --format csv --output compliance.csv

See Also