2025-02-04 12:23:20 +00:00
|
|
|
# Copyright (c) 2021-2025 community-scripts ORG
|
|
|
|
# Author: michelroegl-brunner
|
|
|
|
# License: MIT | https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/LICENSE
|
|
|
|
|
|
|
|
post_to_api() {
|
|
|
|
|
|
|
|
if ! command -v curl &> /dev/null; then
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$DIAGNOSTICS" = "no" ]; then
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -z "$RANDOM_UUID" ]; then
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
local API_URL="http://api.community-scripts.org/upload"
|
|
|
|
local pve_version="not found"
|
|
|
|
pve_version=$(pveversion | awk -F'[/ ]' '{print $2}')
|
|
|
|
|
|
|
|
JSON_PAYLOAD=$(cat <<EOF
|
|
|
|
{
|
|
|
|
"ct_type": $CT_TYPE,
|
|
|
|
"type":"lxc",
|
|
|
|
"disk_size": $DISK_SIZE,
|
|
|
|
"core_count": $CORE_COUNT,
|
|
|
|
"ram_size": $RAM_SIZE,
|
|
|
|
"os_type": "$var_os",
|
|
|
|
"os_version": "$var_version",
|
|
|
|
"disableip6": "$DISABLEIP6",
|
|
|
|
"nsapp": "$NSAPP",
|
|
|
|
"method": "$METHOD",
|
|
|
|
"pve_version": "$pve_version",
|
|
|
|
"status": "installing",
|
|
|
|
"random_id": "$RANDOM_UUID"
|
|
|
|
}
|
|
|
|
EOF
|
|
|
|
)
|
|
|
|
|
|
|
|
RESPONSE=$(curl -s -o response.txt -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
|
|
|
|
-H "Content-Type: application/json" \
|
|
|
|
-d "$JSON_PAYLOAD") || true
|
|
|
|
}
|
|
|
|
|
|
|
|
post_to_api_vm() {
|
|
|
|
|
|
|
|
DIAGNOSTICS=$(grep -i "^DIAGNOSTICS=" /usr/local/community-scripts/diagnostics | awk -F'=' '{print $2}')
|
|
|
|
if ! command -v curl &> /dev/null; then
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$DIAGNOSTICS" = "no" ]; then
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
if [ -z "$RANDOM_UUID" ]; then
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
local API_URL="http://api.community-scripts.org/upload"
|
|
|
|
local pve_version="not found"
|
|
|
|
pve_version=$(pveversion | awk -F'[/ ]' '{print $2}')
|
|
|
|
|
|
|
|
DISK_SIZE_API=${DISK_SIZE%G}
|
|
|
|
|
|
|
|
JSON_PAYLOAD=$(cat <<EOF
|
|
|
|
{
|
|
|
|
"ct_type": 2,
|
|
|
|
"type":"vm",
|
|
|
|
"disk_size": $DISK_SIZE_API,
|
|
|
|
"core_count": $CORE_COUNT,
|
|
|
|
"ram_size": $RAM_SIZE,
|
|
|
|
"os_type": "$var_os",
|
|
|
|
"os_version": "$var_version",
|
|
|
|
"disableip6": "",
|
|
|
|
"nsapp": "$NSAPP",
|
|
|
|
"method": "$METHOD",
|
|
|
|
"pve_version": "$pve_version",
|
|
|
|
"status": "installing",
|
|
|
|
"random_id": "$RANDOM_UUID"
|
|
|
|
}
|
|
|
|
EOF
|
|
|
|
)
|
|
|
|
|
|
|
|
RESPONSE=$(curl -s -o response.txt -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
|
|
|
|
-H "Content-Type: application/json" \
|
|
|
|
-d "$JSON_PAYLOAD") || true
|
|
|
|
}
|
|
|
|
|
|
|
|
POST_UPDATE_DONE=false
|
|
|
|
post_update_to_api() {
|
|
|
|
|
|
|
|
if ! command -v curl &> /dev/null; then
|
|
|
|
return
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ "$POST_UPDATE_DONE" = true ]; then
|
|
|
|
return 0
|
|
|
|
fi
|
|
|
|
local API_URL="http://api.community-scripts.org/upload/updatestatus"
|
|
|
|
local status="${1:-failed}"
|
2025-02-05 15:29:19 +00:00
|
|
|
local error="${2:-No error message}"
|
2025-02-04 12:23:20 +00:00
|
|
|
|
|
|
|
JSON_PAYLOAD=$(cat <<EOF
|
|
|
|
{
|
|
|
|
"status": "$status",
|
|
|
|
"error": "$error",
|
|
|
|
"random_id": "$RANDOM_UUID"
|
|
|
|
}
|
|
|
|
EOF
|
|
|
|
)
|
|
|
|
|
|
|
|
RESPONSE=$(curl -s -o response.txt -w "%{http_code}" -L -X POST "$API_URL" --post301 --post302 \
|
|
|
|
-H "Content-Type: application/json" \
|
|
|
|
-d "$JSON_PAYLOAD") || true
|
|
|
|
|
|
|
|
POST_UPDATE_DONE=true
|
|
|
|
}
|