Admin: add 'show version' (#11079)

### What problem does this PR solve?

```
admin> show version;
show_version
+-----------------------+
| version               |
+-----------------------+
| v0.21.0-241-gc6cf58d5 |
+-----------------------+
admin> \q
Goodbye!

```

### Type of change

- [x] New Feature (non-breaking change which adds functionality)

---------

Signed-off-by: Jin Hai <haijin.chn@gmail.com>
This commit is contained in:
Jin Hai
2025-11-06 19:24:46 +08:00
committed by GitHub
parent 5a8fbc5a81
commit af98763e27
12 changed files with 41 additions and 8 deletions

View File

@ -34,7 +34,7 @@ class GithubOAuthClient(OAuthClient):
def fetch_user_info(self, access_token, **kwargs):
"""
Fetch github user info.
Fetch GitHub user info.
"""
user_info = {}
try:

View File

@ -43,7 +43,8 @@ class OIDCClient(OAuthClient):
self.jwks_uri = config['jwks_uri']
def _load_oidc_metadata(self, issuer):
@staticmethod
def _load_oidc_metadata(issuer):
"""
Load OIDC metadata from `/.well-known/openid-configuration`.
"""

View File

@ -29,7 +29,7 @@ from api.utils.api_utils import (
server_error_response,
generate_confirmation_token,
)
from api.versions import get_ragflow_version
from common.versions import get_ragflow_version
from common.time_utils import current_timestamp, datetime_format
from timeit import default_timer as timer

View File

@ -13,7 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
from api.versions import get_ragflow_version
from common.versions import get_ragflow_version
from .reload_config_base import ReloadConfigBase

View File

@ -39,7 +39,7 @@ from common.file_utils import get_project_base_directory
from common import settings
from api.db.db_models import init_database_tables as init_web_db
from api.db.init_data import init_web_data
from api.versions import get_ragflow_version
from common.versions import get_ragflow_version
from common.config_utils import show_configs
from rag.utils.mcp_tool_call_conn import shutdown_all_mcp_sessions
from rag.utils.redis_conn import RedisDistributedLock

View File

@ -1,50 +0,0 @@
#
# Copyright 2024 The InfiniFlow Authors. All Rights Reserved.
#
# 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.
#
import os
import subprocess
RAGFLOW_VERSION_INFO = "unknown"
def get_ragflow_version() -> str:
global RAGFLOW_VERSION_INFO
if RAGFLOW_VERSION_INFO != "unknown":
return RAGFLOW_VERSION_INFO
version_path = os.path.abspath(
os.path.join(
os.path.dirname(os.path.realpath(__file__)), os.pardir, "VERSION"
)
)
if os.path.exists(version_path):
with open(version_path, "r") as f:
RAGFLOW_VERSION_INFO = f.read().strip()
else:
RAGFLOW_VERSION_INFO = get_closest_tag_and_count()
return RAGFLOW_VERSION_INFO
def get_closest_tag_and_count():
try:
# Get the current commit hash
version_info = (
subprocess.check_output(["git", "describe", "--tags", "--match=v*", "--first-parent", "--always"])
.strip()
.decode("utf-8")
)
return version_info
except Exception:
return "unknown"