[Misc] Add generated git commit hash as vllm.__commit__
(#6386)
This commit is contained in:
parent
75f64d8b94
commit
111fc6e7ec
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,3 +1,6 @@
|
|||||||
|
# vllm commit id, generated by setup.py
|
||||||
|
vllm/commit_id.py
|
||||||
|
|
||||||
# Byte-compiled / optimized / DLL files
|
# Byte-compiled / optimized / DLL files
|
||||||
__pycache__/
|
__pycache__/
|
||||||
*.py[cod]
|
*.py[cod]
|
||||||
|
24
setup.py
24
setup.py
@ -5,6 +5,7 @@ import os
|
|||||||
import re
|
import re
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
|
import warnings
|
||||||
from shutil import which
|
from shutil import which
|
||||||
from typing import Dict, List
|
from typing import Dict, List
|
||||||
|
|
||||||
@ -26,6 +27,29 @@ def load_module_from_path(module_name, path):
|
|||||||
ROOT_DIR = os.path.dirname(__file__)
|
ROOT_DIR = os.path.dirname(__file__)
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
def embed_commit_hash():
|
||||||
|
try:
|
||||||
|
commit_id = subprocess.check_output(["git", "rev-parse", "HEAD"],
|
||||||
|
encoding="utf-8").strip()
|
||||||
|
commit_contents = f'__commit__ = "{commit_id}"\n'
|
||||||
|
|
||||||
|
version_file = os.path.join(ROOT_DIR, "vllm", "commit_id.py")
|
||||||
|
with open(version_file, "w", encoding="utf-8") as f:
|
||||||
|
f.write(commit_contents)
|
||||||
|
|
||||||
|
except subprocess.CalledProcessError as e:
|
||||||
|
warnings.warn(f"Failed to get commit hash:\n{e}",
|
||||||
|
RuntimeWarning,
|
||||||
|
stacklevel=2)
|
||||||
|
except Exception as e:
|
||||||
|
warnings.warn(f"Failed to embed commit hash:\n{e}",
|
||||||
|
RuntimeWarning,
|
||||||
|
stacklevel=2)
|
||||||
|
|
||||||
|
|
||||||
|
embed_commit_hash()
|
||||||
|
|
||||||
# cannot import envs directly because it depends on vllm,
|
# cannot import envs directly because it depends on vllm,
|
||||||
# which is not installed yet
|
# which is not installed yet
|
||||||
envs = load_module_from_path('envs', os.path.join(ROOT_DIR, 'vllm', 'envs.py'))
|
envs = load_module_from_path('envs', os.path.join(ROOT_DIR, 'vllm', 'envs.py'))
|
||||||
|
7
tests/test_embedded_commit.py
Normal file
7
tests/test_embedded_commit.py
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
import vllm
|
||||||
|
|
||||||
|
|
||||||
|
def test_embedded_commit_defined():
|
||||||
|
assert vllm.__commit__ != "COMMIT_HASH_PLACEHOLDER"
|
||||||
|
# 7 characters is the length of a short commit hash
|
||||||
|
assert len(vllm.__commit__) >= 7
|
@ -12,9 +12,10 @@ from vllm.outputs import (CompletionOutput, EmbeddingOutput,
|
|||||||
from vllm.pooling_params import PoolingParams
|
from vllm.pooling_params import PoolingParams
|
||||||
from vllm.sampling_params import SamplingParams
|
from vllm.sampling_params import SamplingParams
|
||||||
|
|
||||||
from .version import __version__
|
from .version import __commit__, __version__
|
||||||
|
|
||||||
__all__ = [
|
__all__ = [
|
||||||
|
"__commit__",
|
||||||
"__version__",
|
"__version__",
|
||||||
"LLM",
|
"LLM",
|
||||||
"ModelRegistry",
|
"ModelRegistry",
|
||||||
|
@ -1 +1,12 @@
|
|||||||
|
import warnings
|
||||||
|
|
||||||
|
try:
|
||||||
|
import vllm.commit_id
|
||||||
|
__commit__ = vllm.commit_id.__commit__
|
||||||
|
except Exception as e:
|
||||||
|
warnings.warn(f"Failed to read commit hash:\n{e}",
|
||||||
|
RuntimeWarning,
|
||||||
|
stacklevel=2)
|
||||||
|
__commit__ = "COMMIT_HASH_PLACEHOLDER"
|
||||||
|
|
||||||
__version__ = "0.5.1"
|
__version__ = "0.5.1"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user