From d8f2d87e828c9526778a235319f46d8ff1a01668 Mon Sep 17 00:00:00 2001 From: ibuler Date: Thu, 7 May 2026 11:34:57 +0800 Subject: [PATCH] perf: update dockerfile --- Dockerfile | 1 + Dockerfile-ee | 3 ++- pyproject.toml | 3 ++- uv.lock | 65 +++++++++++++++++++++++++++++--------------------- 4 files changed, 43 insertions(+), 29 deletions(-) diff --git a/Dockerfile b/Dockerfile index 30adb346d..c8aa71df8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,6 +15,7 @@ RUN set -ex \ && export SECRET_KEY=$(head -c100 < /dev/urandom | base64 | tr -dc A-Za-z0-9 | head -c 48) \ && . /opt/py3/bin/activate \ && uv pip install -r pyproject.toml \ + && rm -rf /root/.cache/ \ && cd apps \ && python manage.py compilemessages diff --git a/Dockerfile-ee b/Dockerfile-ee index 35a138e4f..4d51a525c 100644 --- a/Dockerfile-ee +++ b/Dockerfile-ee @@ -26,4 +26,5 @@ WORKDIR /opt/jumpserver ARG PIP_MIRROR=https://pypi.org/simple RUN set -ex \ - && uv pip install -i${PIP_MIRROR} --group xpack \ No newline at end of file + && uv pip install -i${PIP_MIRROR} --group xpack \ + && rm -rf /root/.cache/ \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 4eee0cdce..5fb298357 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -179,7 +179,7 @@ xpack = [ 'azure-mgmt-subscription==3.1.1', 'azure-mgmt-compute==30.0.0', 'azure-mgmt-network==23.1.0', - 'google-cloud-compute==1.15.0', + 'google-cloud-compute==1.47.0', 'alibabacloud-dysmsapi20170525==2.0.24', 'python-novaclient==18.3.0', 'python-keystoneclient==5.1.0', @@ -189,6 +189,7 @@ xpack = [ 'aliyun-python-sdk-ecs==4.24.64', 'keystoneauth1==5.2.1', 'oracledb==3.4.2', + 'protobuf>=5.29.6', 'ucloud-sdk-python3==0.11.50', 'huaweicloudsdkecs==3.1.52', 'huaweicloudsdkcore==3.1.52', diff --git a/uv.lock b/uv.lock index ade0c8585..49786ed3e 100644 --- a/uv.lock +++ b/uv.lock @@ -282,7 +282,7 @@ wheels = [ [[package]] name = "ansible-core" version = "2.16.18" -source = { url = "https://github.com/jumpserver-dev/ansible/archive/refs/tags/v2.16.18.1.zip" } +source = { url = "https://github.com/jumpserver-dev/ansible/archive/refs/tags/v2.16.18.2.zip" } dependencies = [ { name = "cryptography" }, { name = "jinja2" }, @@ -290,7 +290,7 @@ dependencies = [ { name = "pyyaml" }, { name = "resolvelib" }, ] -sdist = { hash = "sha256:fb3030abe475e182d43f2ce3bbdcb522c9a9e70fea357cf23a01d461bc88bbd6" } +sdist = { hash = "sha256:e2fee3c6b2986dae5a62af3675e4405fff2b194bba0262a4f7dbd62ffcdb94d9" } [package.metadata] requires-dist = [ @@ -1679,16 +1679,18 @@ wheels = [ [[package]] name = "google-cloud-compute" -version = "1.15.0" +version = "1.47.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "google-api-core", extra = ["grpc"] }, + { name = "google-auth" }, + { name = "grpcio" }, { name = "proto-plus" }, { name = "protobuf" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/c3/c9/313ec91ee2b975b951a6bb9e8b56796a582ef7da26d2ef242c1f333647e1/google-cloud-compute-1.15.0.tar.gz", hash = "sha256:fa675aeaf04c627a442cd3032196d6f36ad68443ba327c9767a6bfbc40a42b21", size = 3181167, upload-time = "2023-12-07T20:08:50.736Z" } +sdist = { url = "https://files.pythonhosted.org/packages/9f/b9/e9c462aaef5ff2d7abc306821d11ec1f0c8cdfa4840cd26d8fa87f41f5ee/google_cloud_compute-1.47.0.tar.gz", hash = "sha256:f2c7909299f230428b0b12e52e031efe76c39be5d28cae9998fe1130a223fc3a", size = 5084010, upload-time = "2026-03-30T22:51:26.576Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/ff/6d/a81ff1a6a9f6d53bf8cdb9c2262e6b1f8ccf119c874f34c4f55f31d74eb8/google_cloud_compute-1.15.0-py2.py3-none-any.whl", hash = "sha256:9eb39cae22c32c89c20c7e4f44635a7c5985a558c89f279e0f6e97edeb291e8f", size = 2348325, upload-time = "2023-12-07T20:08:48.402Z" }, + { url = "https://files.pythonhosted.org/packages/33/37/1b7941d5741096cbdd04e040b16858c9af3ec6a324915994b83ce584ea0f/google_cloud_compute-1.47.0-py3-none-any.whl", hash = "sha256:7e0329d1b226ec948cd6064aa88ba6f16d4556585a13b1ec2494f751783749d3", size = 3846242, upload-time = "2026-03-30T22:49:04.879Z" }, ] [[package]] @@ -2118,9 +2120,9 @@ dependencies = [ { name = "chardet" }, { name = "configparser" }, { name = "cryptography" }, - { name = "daphne" }, { name = "data-tree" }, { name = "decorator" }, + { name = "defusedxml" }, { name = "distro" }, { name = "django" }, { name = "django-auth-ldap" }, @@ -2128,7 +2130,6 @@ dependencies = [ { name = "django-cas-ng" }, { name = "django-celery-beat" }, { name = "django-cors-headers" }, - { name = "django-debug-toolbar" }, { name = "django-filter" }, { name = "django-formtools" }, { name = "django-oauth-toolkit" }, @@ -2157,7 +2158,6 @@ dependencies = [ { name = "exchangelib" }, { name = "fido2" }, { name = "flower" }, - { name = "forgerypy3" }, { name = "future" }, { name = "geoip2" }, { name = "gmssl" }, @@ -2206,7 +2206,6 @@ dependencies = [ { name = "pyhttpsig" }, { name = "pyjwkest" }, { name = "pymongo" }, - { name = "pympler" }, { name = "pymssql" }, { name = "pynacl" }, { name = "pyopenssl" }, @@ -2225,7 +2224,6 @@ dependencies = [ { name = "pyzipper" }, { name = "redis" }, { name = "requests" }, - { name = "requests-unixsocket" }, { name = "rest-condition" }, { name = "s3transfer" }, { name = "simplejson" }, @@ -2251,6 +2249,13 @@ dependencies = [ ] [package.dev-dependencies] +dev = [ + { name = "daphne" }, + { name = "django-debug-toolbar" }, + { name = "forgerypy3" }, + { name = "ipython" }, + { name = "pympler" }, +] xpack = [ { name = "alibabacloud-dysmsapi20170525" }, { name = "aliyun-python-sdk-core" }, @@ -2264,12 +2269,13 @@ xpack = [ { name = "google-cloud-compute" }, { name = "huaweicloudsdkcore" }, { name = "huaweicloudsdkecs" }, - { name = "ipython" }, { name = "keystoneauth1" }, { name = "oracledb" }, + { name = "protobuf" }, { name = "python-keystoneclient" }, { name = "python-novaclient" }, { name = "qingcloud-sdk" }, + { name = "requests-unixsocket" }, { name = "tencentcloud-sdk-python" }, { name = "ucloud-sdk-python3" }, { name = "volcengine-python-sdk" }, @@ -2283,7 +2289,7 @@ requires-dist = [ { name = "amqp", specifier = "==5.1.1" }, { name = "annotated-types", specifier = ">=0.6.0" }, { name = "ansible", specifier = "==9.13.0" }, - { name = "ansible-core", url = "https://github.com/jumpserver-dev/ansible/archive/refs/tags/v2.16.18.1.zip" }, + { name = "ansible-core", url = "https://github.com/jumpserver-dev/ansible/archive/refs/tags/v2.16.18.2.zip" }, { name = "ansible-runner", url = "https://github.com/jumpserver-dev/ansible-runner/archive/refs/tags/v2.4.0.2.zip" }, { name = "asn1crypto", specifier = "==1.5.1" }, { name = "azure-identity", specifier = "==1.16.0" }, @@ -2299,9 +2305,9 @@ requires-dist = [ { name = "chardet", specifier = "==5.1.0" }, { name = "configparser", specifier = "==6.0.0" }, { name = "cryptography", specifier = "==46.0.7" }, - { name = "daphne", specifier = "==4.0.0" }, { name = "data-tree", specifier = "==0.0.1" }, { name = "decorator", specifier = "==5.1.1" }, + { name = "defusedxml", specifier = ">=0.7.1" }, { name = "distro", specifier = "==1.9.0" }, { name = "django", specifier = "==5.2.13" }, { name = "django-auth-ldap", specifier = "==4.4.0" }, @@ -2309,7 +2315,6 @@ requires-dist = [ { name = "django-cas-ng", url = "https://github.com/ibuler/django-cas-ng/releases/download/v4.3.2/django-cas-ng-4.3.2.zip" }, { name = "django-celery-beat", specifier = "==2.8.1" }, { name = "django-cors-headers", specifier = ">=4.3.0" }, - { name = "django-debug-toolbar", specifier = "==4.1.0" }, { name = "django-filter", specifier = "==24.3" }, { name = "django-formtools", specifier = "==2.5.1" }, { name = "django-oauth-toolkit", specifier = "==2.4.0" }, @@ -2338,7 +2343,6 @@ requires-dist = [ { name = "exchangelib", specifier = ">=5.1.0" }, { name = "fido2", specifier = ">=1.1.2" }, { name = "flower", specifier = "==2.0.1" }, - { name = "forgerypy3", specifier = "==0.3.1" }, { name = "future", specifier = "==0.18.3" }, { name = "geoip2", specifier = "==4.8.0" }, { name = "gmssl", specifier = "==3.2.2" }, @@ -2387,7 +2391,6 @@ requires-dist = [ { name = "pyhttpsig", specifier = "==1.3.0" }, { name = "pyjwkest", specifier = "==1.4.2" }, { name = "pymongo", specifier = "==4.6.3" }, - { name = "pympler", specifier = "==1.0.1" }, { name = "pymssql", specifier = "==2.3.10" }, { name = "pynacl", specifier = "==1.6.2" }, { name = "pyopenssl", specifier = "==26.0.0" }, @@ -2406,7 +2409,6 @@ requires-dist = [ { name = "pyzipper", specifier = "==0.3.6" }, { name = "redis", url = "https://github.com/jumpserver-dev/redis-py/archive/refs/tags/v5.0.3.zip" }, { name = "requests", specifier = "==2.32.4" }, - { name = "requests-unixsocket", specifier = "==0.4.1" }, { name = "rest-condition", specifier = "==1.0.3" }, { name = "s3transfer", specifier = "==0.16.0" }, { name = "simplejson", specifier = "==3.19.1" }, @@ -2432,6 +2434,13 @@ requires-dist = [ ] [package.metadata.requires-dev] +dev = [ + { name = "daphne", specifier = "==4.0.0" }, + { name = "django-debug-toolbar", specifier = "==4.1.0" }, + { name = "forgerypy3", specifier = "==0.3.1" }, + { name = "ipython", specifier = "==8.30.0" }, + { name = "pympler", specifier = "==1.0.1" }, +] xpack = [ { name = "alibabacloud-dysmsapi20170525", specifier = "==2.0.24" }, { name = "aliyun-python-sdk-core", specifier = "==2.15.2" }, @@ -2442,15 +2451,16 @@ xpack = [ { name = "azure-mgmt-subscription", specifier = "==3.1.1" }, { name = "bce-python-sdk", specifier = "==0.8.87" }, { name = "django-vastbase-backend", specifier = "==0.1.1" }, - { name = "google-cloud-compute", specifier = "==1.15.0" }, + { name = "google-cloud-compute", specifier = "==1.47.0" }, { name = "huaweicloudsdkcore", specifier = "==3.1.52" }, { name = "huaweicloudsdkecs", specifier = "==3.1.52" }, - { name = "ipython", specifier = "==8.30.0" }, { name = "keystoneauth1", specifier = "==5.2.1" }, { name = "oracledb", specifier = "==3.4.2" }, + { name = "protobuf", specifier = ">=5.29.6" }, { name = "python-keystoneclient", specifier = "==5.1.0" }, { name = "python-novaclient", specifier = "==18.3.0" }, { name = "qingcloud-sdk", specifier = "==1.2.15" }, + { name = "requests-unixsocket", specifier = "==0.4.1" }, { name = "tencentcloud-sdk-python", specifier = "==3.0.941" }, { name = "ucloud-sdk-python3", specifier = "==0.11.50" }, { name = "volcengine-python-sdk", specifier = "==1.0.71" }, @@ -3170,16 +3180,17 @@ wheels = [ [[package]] name = "protobuf" -version = "4.25.9" +version = "6.33.6" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/d9/8e/d08c41a8c004e1d437ef467e7c4f9c3295cd784eba48ed5d1d01f94b1dad/protobuf-4.25.9.tar.gz", hash = "sha256:b0dc7e7c68de8b1ce831dacb12fb407e838edbb8b6cc0dc3a2a6b4cbf6de9cff", size = 381040, upload-time = "2026-03-25T23:09:36.423Z" } +sdist = { url = "https://files.pythonhosted.org/packages/66/70/e908e9c5e52ef7c3a6c7902c9dfbb34c7e29c25d2f81ade3856445fd5c94/protobuf-6.33.6.tar.gz", hash = "sha256:a6768d25248312c297558af96a9f9c929e8c4cee0659cb07e780731095f38135", size = 444531, upload-time = "2026-03-18T19:05:00.988Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/a8/e9/59435bd04bdd46cb38c42a336b22f9843e8e586ff83c35a5423f8b14704e/protobuf-4.25.9-cp310-abi3-win32.whl", hash = "sha256:bde396f568b0b46fc8fbfe9f02facf25b6755b2578a3b8ac61e74b9d69499e03", size = 392879, upload-time = "2026-03-25T23:09:21.32Z" }, - { url = "https://files.pythonhosted.org/packages/f3/16/42a5c7f1001783d2b5bfcecde10127f09010f78982c86ae409122ce3ece6/protobuf-4.25.9-cp310-abi3-win_amd64.whl", hash = "sha256:3683c05154252206f7cb2d371626514b3708199d9bcf683b503dabf3a2e38e06", size = 413900, upload-time = "2026-03-25T23:09:23.589Z" }, - { url = "https://files.pythonhosted.org/packages/56/5b/0074a0a9eb01f3d1c4648ca5e81b22090c811b210b61df9018ac6d6c5cda/protobuf-4.25.9-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:9560813560e6ee72c11ca8873878bdb7ee003c96a57ebb013245fe84e2540904", size = 394826, upload-time = "2026-03-25T23:09:25.194Z" }, - { url = "https://files.pythonhosted.org/packages/54/aa/b2dba856f64c36b2a06c67be1472de98cca07a2322d0f0cbf03279a40e5b/protobuf-4.25.9-cp37-abi3-manylinux2014_aarch64.whl", hash = "sha256:999146ef02e7fa6a692477badd1528bcd7268df211852a3df2d834ba2b480791", size = 294191, upload-time = "2026-03-25T23:09:26.613Z" }, - { url = "https://files.pythonhosted.org/packages/a8/5c/53f18822017b8bda6bd8bb4e02048e911fdc79a3dafdc83ab994fe922a84/protobuf-4.25.9-cp37-abi3-manylinux2014_x86_64.whl", hash = "sha256:438c636de8fb706a0de94a12a268ef1ae8f5ba5ae655a7671fcda5968ba3c9be", size = 295178, upload-time = "2026-03-25T23:09:27.839Z" }, - { url = "https://files.pythonhosted.org/packages/16/28/d5065b212685875d3924bcdb3201cbf467cb4d58a18aa19a8dfd99ea80a9/protobuf-4.25.9-py3-none-any.whl", hash = "sha256:d49b615e7c935194ac161f0965699ac84df6112c378e05ec53da65d2e4cbb6d4", size = 156822, upload-time = "2026-03-25T23:09:34.957Z" }, + { url = "https://files.pythonhosted.org/packages/fc/9f/2f509339e89cfa6f6a4c4ff50438db9ca488dec341f7e454adad60150b00/protobuf-6.33.6-cp310-abi3-win32.whl", hash = "sha256:7d29d9b65f8afef196f8334e80d6bc1d5d4adedb449971fefd3723824e6e77d3", size = 425739, upload-time = "2026-03-18T19:04:48.373Z" }, + { url = "https://files.pythonhosted.org/packages/76/5d/683efcd4798e0030c1bab27374fd13a89f7c2515fb1f3123efdfaa5eab57/protobuf-6.33.6-cp310-abi3-win_amd64.whl", hash = "sha256:0cd27b587afca21b7cfa59a74dcbd48a50f0a6400cfb59391340ad729d91d326", size = 437089, upload-time = "2026-03-18T19:04:50.381Z" }, + { url = "https://files.pythonhosted.org/packages/5c/01/a3c3ed5cd186f39e7880f8303cc51385a198a81469d53d0fdecf1f64d929/protobuf-6.33.6-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:9720e6961b251bde64edfdab7d500725a2af5280f3f4c87e57c0208376aa8c3a", size = 427737, upload-time = "2026-03-18T19:04:51.866Z" }, + { url = "https://files.pythonhosted.org/packages/ee/90/b3c01fdec7d2f627b3a6884243ba328c1217ed2d978def5c12dc50d328a3/protobuf-6.33.6-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:e2afbae9b8e1825e3529f88d514754e094278bb95eadc0e199751cdd9a2e82a2", size = 324610, upload-time = "2026-03-18T19:04:53.096Z" }, + { url = "https://files.pythonhosted.org/packages/9b/ca/25afc144934014700c52e05103c2421997482d561f3101ff352e1292fb81/protobuf-6.33.6-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:c96c37eec15086b79762ed265d59ab204dabc53056e3443e702d2681f4b39ce3", size = 339381, upload-time = "2026-03-18T19:04:54.616Z" }, + { url = "https://files.pythonhosted.org/packages/16/92/d1e32e3e0d894fe00b15ce28ad4944ab692713f2e7f0a99787405e43533a/protobuf-6.33.6-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:e9db7e292e0ab79dd108d7f1a94fe31601ce1ee3f7b79e0692043423020b0593", size = 323436, upload-time = "2026-03-18T19:04:55.768Z" }, + { url = "https://files.pythonhosted.org/packages/c4/72/02445137af02769918a93807b2b7890047c32bfb9f90371cbc12688819eb/protobuf-6.33.6-py3-none-any.whl", hash = "sha256:77179e006c476e69bf8e8ce866640091ec42e1beb80b213c3900006ecfba6901", size = 170656, upload-time = "2026-03-18T19:04:59.826Z" }, ] [[package]]