Initial commit: add .gitignore and README
This commit is contained in:
54
metrics/collect/collect-deployment-metrics.sh
Executable file
54
metrics/collect/collect-deployment-metrics.sh
Executable file
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Load shared libraries
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
source "$SCRIPT_DIR/../../lib/init.sh"
|
||||
|
||||
# Collect deployment metrics
|
||||
|
||||
set -e
|
||||
|
||||
METRICS_FILE="docs/metrics-data.json"
|
||||
OUTPUT_FILE="docs/metrics-reports/deployment-$(date +%Y-%m-%d).json"
|
||||
|
||||
echo "📊 Collecting Deployment Metrics..."
|
||||
echo ""
|
||||
|
||||
mkdir -p docs/metrics-reports
|
||||
|
||||
# Initialize metrics object
|
||||
cat > "$OUTPUT_FILE" << 'EOF'
|
||||
{
|
||||
"date": "",
|
||||
"deployment": {
|
||||
"deploymentTime": {
|
||||
"baseline": null,
|
||||
"current": null,
|
||||
"reduction": null,
|
||||
"target": 50
|
||||
},
|
||||
"unifiedCICD": {
|
||||
"totalProjects": null,
|
||||
"projectsUsingCICD": null,
|
||||
"percentage": null,
|
||||
"target": 90
|
||||
}
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
# Update date
|
||||
if command -v jq &> /dev/null; then
|
||||
jq ".date = \"$(date -Iseconds)\"" "$OUTPUT_FILE" > "$OUTPUT_FILE.tmp"
|
||||
mv "$OUTPUT_FILE.tmp" "$OUTPUT_FILE"
|
||||
fi
|
||||
|
||||
echo "📝 Deployment metrics template created: $OUTPUT_FILE"
|
||||
echo ""
|
||||
echo "💡 To collect metrics:"
|
||||
echo " 1. Review CI/CD logs for deployment times"
|
||||
echo " 2. Survey projects using unified CI/CD"
|
||||
echo " 3. Calculate average deployment times"
|
||||
echo " 4. Update values in $OUTPUT_FILE"
|
||||
echo " 5. Run: ./scripts/update-metrics.sh deployment"
|
||||
|
||||
Reference in New Issue
Block a user