chore(statsreporter): fix vultr platform detection in statsreporter (#9326)

* chore(statsreporter): fix vultr platform detection in statsreporter

* chore(statsreporter): adds comment for Vultr Detection order
This commit is contained in:
Nageshbansal
2025-10-14 01:48:19 +05:30
committed by GitHub
parent a4f24a231b
commit dcc902fb27

View File

@@ -119,6 +119,16 @@ func detectPlatform() string {
// Try to detect cloud provider through metadata endpoints
client := &http.Client{Timeout: 1 * gotime.Second}
// Vultr metadata, Must come before AWS Detection — Vultr exposes the AWS IMDS endpoint, causing false AWS detection.
if req, err := http.NewRequest(http.MethodGet, "http://169.254.169.254/v1/hostname", nil); err == nil {
if resp, err := client.Do(req); err == nil {
resp.Body.Close()
if resp.StatusCode == 200 {
return "vultr"
}
}
}
// AWS metadata
if req, err := http.NewRequest(http.MethodGet, "http://169.254.169.254/latest/meta-data/", nil); err == nil {
if resp, err := client.Do(req); err == nil {
@@ -161,16 +171,6 @@ func detectPlatform() string {
}
}
// Vultr metadata
if req, err := http.NewRequest(http.MethodGet, "http://169.254.169.254/v1/hostname", nil); err == nil {
if resp, err := client.Do(req); err == nil {
resp.Body.Close()
if resp.StatusCode == 200 {
return "vultr"
}
}
}
// Hetzner metadata
if req, err := http.NewRequest(http.MethodGet, "http://169.254.169.254/hetzner/v1/metadata", nil); err == nil {
if resp, err := client.Do(req); err == nil {