Initialize configs correctly, move notification config (#8367)
This PR also removes deprecated tests, adds checks to avoid races reproduced on CI/CD.master
parent
d2a8be6fc2
commit
6a4ef2e48e
@ -0,0 +1,66 @@ |
|||||||
|
/* |
||||||
|
* MinIO Cloud Storage, (C) 2019 MinIO, Inc. |
||||||
|
* |
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||||
|
* you may not use this file except in compliance with the License. |
||||||
|
* You may obtain a copy of the License at |
||||||
|
* |
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
* |
||||||
|
* Unless required by applicable law or agreed to in writing, software |
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS, |
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||||
|
* See the License for the specific language governing permissions and |
||||||
|
* limitations under the License. |
||||||
|
*/ |
||||||
|
|
||||||
|
package notify |
||||||
|
|
||||||
|
import "github.com/minio/minio/pkg/event/target" |
||||||
|
|
||||||
|
// Config - notification target configuration structure, holds
|
||||||
|
// information about various notification targets.
|
||||||
|
type Config struct { |
||||||
|
AMQP map[string]target.AMQPArgs `json:"amqp"` |
||||||
|
Elasticsearch map[string]target.ElasticsearchArgs `json:"elasticsearch"` |
||||||
|
Kafka map[string]target.KafkaArgs `json:"kafka"` |
||||||
|
MQTT map[string]target.MQTTArgs `json:"mqtt"` |
||||||
|
MySQL map[string]target.MySQLArgs `json:"mysql"` |
||||||
|
NATS map[string]target.NATSArgs `json:"nats"` |
||||||
|
NSQ map[string]target.NSQArgs `json:"nsq"` |
||||||
|
PostgreSQL map[string]target.PostgreSQLArgs `json:"postgresql"` |
||||||
|
Redis map[string]target.RedisArgs `json:"redis"` |
||||||
|
Webhook map[string]target.WebhookArgs `json:"webhook"` |
||||||
|
} |
||||||
|
|
||||||
|
const ( |
||||||
|
defaultTarget = "1" |
||||||
|
) |
||||||
|
|
||||||
|
// NewConfig - initialize notification config.
|
||||||
|
func NewConfig() Config { |
||||||
|
// Make sure to initialize notification targets
|
||||||
|
cfg := Config{ |
||||||
|
NSQ: make(map[string]target.NSQArgs), |
||||||
|
AMQP: make(map[string]target.AMQPArgs), |
||||||
|
MQTT: make(map[string]target.MQTTArgs), |
||||||
|
NATS: make(map[string]target.NATSArgs), |
||||||
|
Redis: make(map[string]target.RedisArgs), |
||||||
|
MySQL: make(map[string]target.MySQLArgs), |
||||||
|
Kafka: make(map[string]target.KafkaArgs), |
||||||
|
Webhook: make(map[string]target.WebhookArgs), |
||||||
|
PostgreSQL: make(map[string]target.PostgreSQLArgs), |
||||||
|
Elasticsearch: make(map[string]target.ElasticsearchArgs), |
||||||
|
} |
||||||
|
cfg.NSQ[defaultTarget] = target.NSQArgs{} |
||||||
|
cfg.AMQP[defaultTarget] = target.AMQPArgs{} |
||||||
|
cfg.MQTT[defaultTarget] = target.MQTTArgs{} |
||||||
|
cfg.NATS[defaultTarget] = target.NATSArgs{} |
||||||
|
cfg.Redis[defaultTarget] = target.RedisArgs{} |
||||||
|
cfg.MySQL[defaultTarget] = target.MySQLArgs{} |
||||||
|
cfg.Kafka[defaultTarget] = target.KafkaArgs{} |
||||||
|
cfg.Webhook[defaultTarget] = target.WebhookArgs{} |
||||||
|
cfg.PostgreSQL[defaultTarget] = target.PostgreSQLArgs{} |
||||||
|
cfg.Elasticsearch[defaultTarget] = target.ElasticsearchArgs{} |
||||||
|
return cfg |
||||||
|
} |
Loading…
Reference in new issue