Voici la documentation : https://geoplateforme.pages.gpf-tech.ign.fr/documentation

Skip to content
Extraits de code Groupes Projets

ajout authentification RabbitMQ

Fusionnées Benoit Ducarouge a demandé de fusionner evol-rabbit-auth vers main
1 fichier
+ 23
2
Comparer les modifications
  • Côte à côte
  • En ligne
@@ -35,6 +35,8 @@ class PublishAgent:
exchange_diffusion: str = "my_exchange_response",
keycloack_user_id: str = None,
user_agent: str = f"{__title_clean__}/{__version__}",
rabbit_login: str = None,
rabbit_password: str = None,
):
"""Constructeur de la classe PublishAgent.
@@ -64,6 +66,9 @@ class PublishAgent:
être une chaîne vide.
keycloack_user_id (str): id de l'utilisateur technique qui a le
droits d'utiliser les appels en /technical
user_agent (str): nom du user_agent à envoyer lors des requètes vers l'API Entrepot
rabbit_login (str): utilisateur du bus RabbitMQ
rabbit_password (str): mot de passe pour le bus RabbitMQ
"""
if not exchange_diffusion or not exchange_reception:
@@ -87,6 +92,8 @@ class PublishAgent:
}
self.keycloack_user_id = keycloack_user_id
self.user_agent = user_agent
self.rabbit_login = rabbit_login
self.rabbit_password = rabbit_password
def get_from_api_offerings(self) -> list:
@@ -190,7 +197,14 @@ class PublishAgent:
Elle enregistre les structures JSON correspondant aux nouvelles offres
qui doivent être publiées par les agents.
"""
parameters = pika.ConnectionParameters(host=self.config["host"])
if self.rabbit_login is not None and self.rabbit_password is not None:
credentials = pika.PlainCredentials(self.rabbit_login, self.rabbit_password)
parameters = pika.ConnectionParameters(
host=self.config["host"], credentials=credentials
)
else:
parameters = pika.ConnectionParameters(host=self.config["host"])
connection = pika.BlockingConnection(parameters)
channel = connection.channel()
channel.exchange_declare(
@@ -305,7 +319,14 @@ class PublishAgent:
resp = self.write_response(offering, status)
resp_str = json.dumps(resp)
parameters = pika.ConnectionParameters(host=self.config["host"])
if self.rabbit_login is not None and self.rabbit_password is not None:
credentials = pika.PlainCredentials(self.rabbit_login, self.rabbit_password)
parameters = pika.ConnectionParameters(
host=self.config["host"], credentials=credentials
)
else:
parameters = pika.ConnectionParameters(host=self.config["host"])
connection = pika.BlockingConnection(parameters)
channel = connection.channel()
Chargement en cours