KubeBuddy CLI Integration¶
This page shows how to connect Invoke-KubeBuddy to Radar cluster-reports and cluster-configs endpoints.
Authentication¶
Radar uses HTTP Basic auth with WordPress Application Passwords:
- username: your WordPress username
- password: your WordPress Application Password (from Account page)
Set credentials as env vars for KubeBuddy:
$env:KUBEBUDDY_RADAR_API_USER = "<wordpress-username>"
$env:KUBEBUDDY_RADAR_API_PASSWORD = "<wordpress-app-password>"
PowerShell CLI Usage¶
Upload JSON run:
Invoke-KubeBuddy `
-jsonReport `
-RadarUpload `
-RadarEnvironment "prod"
Upload + compare:
Invoke-KubeBuddy `
-jsonReport `
-RadarUpload `
-RadarCompare `
-RadarEnvironment "prod"
Optional overrides:
-RadarApiBaseUrl(defaulthttps://radar.kubebuddy.io/api/kb-radar/v1)-RadarApiUserEnv(defaultKUBEBUDDY_RADAR_API_USER)-RadarApiSecretEnv(defaultKUBEBUDDY_RADAR_API_PASSWORD)
Fetch a saved Radar cluster config:
Invoke-KubeBuddy `
-RadarFetchConfig `
-RadarConfigId "ccfg_12345678-1234-1234-1234-123456789abc"
Docker Entrypoint Usage (run.ps1)¶
Use these env vars:
-e JSON_REPORT="true" \
-e RADAR_UPLOAD="true" \
-e RADAR_COMPARE="true" \
-e RADAR_FETCH_CONFIG="true" \
-e RADAR_CONFIG_ID="ccfg_12345678-1234-1234-1234-123456789abc" \
-e RADAR_ENVIRONMENT="prod" \
-e KUBEBUDDY_RADAR_API_USER="<wordpress-username>" \
-e KUBEBUDDY_RADAR_API_PASSWORD="<wordpress-app-password>"
Validation rules:
RADAR_UPLOAD/RADAR_COMPARErequiresJSON_REPORT=true
Direct API Example (for debugging)¶
$pair = "$($env:KUBEBUDDY_RADAR_API_USER):$($env:KUBEBUDDY_RADAR_API_PASSWORD)"
$token = [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes($pair))
Invoke-RestMethod `
-Method Get `
-Uri "https://radar.kubebuddy.io/api/kb-radar/v1/cluster-reports?page=1&per_page=5" `
-Headers @{ Authorization = "Basic $token" }
See Cluster Reports (Pro), Cluster Configs (Pro), and API Reference for full endpoint details.