mirror of
https://github.com/pgsty/minio.git
synced 2026-07-19 12:10:24 +03:00
fix: check for gateway backend online without http request (#10924)
fixes #10921
This commit is contained in:
@@ -212,7 +212,7 @@ func (g *Azure) NewGatewayLayer(creds auth.Credentials) (minio.ObjectLayer, erro
|
||||
client := azblob.NewServiceURL(*endpointURL, pipeline)
|
||||
|
||||
return &azureObjects{
|
||||
endpoint: endpointURL.String(),
|
||||
endpoint: endpointURL,
|
||||
httpClient: httpClient,
|
||||
client: client,
|
||||
metrics: metrics,
|
||||
@@ -424,7 +424,7 @@ func azurePropertiesToS3Meta(meta azblob.Metadata, props azblob.BlobHTTPHeaders,
|
||||
// azureObjects - Implements Object layer for Azure blob storage.
|
||||
type azureObjects struct {
|
||||
minio.GatewayUnsupported
|
||||
endpoint string
|
||||
endpoint *url.URL
|
||||
httpClient *http.Client
|
||||
metrics *minio.Metrics
|
||||
client azblob.ServiceURL // Azure sdk client
|
||||
@@ -553,7 +553,11 @@ func (a *azureObjects) Shutdown(ctx context.Context) error {
|
||||
// StorageInfo - Not relevant to Azure backend.
|
||||
func (a *azureObjects) StorageInfo(ctx context.Context, _ bool) (si minio.StorageInfo, _ []error) {
|
||||
si.Backend.Type = minio.BackendGateway
|
||||
si.Backend.GatewayOnline = minio.IsBackendOnline(ctx, a.httpClient, a.endpoint)
|
||||
host := a.endpoint.Host
|
||||
if a.endpoint.Port() == "" {
|
||||
host = a.endpoint.Host + ":" + a.endpoint.Scheme
|
||||
}
|
||||
si.Backend.GatewayOnline = minio.IsBackendOnline(ctx, host)
|
||||
return si, nil
|
||||
}
|
||||
|
||||
|
||||
@@ -414,7 +414,7 @@ func (l *gcsGateway) Shutdown(ctx context.Context) error {
|
||||
// StorageInfo - Not relevant to GCS backend.
|
||||
func (l *gcsGateway) StorageInfo(ctx context.Context, _ bool) (si minio.StorageInfo, _ []error) {
|
||||
si.Backend.Type = minio.BackendGateway
|
||||
si.Backend.GatewayOnline = minio.IsBackendOnline(ctx, l.httpClient, "https://storage.googleapis.com")
|
||||
si.Backend.GatewayOnline = minio.IsBackendOnline(ctx, "storage.googleapis.com:443")
|
||||
return si, nil
|
||||
}
|
||||
|
||||
|
||||
@@ -276,7 +276,11 @@ func (l *s3Objects) Shutdown(ctx context.Context) error {
|
||||
// StorageInfo is not relevant to S3 backend.
|
||||
func (l *s3Objects) StorageInfo(ctx context.Context, _ bool) (si minio.StorageInfo, _ []error) {
|
||||
si.Backend.Type = minio.BackendGateway
|
||||
si.Backend.GatewayOnline = minio.IsBackendOnline(ctx, l.HTTPClient, l.Client.EndpointURL().String())
|
||||
host := l.Client.EndpointURL().Host
|
||||
if l.Client.EndpointURL().Port() == "" {
|
||||
host = l.Client.EndpointURL().Host + ":" + l.Client.EndpointURL().Scheme
|
||||
}
|
||||
si.Backend.GatewayOnline = minio.IsBackendOnline(ctx, host)
|
||||
return si, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user