diff --git a/.github/workflows/build-base-image.yml b/.github/workflows/build-base-image.yml index 96051d9..3103711 100644 --- a/.github/workflows/build-base-image.yml +++ b/.github/workflows/build-base-image.yml @@ -38,6 +38,20 @@ jobs: id: repo run: echo "REPO=$(basename ${{ github.repository }})" >> $GITHUB_ENV + - name: Debug Maven download URL + run: | + set -eux + + MAVEN_VERSION=3.9.12 + BASE_URL="https://downloads.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries" + MAVEN_URL="${BASE_URL}/apache-maven-${MAVEN_VERSION}-bin.tar.gz" + + echo "MAVEN_VERSION=${MAVEN_VERSION}" + echo "BASE_URL=${BASE_URL}" + echo "MAVEN_URL=${MAVEN_URL}" + + curl -fSLI "${MAVEN_URL}" + - name: Build and push multi-arch image uses: docker/build-push-action@v6 with: diff --git a/Dockerfile b/Dockerfile index d2d164a..3b2dc4f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,7 +13,7 @@ FROM debian:trixie-slim ARG DEPENDENCIES=" \ ca-certificates \ - openjdk-21-jdk-headless" + openjdk-21-jre-headless" ARG APT_MIRROR=http://deb.debian.org @@ -23,7 +23,7 @@ RUN set -ex \ && apt-get update \ && apt-get install -y --no-install-recommends ${DEPENDENCIES} \ && echo "no" | dpkg-reconfigure dash \ - && sed -i "s@jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1@jdk.tls.disabledAlgorithms=SSLv3@" /etc/java-21-openjdk/security/java.security + && sed -i "s@jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1@jdk.tls.disabledAlgorithms=SSLv3@" /etc/java-21-openjdk/security/java.security \ WORKDIR /opt/chen diff --git a/Dockerfile-ee b/Dockerfile-ee index 8ece2ad..a51f1ce 100644 --- a/Dockerfile-ee +++ b/Dockerfile-ee @@ -4,10 +4,8 @@ FROM jumpserver/chen:${VERSION}-ce ARG TARGETARCH ARG DEPENDENCIES=" \ - curl \ iputils-ping \ telnet \ - vim \ wget" RUN --mount=type=cache,target=/var/cache/apt,sharing=locked,id=chen \ @@ -15,3 +13,4 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked,id=chen \ set -ex \ && apt-get update \ && apt-get install -y --no-install-recommends ${DEPENDENCIES} + \ No newline at end of file diff --git a/backend/modules/src/main/java/org.jumpserver.chen.modules/sqlserver/SQLServerConnectionManager.java b/backend/modules/src/main/java/org.jumpserver.chen.modules/sqlserver/SQLServerConnectionManager.java index cbac880..ab52146 100644 --- a/backend/modules/src/main/java/org.jumpserver.chen.modules/sqlserver/SQLServerConnectionManager.java +++ b/backend/modules/src/main/java/org.jumpserver.chen.modules/sqlserver/SQLServerConnectionManager.java @@ -10,6 +10,7 @@ import java.lang.reflect.InvocationTargetException; import java.sql.Driver; import java.sql.SQLException; +import java.util.List; @Slf4j public class SQLServerConnectionManager extends BaseConnectionManager { @@ -17,7 +18,7 @@ public class SQLServerConnectionManager extends BaseConnectionManager { private static final String jdbcUrlTemplate = "jdbc:sqlserver://${host}:${port};DatabaseName=${db};trustServerCertificate=true;"; private String jdbcUrl; - private String driverClassloaderName = "mssql-jdbc-12.2.0.jre11.jar"; + private String driverClassloaderName = "mssql-jdbc-12.10.2.jre11.jar"; public SQLServerConnectionManager(DBConnectInfo connectInfo, Datasource datasource) { super(connectInfo, datasource); @@ -44,12 +45,17 @@ public Driver getDriver() { this.driverClassloaderName = "mssql-jdbc-6.4.0.jre9.jar"; } } + var candidateJarNames = List.of( + this.driverClassloaderName, + "mssql-jdbc-12.2.1.jre11.jar", + "mssql-jdbc-12.2.0.jre11.jar" + ); for (DriverClassLoader classLoader : driverClassLoaders) { - if (!classLoader.getJarName().equals(this.driverClassloaderName)) { + if (!candidateJarNames.contains(classLoader.getJarName())) { continue; } try { - log.info("select driver jar: {}", this.driverClassloaderName); + log.info("select driver jar: {}", classLoader.getJarName()); return (Driver) classLoader.loadClass(this.getDriverClassName()).getDeclaredConstructor().newInstance(); } catch (InstantiationException | IllegalAccessException | ClassNotFoundException | InvocationTargetException | NoSuchMethodException e) { diff --git a/backend/modules/src/test/java/mysql/TestMysqlDriver.java b/backend/modules/src/test/java/mysql/TestMysqlDriver.java index 623667b..cb3949f 100644 --- a/backend/modules/src/test/java/mysql/TestMysqlDriver.java +++ b/backend/modules/src/test/java/mysql/TestMysqlDriver.java @@ -16,7 +16,7 @@ public static void main(String[] args) { try { - ClassLoader classLoader = new URLClassLoader(new URL[]{new URL("file:/Users/shenchenyang/IdeaProjects/chen/drivers/mysql/mysql-connector-java-8.0.28.jar")}); + ClassLoader classLoader = new URLClassLoader(new URL[]{new URL("file:/Users/shenchenyang/IdeaProjects/chen/drivers/mysql/mysql-connector-j-8.4.0.jar")}); Driver driver = (Driver) classLoader.loadClass("com.mysql.cj.jdbc.Driver").getDeclaredConstructor().newInstance(); DruidDataSource ds = new DruidDataSource(); diff --git a/backend/web/pom.xml b/backend/web/pom.xml index 374166c..7ed3b59 100644 --- a/backend/web/pom.xml +++ b/backend/web/pom.xml @@ -61,6 +61,18 @@ 2.13.1.RELEASE + + io.grpc + grpc-netty-shaded + ${grpc.version} + + + + io.grpc + grpc-inprocess + ${grpc.version} + + org.springframework.boot spring-boot-starter-web diff --git a/backend/wisp/pom.xml b/backend/wisp/pom.xml index 746c043..8805fa2 100644 --- a/backend/wisp/pom.xml +++ b/backend/wisp/pom.xml @@ -15,7 +15,7 @@ io.grpc grpc-all - 1.55.1 + ${grpc.version} com.google.protobuf diff --git a/drivers/mysql/mysql-connector-j-8.4.0.jar b/drivers/mysql/mysql-connector-j-8.4.0.jar new file mode 100644 index 0000000..8294fe0 Binary files /dev/null and b/drivers/mysql/mysql-connector-j-8.4.0.jar differ diff --git a/drivers/mysql/mysql-connector-java-8.0.28.jar b/drivers/mysql/mysql-connector-java-8.0.28.jar deleted file mode 100644 index ac8904e..0000000 Binary files a/drivers/mysql/mysql-connector-java-8.0.28.jar and /dev/null differ diff --git a/drivers/postgresql/postgresql-42.6.2.jar b/drivers/postgresql/postgresql-42.6.2.jar deleted file mode 100644 index c296892..0000000 Binary files a/drivers/postgresql/postgresql-42.6.2.jar and /dev/null differ diff --git a/drivers/postgresql/postgresql-42.7.11.jar b/drivers/postgresql/postgresql-42.7.11.jar new file mode 100644 index 0000000..e42f175 Binary files /dev/null and b/drivers/postgresql/postgresql-42.7.11.jar differ diff --git a/drivers/sqlserver/mssql-jdbc-12.10.2.jre11.jar b/drivers/sqlserver/mssql-jdbc-12.10.2.jre11.jar new file mode 100644 index 0000000..38f9a5b Binary files /dev/null and b/drivers/sqlserver/mssql-jdbc-12.10.2.jre11.jar differ diff --git a/drivers/sqlserver/mssql-jdbc-12.2.0.jre11.jar b/drivers/sqlserver/mssql-jdbc-12.2.0.jre11.jar deleted file mode 100644 index 0c5b3ce..0000000 Binary files a/drivers/sqlserver/mssql-jdbc-12.2.0.jre11.jar and /dev/null differ diff --git a/pom.xml b/pom.xml index 4ad7033..c18fbec 100644 --- a/pom.xml +++ b/pom.xml @@ -30,7 +30,9 @@ 1.12.1 v14.18.0 6.14.15 - 10.1.47 + 10.1.54 + 1.75.0 + 4.1.132.Final @@ -41,6 +43,13 @@ ${java.version} ${java.version} + + + org.projectlombok + lombok + 1.18.38 + +