diff --git a/lizmap_server/context/common.py b/lizmap_server/context/common.py index 2cdd8f98..3be66507 100644 --- a/lizmap_server/context/common.py +++ b/lizmap_server/context/common.py @@ -60,6 +60,20 @@ def name(self) -> str: """ ... + @property + @abstractmethod + def git_repository_url(self) -> str: + """ Return Git repository URL + """ + ... + + @property + @abstractmethod + def documentation_url(self) -> str: + """ Return documentation URL + """ + ... + @property @abstractmethod def search_paths(self) -> List[str]: diff --git a/lizmap_server/context/native.py b/lizmap_server/context/native.py index 2e737acf..ae0d1840 100644 --- a/lizmap_server/context/native.py +++ b/lizmap_server/context/native.py @@ -31,6 +31,14 @@ class Context(ContextABC): def name(self) -> str: return SERVER_CONTEXT_NAME + @property + def git_repository_url(self) -> str: + return "https://github.com/qgis/QGIS" + + @property + def documentation_url(self) -> str: + return "https://docs.qgis.org/latest/en/docs/server_manual/" + @property def search_paths(self) -> List[str]: """ Return search paths for projects diff --git a/lizmap_server/context/py_qgis_server.py b/lizmap_server/context/py_qgis_server.py index a26176fe..cf98b74a 100644 --- a/lizmap_server/context/py_qgis_server.py +++ b/lizmap_server/context/py_qgis_server.py @@ -30,6 +30,14 @@ def __init__(self): def name(self) -> str: return SERVER_CONTEXT_NAME + @property + def git_repository_url(self) -> str: + return "https://github.com/3liz/py-qgis-server" + + @property + def documentation_url(self) -> str: + return "https://docs.3liz.org/py-qgis-server/" + @property def search_paths(self) -> List[str]: """ Return search paths for projects diff --git a/lizmap_server/context/py_qgis_server2.py b/lizmap_server/context/py_qgis_server2.py index c417e978..1419d38b 100644 --- a/lizmap_server/context/py_qgis_server2.py +++ b/lizmap_server/context/py_qgis_server2.py @@ -35,6 +35,14 @@ def _checkout(self, uri: str) -> Tuple[ProjectMetadata | CacheEntry, Co]: def name(self) -> str: return SERVER_CONTEXT_NAME + @property + def git_repository_url(self) -> str: + return "https://github.com/3liz/py-qgis-server2" + + @property + def documentation_url(self) -> str: + return "" + @property def search_paths(self) -> List[str]: """ Return search paths for projects diff --git a/lizmap_server/server_info_handler.py b/lizmap_server/server_info_handler.py index b8e36e6e..c70fa10b 100755 --- a/lizmap_server/server_info_handler.py +++ b/lizmap_server/server_info_handler.py @@ -156,6 +156,8 @@ def _handleRequest(self, context): build_id=server_metadata.build_id, commit_id=server_metadata.commit_id, stable=server_metadata.is_stable, + git_repository_url=self._context.git_repository_url, + documentation_url=self._context.documentation_url, ) else: py_qgis_server = dict(found=False, version="not used") diff --git a/test/test_server_info.py b/test/test_server_info.py index 935dc100..81c439bc 100644 --- a/test/test_server_info.py +++ b/test/test_server_info.py @@ -56,6 +56,7 @@ def test_lizmap_server_info(client): assert json_content['qgis_server']['plugins'][plugin]['version'] == 'Not found' assert len(json_content['qgis_server']['fonts']) >= 1 + assert len(json_content['qgis_server'].get('py_qgis_server').keys()) >= 2 def test_tos_checks(client):