Browse Source

perf: revert old deps (#14371)

* perf: revert old deps

* perf: update poetry

* perf: Update Dockerfile with new base image tag

---------

Co-authored-by: ibuler <ibuler@qq.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
pull/14372/head
fit2bot 3 weeks ago committed by GitHub
parent
commit
972afe0bfe
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 2
      Dockerfile
  2. 13
      Dockerfile-base
  3. 1
      Dockerfile-ee
  4. 6
      apps/common/storage/jms_storage/sftp.py
  5. 3
      apps/terminal/backends/__init__.py
  6. 3394
      poetry.lock
  7. 86
      pyproject.toml

2
Dockerfile

@ -1,4 +1,4 @@
FROM jumpserver/core-base:20241028_064236 AS stage-build
FROM jumpserver/core-base:20241029_061135 AS stage-build
ARG VERSION

13
Dockerfile-base

@ -5,8 +5,16 @@ ARG TARGETARCH
ARG DEPENDENCIES=" \
ca-certificates \
wget \
g++ \
make \
cron \
gettext"
pkg-config \
default-libmysqlclient-dev \
freetds-dev \
gettext \
libkrb5-dev \
libldap2-dev \
libsasl2-dev"
ARG APT_MIRROR=http://deb.debian.org
@ -48,8 +56,9 @@ RUN --mount=type=cache,target=/root/.cache \
set -ex \
&& python3 -m venv /opt/py3 \
&& pip install poetry -i ${PIP_MIRROR} \
&& poetry config virtualenvs.create false \
&& . /opt/py3/bin/activate \
&& poetry config virtualenvs.create false \
&& poetry config repositories.pypi ${PIP_MIRROR} \
&& poetry install --only main \
&& ansible-galaxy collection install -r collections.yml --force --ignore-certs \
&& bash clean_site_packages.sh

1
Dockerfile-ee

@ -28,5 +28,6 @@ COPY poetry.lock pyproject.toml ./
RUN set -ex \
&& . /opt/py3/bin/activate \
&& pip install poetry -i ${PIP_MIRROR} \
&& poetry config repositories.pypi ${PIP_MIRROR} \
&& poetry install --only xpack

6
apps/common/storage/jms_storage/sftp.py

@ -1,8 +1,10 @@
# -*- coding: utf-8 -*-
import os
import io
import os
import paramiko
from jms_storage.base import ObjectStorage
from .base import ObjectStorage
class SFTPStorage(ObjectStorage):

3
apps/terminal/backends/__init__.py

@ -1,4 +1,5 @@
from importlib import import_module
from django.conf import settings
from django.utils.functional import LazyObject
@ -20,7 +21,7 @@ def get_command_storage():
def get_server_replay_storage():
from jms_storage import get_object_storage
from common.storage.jms_storage import get_object_storage
config = settings.SERVER_REPLAY_STORAGE
storage = get_object_storage(config)
return storage

3394
poetry.lock

File diff suppressed because it is too large Load Diff

86
pyproject.toml

@ -16,32 +16,59 @@ documentation = "https://docs.jumpserver.org"
[tool.poetry.dependencies]
python = "^3.11"
# cython = "3.0.0"
aiofiles = "23.1.0"
amqp = "5.1.1"
ansible-core = { url = "https://github.com/jumpserver-dev/ansible/archive/refs/tags/v2.14.1.7.zip" }
ansible = "7.1.0"
ansible-runner = { url = "https://github.com/jumpserver-dev/ansible-runner/archive/refs/tags/2.4.0.1.zip" }
asn1crypto = "1.5.1"
bcrypt = "4.0.1"
billiard = "4.1.0"
# certifi = "2023.7.22"
# cffi = "1.15.1"
chardet = "5.1.0"
configparser = "6.0.0"
decorator = "5.1.1"
docutils = "0.20.1"
ecdsa = "0.18.0"
enum-compat = "0.0.3"
ephem = "4.1.4"
future = "0.18.3"
# idna = "3.4"
itypes = "1.2.0"
jinja2 = "3.1.2"
markupsafe = "2.1.3"
olefile = "0.46"
paramiko = "3.2.0"
passlib = "1.7.4"
pyasn1 = "0.5.0"
pycparser = "2.21"
# cryptography = "41.0.2"
pycryptodome = "3.18.0"
pycryptodomex = "3.18.0"
phonenumbers = "8.13.17"
gmssl = "3.2.2"
itsdangerous = "1.1.0"
pyotp = "2.8.0"
pynacl = "1.5.0"
python-dateutil = "2.8.2"
pyyaml = "6.0.1"
requests = "2.31.0"
simplejson = "3.19.1"
six = "1.16.0"
sshtunnel = "0.4.0"
sshpubkeys = "3.3.1"
uritemplate = "4.1.1"
# urllib3 = "1.26.16"
vine = "5.0.0"
werkzeug = "2.3.6"
unicodecsv = "0.14.1"
httpsig = "1.3.0"
treelib = "1.6.4"
psutil = "6.0.0"
psutil = "5.9.5"
msrestazure = "0.6.4"
adal = "1.2.7"
# Requires fixed version number, ImportError: cannot import name 'save_virtual_workbook' from 'openpyxl.writer.excel'
openpyxl = "3.0.10"
pyexcel = "0.7.0"
pyexcel-xlsx = "0.6.0"
@ -62,7 +89,10 @@ django = "4.1.13"
django-bootstrap3 = "23.4"
django-filter = "23.2"
django-formtools = "2.4.1"
django-ranged-response = "0.2.0"
django-simple-captcha = "0.5.18"
django-timezone-field = "5.1"
djangorestframework = "3.14.0"
djangorestframework-bulk = "0.2.1"
django-simple-history = "3.3.0"
django-private-storage = "3.1"
@ -70,29 +100,30 @@ drf-nested-routers = "0.93.4"
drf-writable-nested = "0.7.0"
rest-condition = "1.0.3"
drf-yasg = "1.21.7"
coreapi = "2.3.3"
coreschema = "0.0.4"
openapi-codec = "1.3.2"
pillow = "10.0.1"
pytz = "2023.3"
django-proxy = "1.2.2"
python-daemon = "3.0.1"
eventlet = "0.33.3"
greenlet = "3.0.1"
gunicorn = "21.2.0"
celery = "5.3.1"
flower = "2.0.1"
django-celery-beat = "2.6.0"
kombu = "5.3.1"
uvicorn = "0.22.0"
websockets = "11.0.3"
python-ldap = [
{ url = "https://github.com/jumpserver-dev/core-package/releases/download/v1.0.0/python_ldap-3.4.3-cp311-cp311-manylinux_2_28_x86_64.whl", markers = "sys_platform == 'linux' and platform_machine == 'x86_64'" },
{ url = "https://github.com/jumpserver-dev/core-package/releases/download/v1.0.0/python_ldap-3.4.3-cp311-cp311-manylinux_2_28_aarch64.whl", markers = "sys_platform == 'linux' and platform_machine == 'aarch64'" },
{ version = "3.4.3", source = "aliyun", markers = "sys_platform != 'linux'" }
]
python-ldap = "3.4.3"
ldap3 = "2.9.1"
django-radius = { url = "https://github.com/ibuler/django-radius/archive/refs/tags/1.5.0.zip" }
django-cas-ng = { url = "https://github.com/ibuler/django-cas-ng/releases/download/v4.3.2/django-cas-ng-4.3.2.zip" }
python-cas = "1.6.0"
django-auth-ldap = "4.4.0"
mysqlclient = [
{ url = "https://github.com/jumpserver-dev/core-package/releases/download/v1.0.0/mysqlclient-2.2.4-cp311-cp311-manylinux_2_28_x86_64.whl", markers = "sys_platform == 'linux' and platform_machine == 'x86_64'" },
{ url = "https://github.com/jumpserver-dev/core-package/releases/download/v1.0.0/mysqlclient-2.2.4-cp311-cp311-manylinux_2_28_aarch64.whl", markers = "sys_platform == 'linux' and platform_machine == 'aarch64'" },
{ version = "2.2.4", source = "aliyun", markers = "sys_platform != 'linux'" }
]
pymssql = "2.2.11"
mysqlclient = "2.2.4"
pymssql = "2.2.8"
django-redis = "5.3.0"
python-redis-lock = "4.0.0"
pyopenssl = "23.2.0"
@ -103,29 +134,41 @@ forgerypy3 = "0.3.1"
django-debug-toolbar = "4.1.0"
pympler = "1.0.1"
hvac = "1.1.1"
pyhcl = "0.4.4"
ipy = "1.1"
netifaces = [
{ url = "https://github.com/jumpserver-dev/core-package/releases/download/v1.0.0/netifaces-0.11.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_28_x86_64.whl", markers = "sys_platform == 'linux' and platform_machine == 'x86_64'" },
{ url = "https://github.com/jumpserver-dev/core-package/releases/download/v1.0.0/netifaces-0.11.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl", markers = "sys_platform == 'linux' and platform_machine == 'aarch64'" },
{ version = "^0.11.0", source = "aliyun", markers = "sys_platform != 'linux'" }
]
netifaces = "^0.11.0"
daphne = "4.0.0"
channels = "^4.0.0"
channels-redis = "4.1.0"
fido2 = "^1.1.2"
ua-parser = "^0.18.0"
user-agents = "^2.2.0"
django-cors-headers = "^4.3.0"
mistune = "2.0.3"
openai = "^1.29.0"
xlsxwriter = "^3.1.9"
exchangelib = "^5.1.0"
xmlsec = "^1.3.13"
lxml = "5.2.1"
pydantic = "^2.7.4"
annotated-types = "^0.6.0"
httpx = "^0.27.0"
distro = "1.9.0"
tqdm = "4.66.4"
elasticsearch7 = "7.17.9"
elasticsearch8 = "8.13.2"
polib = "^1.2.0"
# psycopg2 = "2.9.6"
psycopg2-binary = "2.9.6"
pycountry = "^24.6.1"
# Depend by jms storage
boto = "2.49.0"
azure-storage-blob = "12.17.0"
esdk-obs-python = "3.21.4"
oss2 = "2.18.1"
boto3 = "1.28.9"
botocore = "1.31.9"
s3transfer = "0.6.1"
[tool.poetry.group.xpack]
optional = true
@ -144,16 +187,13 @@ bce-python-sdk = "0.8.87"
tencentcloud-sdk-python = "3.0.941"
aliyun-python-sdk-core-v3 = "2.13.33"
aliyun-python-sdk-ecs = "4.24.64"
keystoneauth1 = "5.2.1"
oracledb = "1.4.0"
ucloud-sdk-python3 = "0.11.50"
huaweicloudsdkecs = "3.1.52"
huaweicloudsdkcore = "3.1.52"
volcengine-python-sdk = "1.0.71"
[[tool.poetry.source]]
name = "aliyun"
url = "https://mirrors.aliyun.com/pypi/simple"
priority = "primary"
[[tool.poetry.source]]
name = "pypi"
priority = "supplemental"

Loading…
Cancel
Save