Skip to content
Snippets Groups Projects
Commit eeea2114 authored by geant-release-service's avatar geant-release-service
Browse files

Finished release 0.147.

parents 5ab42a49 23a43a4b
Branches master
Tags 0.147
No related merge requests found
......@@ -13,3 +13,4 @@ venv
.venv
.vscode
docs/build
bom.json
\ No newline at end of file
......@@ -2,7 +2,10 @@
All notable changes to this project will be documented in this file.
## [0.145] - 2025-05-27
## [0.147] - 2025-06-05
- DBOARD3-1247: use threads for redis lookup of router interface services
## [0.146] - 2025-05-27
- NGM-15/19/20: added /map/pops & /map/equipment
## [0.145] - 2025-05-20
......@@ -13,7 +16,6 @@ All notable changes to this project will be documented in this file.
- DBOARD3-1152: Added full OIDs for active state checking
- DBOARD3-1142: Added token based authentication
## [0.143] - 2025-03-06
- POL1-886: Fix: Skip snmp info for nokia services
......
recursive-include inventory_provider/static *
include inventory_provider/logging_default_config.json
recursive-exclude test *
......@@ -61,7 +61,7 @@ import re
from functools import lru_cache
from typing import Iterable, List, Optional
from flask import Blueprint, Response, request
from flask import Blueprint, Response, request, current_app
from redis import Redis
from inventory_provider.routes import common
......@@ -1273,12 +1273,15 @@ def _get_router_info(ims_source_equipment, redis):
vendor = _r['vendor']
break
for key in redis.scan_iter(f"ims:interface_services:{ims_source_equipment}:*"):
raw_services = redis.get(key.decode())
if not raw_services:
for result in common.load_json_docs(
config_params=current_app.config["INVENTORY_PROVIDER_CONFIG"],
key_pattern=f"ims:interface_services:{ims_source_equipment}:*",
num_threads=20,
):
services = result["value"]
if not services:
continue
services = json.loads(raw_services)
for service in services:
related_services.update({r["id"]: r for r in service["related-services"]})
contacts.update(service.get("contacts", []))
......
[build-system]
build-backend = "setuptools.build_meta"
requires = ["setuptools>=77", "setuptools-scm>=8.0", "wheel"]
[project]
name = "inventory-provider"
version = "0.147"
description = "Dashboard inventory provider"
authors = [{ name = "GÉANT", email = "swd@geant.org" }]
readme = "README.md"
requires-python = ">=3.9"
license = "MIT"
license-files = ["LICENSE.txt"]
classifiers = [
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Operating System :: OS Independent",
"Development Status :: 5 - Production/Stable",
]
dependencies = [
"click",
"mysql-connector",
"pyasn1==0.4.8",
"pysnmp==4.4.12",
"jsonschema",
"paramiko",
"flask",
"flask-cors",
"redis",
"kombu",
"vine",
"celery",
"junos-eznc",
"ncclient",
"lxml==4.9.4",
"requests",
"netifaces",
"tree-format",
"sentry-sdk[flask,celery]",
]
[project.optional-dependencies]
health = ["flask", "arrow", "apscheduler<4"]
web = ["flask", "flask-sqlalchemy"]
[project.urls]
Homepage = "https://gitlab.software.geant.org/geant-swd/dashboardv3/inventory-provider/"
[project.scripts]
monitor-tasks = "inventory_provider.tasks.monitor:run"
[tool.setuptools.packages.find]
include = ["inventory_provider*"]
from setuptools import setup, find_packages
setup(
name='inventory-provider',
version="0.146",
author='GEANT',
author_email='swd@geant.org',
description='Dashboard inventory provider',
url=('https://gitlab.geant.net/live-projects'
'/dashboardv3/inventory-provider'),
packages=find_packages(),
install_requires=[
'click',
'mysql-connector',
'pyasn1==0.4.8',
'pysnmp==4.4.12',
'jsonschema',
'paramiko',
'flask',
'flask-cors',
'redis',
'kombu',
'vine',
'celery',
'junos-eznc',
'ncclient',
'lxml==4.9.4',
'requests',
'netifaces',
'tree-format',
'sentry-sdk[flask,celery]',
'Flask-HTTPAuth'
],
entry_points={
'console_scripts': [
'monitor-tasks=inventory_provider.tasks.monitor:run'
]
},
include_package_data=True,
license='MIT',
license_files=('LICENSE.txt',),
classifiers=[
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'License :: OSI Approved :: MIT License',
'Operating System :: OS Independent',
'Development Status :: 5 - Production/Stable'
],
python_requires='>=3.6'
)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment