test
This commit is contained in:
parent
bbd675460f
commit
0b799bef84
@ -230,33 +230,53 @@ fi
|
|||||||
# ─────────────────────────────────────────────────────────────────────────────────
|
# ─────────────────────────────────────────────────────────────────────────────────
|
||||||
echo "Step 3/4: Building JSON payload..."
|
echo "Step 3/4: Building JSON payload..."
|
||||||
|
|
||||||
# Convert files array to JSON
|
# Determine which field to populate based on mode
|
||||||
FILES_JSON="[]"
|
if [ "$MODE" = "post-deploy" ]; then
|
||||||
|
# Post-deploy: populate deployed_files, keep drifted_files empty
|
||||||
|
DEPLOYED_FILES_JSON="["
|
||||||
|
DRIFTED_FILES_JSON="[]"
|
||||||
|
|
||||||
if [ ${#CHANGED_FILES[@]} -gt 0 ]; then
|
if [ ${#CHANGED_FILES[@]} -gt 0 ]; then
|
||||||
FILES_JSON="["
|
|
||||||
for i in "${!CHANGED_FILES[@]}"; do
|
for i in "${!CHANGED_FILES[@]}"; do
|
||||||
if [ "$i" -gt 0 ]; then
|
if [ "$i" -gt 0 ]; then
|
||||||
FILES_JSON+=","
|
DEPLOYED_FILES_JSON+=","
|
||||||
fi
|
fi
|
||||||
# Escape special characters in filenames for JSON
|
|
||||||
escaped_name="${CHANGED_FILES[$i]//\\/\\\\}"
|
escaped_name="${CHANGED_FILES[$i]//\\/\\\\}"
|
||||||
escaped_name="${escaped_name//\"/\\\"}"
|
escaped_name="${escaped_name//\"/\\\"}"
|
||||||
FILES_JSON+="{\"name\":\"$escaped_name\"}"
|
DEPLOYED_FILES_JSON+="{\"name\":\"$escaped_name\"}"
|
||||||
done
|
done
|
||||||
FILES_JSON+="]"
|
fi
|
||||||
|
DEPLOYED_FILES_JSON+="]"
|
||||||
|
else
|
||||||
|
# Drift-check mode: populate drifted_files, keep deployed_files empty
|
||||||
|
DEPLOYED_FILES_JSON="[]"
|
||||||
|
DRIFTED_FILES_JSON="["
|
||||||
|
|
||||||
|
if [ ${#CHANGED_FILES[@]} -gt 0 ]; then
|
||||||
|
for i in "${!CHANGED_FILES[@]}"; do
|
||||||
|
if [ "$i" -gt 0 ]; then
|
||||||
|
DRIFTED_FILES_JSON+=","
|
||||||
|
fi
|
||||||
|
escaped_name="${CHANGED_FILES[$i]//\\/\\\\}"
|
||||||
|
escaped_name="${escaped_name//\"/\\\"}"
|
||||||
|
DRIFTED_FILES_JSON+="{\"name\":\"$escaped_name\"}"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
DRIFTED_FILES_JSON+="]"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Generate ISO 8601 timestamp
|
# Generate ISO 8601 timestamp
|
||||||
TIMESTAMP=$(date -u +'%Y-%m-%dT%H:%M:%SZ')
|
TIMESTAMP=$(date -u +'%Y-%m-%dT%H:%M:%SZ')
|
||||||
|
|
||||||
# Build complete JSON status
|
# Build complete JSON status with both fields
|
||||||
STATUS_JSON=$(cat <<EOF
|
STATUS_JSON=$(cat <<EOF
|
||||||
{
|
{
|
||||||
"repo": "$REPO_NAME",
|
"repo": "$REPO_NAME",
|
||||||
"server": "$SERVER_NAME",
|
"server": "$SERVER_NAME",
|
||||||
"sync_status": "$SYNC_STATUS",
|
"sync_status": "$SYNC_STATUS",
|
||||||
"drift_count": $DRIFT_COUNT,
|
"drift_count": $DRIFT_COUNT,
|
||||||
"files": $FILES_JSON,
|
"deployed_files": $DEPLOYED_FILES_JSON,
|
||||||
|
"drifted_files": $DRIFTED_FILES_JSON,
|
||||||
"last_check": "$TIMESTAMP"
|
"last_check": "$TIMESTAMP"
|
||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user