Configuration¶
Learn how to configure PipeOps CLI for your specific needs and environment.
Configuration File¶
PipeOps CLI stores configuration in ~/.pipeops.json by default. You can specify a custom location using the --config flag or PIPEOPS_CONFIG_PATH environment variable.
Configuration Structure¶
{
"version": {
"version": "1.0.0"
},
"updates": {
"last_update_check": "2024-01-01T00:00:00Z",
"skip_update_check": false
},
"service_account_token": "your-token-here",
"api_url": "https://api.pipeops.io",
"log_level": "info",
"output_format": "text"
}
Environment Variables¶
Configure PipeOps CLI using environment variables:
Authentication¶
# Service account token
export PIPEOPS_TOKEN="your-service-account-token"
# API endpoint
export PIPEOPS_API_URL="https://api.pipeops.io"
Configuration¶
# Custom config file location
export PIPEOPS_CONFIG_PATH="$HOME/.pipeops-custom.json"
# Log level
export PIPEOPS_LOG_LEVEL="debug" # debug, info, warn, error
# Output format
export PIPEOPS_OUTPUT_FORMAT="json" # text, json
Agent Configuration¶
# Cluster settings
export CLUSTER_NAME="my-cluster"
export CLUSTER_TYPE="k3s" # k3s, minikube, k3d, kind, auto
# Monitoring
export INSTALL_MONITORING="true" # true, false
# K3s settings
export K3S_URL="https://192.168.1.100:6443"
export K3S_TOKEN="your-k3s-token"
Configuration Options¶
API Configuration¶
# Set custom API endpoint
pipeops --config ~/.pipeops.json config set api_url "https://custom-api.pipeops.io"
# Set timeout
pipeops --config ~/.pipeops.json config set timeout "30s"
Logging Configuration¶
# Set log level
pipeops --config ~/.pipeops.json config set log_level "debug"
# Set log format
pipeops --config ~/.pipeops.json config set log_format "json"
Update Configuration¶
# Disable automatic update checks
pipeops --config ~/.pipeops.json config set skip_update_check true
# Set update check interval
pipeops --config ~/.pipeops.json config set update_check_interval "24h"
Docker Configuration¶
Environment Variables¶
# Run with custom configuration
docker run --rm -it \
-e PIPEOPS_TOKEN="your-token" \
-e PIPEOPS_API_URL="https://api.pipeops.io" \
-e PIPEOPS_LOG_LEVEL="debug" \
ghcr.io/pipeopshq/pipeops-cli:latest auth status
Docker Compose¶
version: '3.8'
services:
pipeops-cli:
image: ghcr.io/pipeopshq/pipeops-cli:latest
environment:
- PIPEOPS_TOKEN=${PIPEOPS_TOKEN}
- PIPEOPS_API_URL=https://api.pipeops.io
- PIPEOPS_LOG_LEVEL=info
volumes:
- ~/.pipeops.json:/root/.pipeops.json
command: ["project", "list"]
Security Configuration¶
Token Management¶
# Store token securely
export PIPEOPS_TOKEN="$(cat ~/.pipeops-token)"
# Use keychain (macOS)
security add-generic-password -a "pipeops" -s "pipeops-token" -w "your-token"
# Retrieve from keychain
export PIPEOPS_TOKEN="$(security find-generic-password -a "pipeops" -s "pipeops-token" -w)"
TLS Configuration¶
# Skip TLS verification (not recommended for production)
export PIPEOPS_TLS_INSECURE_SKIP_VERIFY="true"
# Custom CA certificate
export PIPEOPS_TLS_CA_CERT="/path/to/ca.crt"
Output Configuration¶
JSON Output¶
# Global JSON output
pipeops --json project list
# Command-specific JSON output
pipeops project list --json
Verbose Output¶
Custom Output Format¶
# Set default output format
export PIPEOPS_OUTPUT_FORMAT="json"
# Override per command
pipeops project list --format text
Update and Maintenance Configuration¶
Update Settings¶
Configure how PipeOps CLI handles updates:
# Enable/disable automatic updates
pipeops config set auto_update true
# Set update channel
pipeops config set update_channel "stable" # stable, beta, alpha
# Set update check interval
pipeops config set update_check_interval "24h" # 1h, 24h, 7d
# Skip version-specific updates
pipeops config set skip_versions "v1.0.1,v1.0.2"
# Enable pre-release updates
pipeops config set allow_prerelease true
Update Notifications¶
Control update notification behavior:
# Disable update notifications
pipeops config set show_update_notifications false
# Set notification frequency
pipeops config set notification_frequency "weekly" # daily, weekly, monthly
# Enable update reminders
pipeops config set update_reminders true
Manual Update Management¶
# Check for updates without installing
pipeops update check
# Update to latest version
pipeops update
# Update to specific version
pipeops update --version v1.2.0
# List available versions
pipeops update list-versions
# View update history
pipeops update history
# Rollback to previous version
pipeops update rollback
Update Verification¶
# Verify update integrity
pipeops update verify
# Check update signatures
pipeops update check-signature
# Validate installation
pipeops update validate
Backup and Recovery¶
# Create configuration backup before updates
pipeops config backup
# Restore configuration after issues
pipeops config restore
# Export configuration
pipeops config export --file backup.json
# Import configuration
pipeops config import --file backup.json
Proxy Configuration¶
HTTP Proxy¶
# Set HTTP proxy
export HTTP_PROXY="http://proxy.company.com:8080"
export HTTPS_PROXY="http://proxy.company.com:8080"
# Set proxy authentication
export HTTP_PROXY="http://user:[email protected]:8080"
SOCKS Proxy¶
Enterprise Configuration¶
Custom Endpoints¶
# Set custom API endpoint
export PIPEOPS_API_URL="https://api.company.pipeops.io"
# Set custom authentication endpoint
export PIPEOPS_AUTH_URL="https://auth.company.pipeops.io"
Corporate Certificates¶
# Set custom CA certificate
export PIPEOPS_TLS_CA_CERT="/etc/ssl/certs/company-ca.crt"
# Set client certificate
export PIPEOPS_TLS_CLIENT_CERT="/etc/ssl/certs/client.crt"
export PIPEOPS_TLS_CLIENT_KEY="/etc/ssl/certs/client.key"
Configuration Validation¶
Validate Configuration¶
Test Connection¶
Configuration Examples¶
Development Environment¶
# Development configuration
export PIPEOPS_API_URL="https://dev-api.pipeops.io"
export PIPEOPS_LOG_LEVEL="debug"
export PIPEOPS_OUTPUT_FORMAT="json"
export PIPEOPS_SKIP_UPDATE_CHECK="true"
Production Environment¶
# Production configuration
export PIPEOPS_API_URL="https://api.pipeops.io"
export PIPEOPS_LOG_LEVEL="warn"
export PIPEOPS_OUTPUT_FORMAT="text"
export PIPEOPS_AUTO_UPDATE="true"
CI/CD Environment¶
# CI/CD configuration
export PIPEOPS_TOKEN="${PIPEOPS_SERVICE_TOKEN}"
export PIPEOPS_API_URL="https://api.pipeops.io"
export PIPEOPS_LOG_LEVEL="error"
export PIPEOPS_OUTPUT_FORMAT="json"
export PIPEOPS_SKIP_UPDATE_CHECK="true"
Maintenance and Cleanup¶
Regular Maintenance¶
Perform regular maintenance to keep PipeOps CLI running smoothly:
# Clean cache files
pipeops cache clean
# Remove old log files
pipeops logs clean --older-than 30d
# Compact configuration
pipeops config compact
# Verify installation integrity
pipeops doctor
Cache Management¶
# View cache usage
pipeops cache status
# Clear specific cache
pipeops cache clear --type api # api, auth, updates
# Set cache limits
pipeops config set cache_size_limit "100MB"
pipeops config set cache_ttl "1h"
Log Management¶
# Set log rotation
pipeops config set log_max_size "10MB"
pipeops config set log_max_age "7d"
pipeops config set log_max_backups 5
# View log locations
pipeops logs location
# Archive old logs
pipeops logs archive --older-than 90d
Performance Optimization¶
# Optimize configuration
pipeops config optimize
# Enable performance monitoring
pipeops config set enable_metrics true
# Set connection pooling
pipeops config set max_connections 10
pipeops config set connection_timeout "30s"
� Uninstall Configuration¶
Pre-uninstall Checklist¶
Before uninstalling, save important data:
# Export all configurations
pipeops config export-all --output ~/pipeops-backup/
# List active connections
pipeops server list --active
# Export project settings
pipeops project export-all --format json
# Create complete backup
pipeops backup create --include-all
Clean Uninstall¶
Remove all traces of PipeOps CLI:
# Remove configuration files
rm -rf ~/.pipeops*
# Remove cache directories
rm -rf ~/.cache/pipeops/
rm -rf ~/.local/share/pipeops/
# Remove from system PATH
# Edit shell profile files and remove PipeOps entries
# Verify complete removal
find / -name "*pipeops*" 2>/dev/null | grep -v "/proc"
Selective Cleanup¶
Remove specific components:
# Remove only cache
pipeops cache clean --all
# Remove logs but keep config
rm -rf ~/.local/share/pipeops/logs/
# Reset to default configuration
pipeops config reset --keep-auth
� Troubleshooting Configuration¶
Common Issues¶
Configuration Not Loading¶
# Check config file location
echo $PIPEOPS_CONFIG_PATH
# Check config file permissions
ls -la ~/.pipeops.json
# Validate config file
pipeops config validate
# Reset corrupted config
pipeops config reset
Environment Variables Not Working¶
# Check environment variables
env | grep PIPEOPS
# Test configuration precedence
pipeops config debug
# Reload environment
source ~/.bashrc # or ~/.zshrc
Authentication Issues¶
# Check token validity
echo $PIPEOPS_TOKEN
# Test authentication
pipeops auth status
# Clear auth cache
pipeops auth clear-cache
# Re-authenticate
pipeops auth login
Performance Issues¶
# Check system resources
pipeops system status
# Monitor API calls
pipeops config set debug_api_calls true
# Optimize network settings
pipeops config set request_timeout "60s"
pipeops config set retry_attempts 3
Related Documentation¶
- Installation - Installation guide
- Quick Start - Getting started
- Authentication Commands - Authentication management
- Troubleshooting - Common issues