gpf_pub_agent_altimetrie.agent_altimetrie module#
Main module logic.
- class gpf_pub_agent_altimetrie.agent_altimetrie.AltimetrieAgent(endpoint_name: str, pod_id: str, url_entrepot: str, exchange_name: str, publication_result_topic: str, rabbit_host: str = 'localhost', rabbit_port: int = 5672, keycloack_user_id: str = None, user_agent: str = 'AgentdepublicationAltimetrie/0.6.0', rabbit_login: str = None, rabbit_password: str = None, altimetrie_admin_url: str = '', listening_mode: bool = True, health_filepath: Path = None, consistency_checking_timer: int = 300, consistency_checking_enabled: bool = True, mattermost_webhook_scheme: str = 'http', mattermost_webhook_host: str = 'mattermost.gpf-tech.ign.fr', mattermost_webhook_port: int = 80, mattermost_webhook_token: str = None, mattermost_request_timeout: int = 60)#
Bases :
PublishAgent
Cette classe définit l’agent de publication qui communique avec le Geoservice.
Au démarrage l’agent attend que le Geoservice démarre. Il l’initialise en interrogeant l’API Entrepot. Il se met en attente des messages à traiter.
- connect_to_entrepot() None #
Bypass default connect_to_entrepot function when no rabbit host is defined.
- get_published_offerings() list[str] #
Fonction qui récupère la liste des offres publiées sur le serveur.
- Renvoie:
La liste des offres publiées.
- Type renvoyé:
List[str]
- is_offering_published(params: dict) bool #
Fonction qui vérifie si une offre est déjà publiée sur le serveur.
Attention, cette méthode est à implémenter dans les agents spécifiques qui héritent d’une classe PublishAgent de Pyroger.
- Paramètres:
offering (dict) – offre courante
- Renvoie:
True si l’offre a déjà été publiée précédemment, False sinon.
- Type renvoyé:
bool
- is_service_available() bool #
Vérifie si le service est disponible.
- Paramètres:
service_url_health_check (str) – url de vérification de l’état du service
- Renvoie:
True si service disponible, False autrement
- Type renvoyé:
bool
- publish_offering(params: dict) Status #
Permet de publier un service ALTIMETRY.
- Paramètres:
params (dict) – paramètres de publication
- Renvoie:
état de la publication
- Type renvoyé:
Status
- synchronize_offering(params: dict) Status #
Permet de synchroniser(dépublier+republier) un service ALTIMETRY.
- Paramètres:
params (dict) – paramètres de synchronisation
- Renvoie:
état de la synchronisation
- Type renvoyé:
Status
- unpublish_offering(params: dict) Status #
Permet de dépublier un service ALTIMETRY.
- Paramètres:
params (dict) – paramètre de publication
- Renvoie:
état de la publication
- Type renvoyé:
Status
- gpf_pub_agent_altimetrie.agent_altimetrie.run(endpoint_name: str, pod_id: str, url_entrepot: str, exchange_name: str, publication_result_topic: str, rabbit_host: str, rabbit_port: int, keycloack_user_id: str, user_agent: str, rabbit_login: str, rabbit_password: str, altimetrie_admin_url: str, health_filepath: Path, consistency_checking_timer: int, consistency_checking_enabled: bool, mattermost_webhook_scheme: str, mattermost_webhook_host: str, mattermost_webhook_port: int, mattermost_webhook_token: str, mattermost_request_timeout: int)#
Fonction principale permettant la création de l’agent.
- Paramètres:
endpoint_name (str) – nom du endPoint pour le bus d’écoute
pod_id (str) – Id du POD
url_entrepot (str) – URL de l’Entrepôt
publication_topic (str) – topic du bus sur lequel l’agent écoute
publication_result_topic (str) – topic du bus sur lequel l’agent envoie une réponse
rabbit_host (str) – nom de l’hôte du serveur RabbitMQ
rabbit_port (int) – port du serveur rabbitMQ
keycloack_user_id (str) – id de l’utilisateur technique qui a le
/technical (droit d'utiliser les appels en) –
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
altimetrie_admin_url (str) – url de l’administration de Geoservice
health_filepath (Path) – chemin vers le fichier de santé de l’agent
consistency_checking_timer (int), temps de repos (en secondes) –
mattermost_webhook_scheme (str) –
mattermost_webhook_host (str) –
mattermost_webhook_port (int) –
mattermost_webhook_token (str) –