diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml
index 5a1056c781..e1e0dd7d1e 100644
--- a/.github/workflows/unit-test.yml
+++ b/.github/workflows/unit-test.yml
@@ -57,13 +57,6 @@ jobs:
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven
- - name: Bootstrap database
- run: |
- sed -i "/image: bitnami\/postgresql/a\ ports:\n - 5432:5432" $(pwd)/docker/docker-swarm/docker-compose.yml
- sed -i "/image: bitnami\/zookeeper/a\ ports:\n - 2181:2181" $(pwd)/docker/docker-swarm/docker-compose.yml
- docker-compose -f $(pwd)/docker/docker-swarm/docker-compose.yml up -d dolphinscheduler-zookeeper dolphinscheduler-postgresql
- until docker logs docker-swarm_dolphinscheduler-postgresql_1 2>&1 | grep 'listening on IPv4 address'; do echo "waiting for postgresql ready ..."; sleep 1; done
- docker run --rm --network docker-swarm_dolphinscheduler -v $(pwd)/sql/dolphinscheduler_postgre.sql:/docker-entrypoint-initdb.d/dolphinscheduler_postgre.sql bitnami/postgresql:11.11.0 bash -c "PGPASSWORD=root psql -h docker-swarm_dolphinscheduler-postgresql_1 -U root -d dolphinscheduler -v ON_ERROR_STOP=1 -f /docker-entrypoint-initdb.d/dolphinscheduler_postgre.sql"
- name: Run Unit tests
run: ./mvnw clean verify -B -Dmaven.test.skip=false
diff --git a/.licenserc.yaml b/.licenserc.yaml
index 143cafc485..4fdd1d3ac7 100644
--- a/.licenserc.yaml
+++ b/.licenserc.yaml
@@ -27,7 +27,7 @@ header:
- DISCLAIMER
- dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/utils/ScriptRunner.java
- mvnw.cmd
- - sql/soft_version
+ - dolphinscheduler-dao/src/main/resources/sql/soft_version
- .mvn
- .gitattributes
- '**/licenses/**/LICENSE-*'
diff --git a/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/plugin/AlertPluginManagerTest.java b/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/plugin/AlertPluginManagerTest.java
index e7574a4c49..7bb64781c4 100644
--- a/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/plugin/AlertPluginManagerTest.java
+++ b/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/plugin/AlertPluginManagerTest.java
@@ -28,6 +28,7 @@ import java.util.Objects;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -39,8 +40,8 @@ public class AlertPluginManagerTest {
private static final Logger logger = LoggerFactory.getLogger(AlertPluginManagerTest.class);
- @Before
- public void setUp() {
+ @BeforeClass
+ public static void setUp() {
System.setProperty("spring.profiles.active", "h2");
}
diff --git a/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/plugin/EmailAlertPluginTest.java b/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/plugin/EmailAlertPluginTest.java
index 780c53d5ae..285b1132ab 100644
--- a/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/plugin/EmailAlertPluginTest.java
+++ b/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/plugin/EmailAlertPluginTest.java
@@ -51,6 +51,7 @@ import java.util.List;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.BeforeClass;
import org.junit.Test;
import com.google.common.collect.ImmutableList;
@@ -63,9 +64,13 @@ public class EmailAlertPluginTest {
private AlertDao alertDao;
private PluginDao pluginDao;
+ @BeforeClass
+ public static void setUpClass() {
+ System.setProperty("spring.profiles.active", "h2");
+ }
+
@Before
public void setUp() {
- System.setProperty("spring.profiles.active", "h2");
alertDao = DaoFactory.getDaoInstance(AlertDao.class);
pluginDao = DaoFactory.getDaoInstance(PluginDao.class);
}
diff --git a/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/utils/PropertyUtilsTest.java b/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/utils/PropertyUtilsTest.java
deleted file mode 100644
index d72c09ae42..0000000000
--- a/dolphinscheduler-alert/src/test/java/org/apache/dolphinscheduler/alert/utils/PropertyUtilsTest.java
+++ /dev/null
@@ -1,221 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.dolphinscheduler.alert.utils;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertSame;
-import static org.junit.Assert.assertTrue;
-
-import org.apache.dolphinscheduler.common.enums.NodeType;
-import org.apache.dolphinscheduler.common.utils.PropertyUtils;
-
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Test PropertyUtils
- * and the resource path is src/test/resources/alert.properties.
- */
-public class PropertyUtilsTest {
-
- private static final Logger logger = LoggerFactory.getLogger(PropertyUtilsTest.class);
-
- /**
- * Test getString
- */
- @Test
- public void testGetString() {
-
- //Expected "EMAIL"
- String result = PropertyUtils.getString("alert.type");
- logger.info(result);
- assertEquals("EMAIL", result);
-
- //Expected "xxx.xxx.test"
- result = PropertyUtils.getString("mail.server.host");
- assertEquals("xxx.xxx.test", result);
-
- //If key is undefine in alert.properties, then return null
- result = PropertyUtils.getString("abc");
- assertNull(result);
-
- //If key is null, then return null
- result = PropertyUtils.getString(null);
- assertNull(result);
- }
-
-
- /**
- * Test getBoolean
- */
- @Test
- public void testGetBoolean() {
-
- //Expected true
- Boolean result = PropertyUtils.getBoolean("mail.smtp.starttls.enable");
- assertTrue(result);
-
- //Expected false
- result = PropertyUtils.getBoolean("mail.smtp.ssl.enable");
- assertFalse(result);
-
- //If key is undefine in alert.properties, then return null
- result = PropertyUtils.getBoolean("abc");
- assertFalse(result);
-
- //If key is null, then return false
- result = PropertyUtils.getBoolean(null);
- assertFalse(result);
- }
-
- /**
- * Test getLong
- */
- @Test
- public void testGetLong() {
-
- //Expected 25
- long result = PropertyUtils.getLong("mail.server.port");
- assertSame(25L, result);
-
- //If key is null, then return -1
- result = PropertyUtils.getLong(null);
- assertSame(-1L, result);
-
- //If key is undefine in alert.properties, then return -1
- result = PropertyUtils.getLong("abc");
- assertSame(-1L, result);
-
- //If key is undefine in alert.properties, and there is a defaultval, then return defaultval
- result = PropertyUtils.getLong("abc", 200);
- assertEquals(200L, result);
-
- //If the value can not parse to long ,it will log the error and return -1L
- result = PropertyUtils.getLong("test.server.testnumber");
- assertSame(-1L, result);
- }
-
- /**
- * Test getDouble
- */
- @Test
- public void testGetDouble() {
-
- //Expected 3.0
- double result = PropertyUtils.getDouble("test.server.factor", 3.0);
- assertEquals(3.0, result, 0);
-
- //If key is null, then return -1.0
- result = PropertyUtils.getDouble(null, -1.0);
- assertEquals(-1.0, result, 0);
-
- //If key is undefine in alert.properties, then return -1
- result = PropertyUtils.getDouble("abc", -1.0);
- assertEquals(-1.0, result, 0);
-
- //If key is undefine in alert.properties, and there is a defaultval, then return defaultval
- result = PropertyUtils.getDouble("abc", 5.0);
- assertEquals(5.0, result, 0);
-
- //If the value can not parse to double ,it will log the error and return -1.0
- result = PropertyUtils.getDouble("test.server.testnumber", -1.0);
- assertEquals(-1.0, result, 0);
- }
-
- /**
- * Test getArray
- */
- @Test
- public void testGetArray() {
-
- //Expected length 3
- String[] result = PropertyUtils.getArray("test.server.list", ",");
- assertEquals(result.length, 3);
-
- //Equal array values
- assertEquals("xxx.xxx.test1", result[0]);
- assertEquals("xxx.xxx.test2", result[1]);
- assertEquals("xxx.xxx.test3", result[2]);
-
- //If key is null, then return -1
- result = PropertyUtils.getArray(null, ",");
- assertNull(result);
-
- //If key is undefine in alert.properties, then return null
- result = PropertyUtils.getArray("abc", ",");
- assertNull(result);
-
- //If splitStr is null, then return null
- result = PropertyUtils.getArray("test.server.list", null);
- assertNull(result);
- }
-
- /**
- * test getInt
- */
- @Test
- public void testGetInt() {
-
- //Expected 25
- int result = PropertyUtils.getInt("mail.server.port");
- assertSame(25, result);
-
- //If key is null, then return -1
- result = PropertyUtils.getInt(null);
- assertSame(-1, result);
-
- //If key is undefine in alert.properties, then return -1
- result = PropertyUtils.getInt("abc");
- assertSame(-1, result);
-
- //If key is undefine in alert.properties, and there is a defaultval, then return defaultval
- result = PropertyUtils.getInt("abc", 300);
- assertEquals(300, result);
-
- //If the value can not parse to int ,it will log the error and return -1
- result = PropertyUtils.getInt("test.server.testnumber");
- assertSame(-1, result);
- }
-
- /**
- * Test getEnum
- */
- @Test
- public void testGetEnum() {
-
- //Expected MASTER
- NodeType nodeType = PropertyUtils.getEnum("test.server.enum1", NodeType.class, NodeType.WORKER);
- assertEquals(NodeType.MASTER, nodeType);
-
- //Expected DEAD_SERVER
- nodeType = PropertyUtils.getEnum("test.server.enum2", NodeType.class, NodeType.WORKER);
- assertEquals(NodeType.DEAD_SERVER, nodeType);
-
- //If key is null, then return defaultval
- nodeType = PropertyUtils.getEnum(null, NodeType.class, NodeType.WORKER);
- assertEquals(NodeType.WORKER, nodeType);
-
- //If the value doesn't define in enum ,it will log the error and return -1
- nodeType = PropertyUtils.getEnum("test.server.enum3", NodeType.class, NodeType.WORKER);
- assertEquals(NodeType.WORKER, nodeType);
- }
-
-}
diff --git a/dolphinscheduler-api/pom.xml b/dolphinscheduler-api/pom.xml
index c6c9760038..3eea94f54c 100644
--- a/dolphinscheduler-api/pom.xml
+++ b/dolphinscheduler-api/pom.xml
@@ -254,5 +254,17 @@
test
+
+ org.apache.curator
+ curator-test
+ ${curator.test}
+
+
+ org.javassist
+ javassist
+
+
+ test
+
diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/HttpClientTest.java b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/HttpClientTest.java
deleted file mode 100644
index 6753d93d44..0000000000
--- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/HttpClientTest.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.dolphinscheduler.api;
-
-import org.apache.http.NameValuePair;
-import org.apache.http.client.entity.UrlEncodedFormEntity;
-import org.apache.http.client.methods.CloseableHttpResponse;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.client.utils.URIBuilder;
-import org.apache.http.impl.client.CloseableHttpClient;
-import org.apache.http.impl.client.HttpClients;
-import org.apache.http.message.BasicNameValuePair;
-import org.apache.http.util.EntityUtils;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.net.URI;
-import java.util.ArrayList;
-import java.util.List;
-
-public class HttpClientTest {
-
- private static final Logger logger = LoggerFactory.getLogger(HttpClientTest.class);
-
- @Test
- public void doPOSTParam()throws Exception{
- // create HttpClient
- CloseableHttpClient httpclient = HttpClients.createDefault();
-
- // create http post request
- HttpPost httpPost = new HttpPost("http://localhost:12345/dolphinscheduler/projects/create");
- httpPost.setHeader("token", "123");
- // set parameters
- List parameters = new ArrayList();
- parameters.add(new BasicNameValuePair("projectName", "qzw"));
- parameters.add(new BasicNameValuePair("desc", "qzw"));
-
- UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(parameters);
- httpPost.setEntity(formEntity);
-
-
- CloseableHttpResponse response = null;
- try {
- // execute
- response = httpclient.execute(httpPost);
- // response status code 200
- if (response.getStatusLine().getStatusCode() == 200) {
- String content = EntityUtils.toString(response.getEntity(), "UTF-8");
- logger.info(content);
- }
- } finally {
- if (response != null) {
- response.close();
- }
- httpclient.close();
- }
- }
-
- /**
- * do get param path variables chinese
- * @throws Exception
- */
- @Test
- public void doGETParamPathVariableAndChinese()throws Exception{
- // create HttpClient
- CloseableHttpClient httpclient = HttpClients.createDefault();
-
- List parameters = new ArrayList();
- // parameters.add(new BasicNameValuePair("pageSize", "10"));
-
- // define the parameters of the request
- URI uri = new URIBuilder("http://localhost:12345/dolphinscheduler/projects/%E5%85%A8%E9%83%A8%E6%B5%81%E7%A8%8B%E6%B5%8B%E8%AF%95/process/list")
- .build();
-
- // create http GET request
- HttpGet httpGet = new HttpGet(uri);
- httpGet.setHeader("token","10f5625a2a1cbf9aa710653796c5d764");
- //response object
- CloseableHttpResponse response = null;
- try {
- // execute http get request
- response = httpclient.execute(httpGet);
- // response status code 200
- if (response.getStatusLine().getStatusCode() == 200) {
- String content = EntityUtils.toString(response.getEntity(), "UTF-8");
- logger.info("start--------------->");
- logger.info(content);
- logger.info("end----------------->");
- }
- } finally {
- if (response != null) {
- response.close();
- }
- httpclient.close();
- }
- }
-
- /**
- *
- * do get param
- * @throws Exception
- */
- @Test
- public void doGETParam()throws Exception{
- // create HttpClient
- CloseableHttpClient httpclient = HttpClients.createDefault();
-
- List parameters = new ArrayList();
- parameters.add(new BasicNameValuePair("startDate", "2018-04-22 19:30:08"));
- parameters.add(new BasicNameValuePair("endDate", "2028-04-22 19:30:08"));
- parameters.add(new BasicNameValuePair("projectId", "0"));
-
- // define the parameters of the request
- URI uri = new URIBuilder("http://localhost:12345/dolphinscheduler/projects/analysis/queue-count")
- .setParameters(parameters)
- .build();
-
- // create http GET request
- HttpGet httpGet = new HttpGet(uri);
- httpGet.setHeader("token","2aef24c052c212fab9eec78848c2258b");
- //response object
- CloseableHttpResponse response = null;
- try {
- // execute http get request
- response = httpclient.execute(httpGet);
- // response status code 200
- if (response.getStatusLine().getStatusCode() == 200) {
- String content = EntityUtils.toString(response.getEntity(), "UTF-8");
- logger.info("start--------------->");
- logger.info(content);
- logger.info("end----------------->");
- }
- } finally {
- if (response != null) {
- response.close();
- }
- httpclient.close();
- }
- }
-
-}
diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/AbstractControllerTest.java b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/AbstractControllerTest.java
index 55f966adc7..867f34261b 100644
--- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/AbstractControllerTest.java
+++ b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/AbstractControllerTest.java
@@ -26,17 +26,23 @@ import org.apache.dolphinscheduler.common.enums.ProfileType;
import org.apache.dolphinscheduler.dao.entity.User;
import org.apache.commons.lang.StringUtils;
+import org.apache.curator.test.TestingServer;
import java.text.MessageFormat;
import java.util.HashMap;
import java.util.Map;
+import javax.annotation.PostConstruct;
+
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Profile;
import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.servlet.MockMvc;
@@ -49,6 +55,7 @@ import org.springframework.web.context.WebApplicationContext;
@ActiveProfiles(value = {ProfileType.H2})
@RunWith(SpringRunner.class)
@SpringBootTest(classes = ApiApplicationServer.class)
+@Ignore
public class AbstractControllerTest {
public static final String SESSION_ID = "sessionId";
@@ -105,4 +112,14 @@ public class AbstractControllerTest {
result.put(Constants.MSG, status.getMsg());
}
}
+
+ @Configuration
+ @Profile(ProfileType.H2)
+ public static class RegistryServer {
+ @PostConstruct
+ public void startEmbedRegistryServer() throws Exception {
+ final TestingServer server = new TestingServer(true);
+ System.setProperty("registry.servers", server.getConnectString());
+ }
+ }
}
diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/EnvironmentControllerTest.java b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/EnvironmentControllerTest.java
index 0b7233be92..98426346c2 100644
--- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/EnvironmentControllerTest.java
+++ b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/controller/EnvironmentControllerTest.java
@@ -40,12 +40,8 @@ import org.springframework.util.MultiValueMap;
import com.fasterxml.jackson.core.type.TypeReference;
import com.google.common.base.Preconditions;
-/**
- * environment controller test
- */
public class EnvironmentControllerTest extends AbstractControllerTest {
-
- private static Logger logger = LoggerFactory.getLogger(EnvironmentControllerTest.class);
+ private static final Logger logger = LoggerFactory.getLogger(EnvironmentControllerTest.class);
private String environmentCode;
@@ -60,6 +56,7 @@ public class EnvironmentControllerTest extends AbstractControllerTest {
testCreateEnvironment();
}
+ @Override
@After
public void after() throws Exception {
testDeleteEnvironment();
diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/SecurityConfigLDAPTest.java~HEAD b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/SecurityConfigLDAPTest.java~HEAD
deleted file mode 100644
index a96cec9158..0000000000
--- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/SecurityConfigLDAPTest.java~HEAD
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.dolphinscheduler.api.security;
-
-import org.apache.dolphinscheduler.api.ApiApplicationServer;
-
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.TestPropertySource;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = ApiApplicationServer.class)
-@TestPropertySource(properties = {
- "security.authentication.type=LDAP",
-})
-public class SecurityConfigLDAPTest {
-
- @Autowired
- private SecurityConfig securityConfig;
-
- @Test
- public void testAuthenticator() {
- Authenticator authenticator = securityConfig.authenticator();
- Assert.assertNotNull(authenticator);
- }
-}
diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/SecurityConfigLDAPTest.java~dev b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/SecurityConfigLDAPTest.java~dev
deleted file mode 100644
index a96cec9158..0000000000
--- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/SecurityConfigLDAPTest.java~dev
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.dolphinscheduler.api.security;
-
-import org.apache.dolphinscheduler.api.ApiApplicationServer;
-
-import org.junit.Assert;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.TestPropertySource;
-import org.springframework.test.context.junit4.SpringRunner;
-
-@RunWith(SpringRunner.class)
-@SpringBootTest(classes = ApiApplicationServer.class)
-@TestPropertySource(properties = {
- "security.authentication.type=LDAP",
-})
-public class SecurityConfigLDAPTest {
-
- @Autowired
- private SecurityConfig securityConfig;
-
- @Test
- public void testAuthenticator() {
- Authenticator authenticator = securityConfig.authenticator();
- Assert.assertNotNull(authenticator);
- }
-}
diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapAuthenticatorTest.java b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapAuthenticatorTest.java
index 9b6814815c..9fa7aa2c14 100644
--- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapAuthenticatorTest.java
+++ b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapAuthenticatorTest.java
@@ -79,6 +79,7 @@ public class LdapAuthenticatorTest extends AbstractControllerTest {
private String ip = "127.0.0.1";
private UserType userType = UserType.GENERAL_USER;
+ @Override
@Before
public void setUp() {
ldapAuthenticator = new LdapAuthenticator();
diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapServiceTest.java b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapServiceTest.java
index 8cd435f954..4cfdb0e50a 100644
--- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapServiceTest.java
+++ b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/ldap/LdapServiceTest.java
@@ -18,18 +18,23 @@
package org.apache.dolphinscheduler.api.security.impl.ldap;
import org.apache.dolphinscheduler.api.ApiApplicationServer;
+import org.apache.dolphinscheduler.common.enums.ProfileType;
import org.apache.dolphinscheduler.common.enums.UserType;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.config.AutowireCapableBeanFactory;
import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.context.TestPropertySource;
import org.springframework.test.context.junit4.SpringRunner;
+@Ignore
+@ActiveProfiles(ProfileType.H2)
@RunWith(SpringRunner.class)
@SpringBootTest(classes = ApiApplicationServer.class)
@TestPropertySource(
@@ -78,4 +83,4 @@ public class LdapServiceTest {
String email2 = ldapService.ldapLogin("tesla", "error password");
Assert.assertNull(email2);
}
-}
\ No newline at end of file
+}
diff --git a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/pwd/PasswordAuthenticatorTest.java b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/pwd/PasswordAuthenticatorTest.java
index 2ccc802ecf..b58a4b59df 100644
--- a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/pwd/PasswordAuthenticatorTest.java
+++ b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/security/impl/pwd/PasswordAuthenticatorTest.java
@@ -57,6 +57,7 @@ public class PasswordAuthenticatorTest extends AbstractControllerTest {
private User mockUser;
private Session mockSession;
+ @Override
@Before
public void setUp() {
authenticator = new PasswordAuthenticator();
diff --git a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
index e0c41e3c6c..0fa0ceb0a6 100644
--- a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
+++ b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/Constants.java
@@ -1029,12 +1029,6 @@ public final class Constants {
*/
public static final int AUTHORIZE_READABLE_PERM = 4;
-
- /**
- * plugin configurations
- */
- public static final String PLUGIN_JAR_SUFFIX = ".jar";
-
public static final int NORMAL_NODE_STATUS = 0;
public static final int ABNORMAL_NODE_STATUS = 1;
public static final int BUSY_NODE_STATUE = 2;
@@ -1048,9 +1042,6 @@ public final class Constants {
*/
public static final String SYSTEM_LINE_SEPARATOR = System.getProperty("line.separator");
-
- public static final String EXCEL_SUFFIX_XLS = ".xls";
-
/**
* datasource encryption salt
*/
@@ -1087,21 +1078,7 @@ public final class Constants {
* docker & kubernetes
*/
public static final boolean DOCKER_MODE = !StringUtils.isEmpty(System.getenv("DOCKER"));
- public static final boolean KUBERNETES_MODE = !StringUtils.isEmpty(System.getenv("KUBERNETES_SERVICE_HOST")) && !StringUtils.isEmpty(System.getenv("KUBERNETES_SERVICE_PORT"));
-
- /**
- * task parameter keys
- */
- public static final String TASK_PARAMS = "params";
- public static final String TASK_PARAMS_DATASOURCE = "datasource";
- public static final String TASK_PARAMS_DATASOURCE_NAME = "datasourceName";
- public static final String TASK_DEPENDENCE = "dependence";
- public static final String TASK_DEPENDENCE_DEPEND_TASK_LIST = "dependTaskList";
- public static final String TASK_DEPENDENCE_DEPEND_ITEM_LIST = "dependItemList";
- public static final String TASK_DEPENDENCE_PROJECT_ID = "projectId";
- public static final String TASK_DEPENDENCE_PROJECT_NAME = "projectName";
- public static final String TASK_DEPENDENCE_DEFINITION_ID = "definitionId";
- public static final String TASK_DEPENDENCE_DEFINITION_NAME = "definitionName";
+ public static final Boolean KUBERNETES_MODE = !StringUtils.isEmpty(System.getenv("KUBERNETES_SERVICE_HOST")) && !StringUtils.isEmpty(System.getenv("KUBERNETES_SERVICE_PORT"));
/**
* dry run flag
diff --git a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/CommonTest.java b/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/CommonTest.java
deleted file mode 100644
index 3752fe670c..0000000000
--- a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/CommonTest.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.dolphinscheduler.common;
-
-import static org.junit.Assert.assertTrue;
-
-import java.lang.reflect.Field;
-import java.lang.reflect.Modifier;
-
-import org.junit.Test;
-
-/**
- * CommonTest
- */
-public class CommonTest {
-
- public static void setFinalStatic(Field field, Object newValue) throws NoSuchFieldException, IllegalAccessException {
- field.setAccessible(true);
- Field modifiersField = Field.class.getDeclaredField("modifiers");
- modifiersField.setAccessible(true);
- modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL);
- field.set(null, newValue);
- }
-
- @Test
- public void testSetFinalStatic() throws Exception {
- setFinalStatic(Constants.class.getDeclaredField("KUBERNETES_MODE"), true);
- assertTrue(Constants.KUBERNETES_MODE);
- }
-
-}
diff --git a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/threadutils/ThreadPoolExecutorsTest.java b/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/threadutils/ThreadPoolExecutorsTest.java
index 9879154889..11c114c29e 100644
--- a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/threadutils/ThreadPoolExecutorsTest.java
+++ b/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/threadutils/ThreadPoolExecutorsTest.java
@@ -25,13 +25,10 @@ import org.slf4j.LoggerFactory;
* Thread Pool Executor Test
*/
public class ThreadPoolExecutorsTest {
-
private static final Logger logger = LoggerFactory.getLogger(ThreadPoolExecutors.class);
-
@Test
public void testThreadPoolExecutors() throws InterruptedException {
-
Thread2[] threadArr = new Thread2[10];
for (int i = 0; i < threadArr.length; i++) {
@@ -43,14 +40,10 @@ public class ThreadPoolExecutorsTest {
Thread.currentThread().join(40000l);
}
-
- //test thread
- class Thread2 extends Thread {
+ static class Thread2 extends Thread {
@Override
public void run() {
logger.info("ThreadPoolExecutors instance's hashcode is: {} ",ThreadPoolExecutors.getInstance("a",2).hashCode());
}
}
-
-
}
diff --git a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/NetUtilsTest.java b/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/NetUtilsTest.java
index 59dfa2f73a..cf629ca631 100644
--- a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/NetUtilsTest.java
+++ b/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/NetUtilsTest.java
@@ -23,17 +23,19 @@ import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
-import org.apache.dolphinscheduler.common.CommonTest;
import org.apache.dolphinscheduler.common.Constants;
import java.net.InetAddress;
+import org.junit.After;
import org.junit.Test;
+import org.powermock.reflect.Whitebox;
-/**
- * NetUtilsTest
- */
public class NetUtilsTest {
+ @After
+ public void reset() {
+ Whitebox.setInternalState(Constants.class, "KUBERNETES_MODE", false);
+ }
@Test
public void testGetAddr() {
@@ -43,31 +45,31 @@ public class NetUtilsTest {
}
@Test
- public void testGetHost() throws Exception {
+ public void testGetHost() {
InetAddress address = mock(InetAddress.class);
when(address.getCanonicalHostName()).thenReturn("dolphinscheduler-worker-0.dolphinscheduler-worker-headless.default.svc.cluster.local");
when(address.getHostName()).thenReturn("dolphinscheduler-worker-0");
when(address.getHostAddress()).thenReturn("172.17.0.15");
assertEquals("172.17.0.15", NetUtils.getHost(address));
- CommonTest.setFinalStatic(Constants.class.getDeclaredField("KUBERNETES_MODE"), true);
+ Whitebox.setInternalState(Constants.class, "KUBERNETES_MODE", true);
assertEquals("dolphinscheduler-worker-0.dolphinscheduler-worker-headless", NetUtils.getHost(address));
address = mock(InetAddress.class);
when(address.getCanonicalHostName()).thenReturn("busybox-1.default-subdomain.my-namespace.svc.cluster-domain.example");
when(address.getHostName()).thenReturn("busybox-1");
- CommonTest.setFinalStatic(Constants.class.getDeclaredField("KUBERNETES_MODE"), true);
+ Whitebox.setInternalState(Constants.class, "KUBERNETES_MODE", true);
assertEquals("busybox-1.default-subdomain", NetUtils.getHost(address));
address = mock(InetAddress.class);
when(address.getCanonicalHostName()).thenReturn("dolphinscheduler.cluster-domain.example");
when(address.getHostName()).thenReturn("dolphinscheduler");
- CommonTest.setFinalStatic(Constants.class.getDeclaredField("KUBERNETES_MODE"), true);
+ Whitebox.setInternalState(Constants.class, "KUBERNETES_MODE", true);
assertEquals("dolphinscheduler.cluster-domain.example", NetUtils.getHost(address));
address = mock(InetAddress.class);
when(address.getCanonicalHostName()).thenReturn("dolphinscheduler-worker-0");
when(address.getHostName()).thenReturn("dolphinscheduler-worker-0");
- CommonTest.setFinalStatic(Constants.class.getDeclaredField("KUBERNETES_MODE"), true);
+ Whitebox.setInternalState(Constants.class, "KUBERNETES_MODE", true);
assertEquals("dolphinscheduler-worker-0", NetUtils.getHost(address));
}
diff --git a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/OSUtilsTest.java b/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/OSUtilsTest.java
deleted file mode 100644
index ef0fe1e20f..0000000000
--- a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/OSUtilsTest.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.dolphinscheduler.common.utils;
-
-import org.apache.commons.lang.SystemUtils;
-
-import java.io.IOException;
-import java.util.List;
-
-import org.junit.Assert;
-import org.junit.Test;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class OSUtilsTest {
- private static final Logger logger = LoggerFactory.getLogger(OSUtilsTest.class);
-
- @Test
- public void getUserList() {
- List userList = OSUtils.getUserList();
- Assert.assertNotEquals("System user list should not be empty", userList.size(), 0);
- logger.info("OS user list : {}", userList.toString());
- }
-
- @Test
- public void testOSMetric() {
- if (!SystemUtils.IS_OS_WINDOWS) {
- double availablePhysicalMemorySize = OSUtils.availablePhysicalMemorySize();
- Assert.assertTrue(availablePhysicalMemorySize >= 0.0d);
- double loadAverage = OSUtils.loadAverage();
- logger.info("loadAverage {}", loadAverage);
- double memoryUsage = OSUtils.memoryUsage();
- Assert.assertTrue(memoryUsage >= 0.0d);
- double cpuUsage = OSUtils.cpuUsage();
- Assert.assertTrue(cpuUsage >= 0.0d || cpuUsage == -1.0d);
- } else {
- // TODO window ut
- }
- }
-
- @Test
- public void getGroup() {
- try {
- String group = OSUtils.getGroup();
- Assert.assertNotNull(group);
- } catch (IOException e) {
- Assert.fail("get group failed " + e.getMessage());
- }
- }
-
- @Test
- public void createUser() {
- boolean result = OSUtils.createUser("test123");
- if (result) {
- Assert.assertTrue("create user test123 success", true);
- } else {
- Assert.assertTrue("create user test123 fail", true);
- }
- }
-
- @Test
- public void createUserIfAbsent() {
- OSUtils.createUserIfAbsent("test123");
- Assert.assertTrue("create user test123 success", true);
- }
-
- @Test
- public void testGetSudoCmd() {
- String cmd = "kill -9 1234";
- String sudoCmd = OSUtils.getSudoCmd("test123", cmd);
- Assert.assertEquals("sudo -u test123 " + cmd, sudoCmd);
- }
-
- @Test
- public void exeCmd() {
- if (SystemUtils.IS_OS_MAC || !SystemUtils.IS_OS_WINDOWS) {
- try {
- String result = OSUtils.exeCmd("echo helloWorld");
- Assert.assertEquals("helloWorld\n",result);
- } catch (IOException e) {
- Assert.fail("exeCmd " + e.getMessage());
- }
- }
- }
- @Test
- public void getProcessID() {
- int processId = OSUtils.getProcessID();
- Assert.assertNotEquals(0, processId);
- }
- @Test
- public void checkResource() {
- boolean resource = OSUtils.checkResource(100,0);
- Assert.assertTrue(resource);
- resource = OSUtils.checkResource(0,Double.MAX_VALUE);
- Assert.assertFalse(resource);
- }
-
-}
diff --git a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/placeholder/TimePlaceholderUtilsTest.java b/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/placeholder/TimePlaceholderUtilsTest.java
index 68f206d28f..59b61fd980 100644
--- a/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/placeholder/TimePlaceholderUtilsTest.java
+++ b/dolphinscheduler-common/src/test/java/org/apache/dolphinscheduler/common/utils/placeholder/TimePlaceholderUtilsTest.java
@@ -20,15 +20,22 @@ package org.apache.dolphinscheduler.common.utils.placeholder;
import org.apache.dolphinscheduler.common.utils.DateUtils;
import java.util.Date;
+import java.util.TimeZone;
import org.junit.Assert;
import org.junit.Before;
+import org.junit.BeforeClass;
import org.junit.Test;
public class TimePlaceholderUtilsTest {
private Date date;
+ @BeforeClass
+ public static void setup() {
+ TimeZone.setDefault(TimeZone.getTimeZone("Asia/Shanghai"));
+ }
+
@Before
public void init() {
date = DateUtils.parse("20170101010101", "yyyyMMddHHmmss");
@@ -72,4 +79,4 @@ public class TimePlaceholderUtilsTest {
Assert.assertEquals("20170101", TimePlaceholderUtils.getPlaceHolderTime("yyyyMMdd", date));
}
-}
\ No newline at end of file
+}
diff --git a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/datasource/SpringConnectionFactory.java b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/datasource/SpringConnectionFactory.java
index f91914a1c7..8221444027 100644
--- a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/datasource/SpringConnectionFactory.java
+++ b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/datasource/SpringConnectionFactory.java
@@ -152,7 +152,7 @@ public class SpringConnectionFactory {
.setType(EmbeddedDatabaseType.H2)
.setScriptEncoding(Constants.UTF_8)
.setName("dolphinscheduler;MODE=MySQL;DATABASE_TO_LOWER=TRUE;DB_CLOSE_DELAY=-1")
- .addScript(PropertyUtils.getString("spring.datasource.sql.schema", "file:../sql/dolphinscheduler_h2.sql"))
+ .addScript(PropertyUtils.getString("spring.datasource.sql.schema", "classpath:sql/dolphinscheduler_h2.sql"))
.build();
logger.info("Initialize H2 DataSource success");
}
diff --git a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/upgrade/UpgradeDao.java b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/upgrade/UpgradeDao.java
index ec13a354e0..560d9a14c7 100644
--- a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/upgrade/UpgradeDao.java
+++ b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/upgrade/UpgradeDao.java
@@ -214,7 +214,6 @@ public abstract class UpgradeDao extends AbstractBaseDao {
if (StringUtils.isEmpty(rootDir)) {
throw new RuntimeException("Environment variable user.dir not found");
}
- //String mysqlSQLFilePath = rootDir + "/sql/create/release-1.0.0_schema/mysql/dolphinscheduler_ddl.sql";
String mysqlSQLFilePath = rootDir + initSqlPath + "dolphinscheduler_ddl.sql";
try {
conn = dataSource.getConnection();
diff --git a/sql/create/release-1.0.0_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/create/release-1.0.0_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/create/release-1.0.0_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/create/release-1.0.0_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/create/release-1.0.0_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/create/release-1.0.0_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/create/release-1.0.0_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/create/release-1.0.0_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/create/release-1.2.0_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/create/release-1.2.0_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/create/release-1.2.0_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/create/release-1.2.0_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/create/release-1.2.0_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/create/release-1.2.0_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/create/release-1.2.0_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/create/release-1.2.0_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/sql/dolphinscheduler_h2.sql b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
similarity index 100%
rename from sql/dolphinscheduler_h2.sql
rename to dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
diff --git a/sql/dolphinscheduler_mysql.sql b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
similarity index 100%
rename from sql/dolphinscheduler_mysql.sql
rename to dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
diff --git a/sql/dolphinscheduler_postgre.sql b/dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgre.sql
similarity index 100%
rename from sql/dolphinscheduler_postgre.sql
rename to dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgre.sql
diff --git a/sql/soft_version b/dolphinscheduler-dao/src/main/resources/sql/soft_version
similarity index 100%
rename from sql/soft_version
rename to dolphinscheduler-dao/src/main/resources/sql/soft_version
diff --git a/sql/upgrade/1.0.1_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.0.1_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.0.1_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.0.1_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.0.1_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.0.1_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.0.1_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.0.1_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.0.2_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.0.2_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.0.2_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.0.2_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.0.2_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.0.2_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.0.2_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.0.2_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.1.0_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.1.0_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.1.0_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.1.0_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.1.0_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.1.0_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.1.0_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.1.0_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.2.0_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.2.0_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.2.0_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.2.0_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.2.0_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.2.0_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.2.0_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.2.0_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.2.0_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.2.0_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.2.0_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.2.0_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.2.0_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.2.0_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.2.0_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.2.0_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.0_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.0_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.0_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.0_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.0_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.0_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.0_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.0_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.0_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.0_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.0_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.0_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.0_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.0_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.0_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.0_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.2_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.2_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.2_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.2_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.2_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.2_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.2_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.2_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.2_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.2_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.2_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.2_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.2_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.2_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.2_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.2_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.3_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.3_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.3_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.3_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.3_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.3_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.3_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.3_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.3_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.3_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.3_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.3_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.3_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.3_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.3_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.3_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.5_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.5_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.5_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.5_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.5_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.5_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.5_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.5_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.5_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.5_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.5_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.5_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.5_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.5_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.5_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.5_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.6_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.6_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.6_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.6_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.6_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.6_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.6_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.6_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.6_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.6_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.6_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.6_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.6_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.6_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.6_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.6_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.7_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.7_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.7_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.7_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.7_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.7_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.7_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.7_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/1.3.7_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.7_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/1.3.7_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.7_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/1.3.7_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.7_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/1.3.7_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/1.3.7_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_ddl_post.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_ddl_post.sql
similarity index 100%
rename from sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_ddl_post.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_ddl_post.sql
diff --git a/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/mysql/dolphinscheduler_dml.sql
diff --git a/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_ddl.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_ddl.sql
similarity index 100%
rename from sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_ddl.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_ddl.sql
diff --git a/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_ddl_post.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_ddl_post.sql
similarity index 100%
rename from sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_ddl_post.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_ddl_post.sql
diff --git a/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_dml.sql b/dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_dml.sql
similarity index 100%
rename from sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_dml.sql
rename to dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.0_schema/postgresql/dolphinscheduler_dml.sql
diff --git a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/AlertDaoTest.java b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/AlertDaoTest.java
index de6a3b03e8..abc56ca758 100644
--- a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/AlertDaoTest.java
+++ b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/AlertDaoTest.java
@@ -23,15 +23,15 @@ import org.apache.dolphinscheduler.dao.entity.Alert;
import java.util.List;
import org.junit.Assert;
-import org.junit.Before;
+import org.junit.BeforeClass;
import org.junit.Test;
import org.springframework.transaction.annotation.Transactional;
@Transactional
public class AlertDaoTest {
- @Before
- public void setUp() {
+ @BeforeClass
+ public static void setUp() {
System.setProperty("spring.profiles.active", "h2");
}
@@ -60,9 +60,9 @@ public class AlertDaoTest {
alertDao.sendServerStopedAlert(alertGroupId, host, serverType);
alertDao.sendServerStopedAlert(alertGroupId, host, serverType);
long count = alertDao.listWaitExecutionAlert()
- .stream()
- .filter(alert -> alert.getContent().contains(host))
- .count();
+ .stream()
+ .filter(alert -> alert.getContent().contains(host))
+ .count();
Assert.assertEquals(1L, count);
}
}
diff --git a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ConnectionFactoryTest.java b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ConnectionFactoryTest.java
index 8f65147189..a2a9c151e7 100644
--- a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ConnectionFactoryTest.java
+++ b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ConnectionFactoryTest.java
@@ -17,22 +17,23 @@
package org.apache.dolphinscheduler.dao.mapper;
import org.apache.dolphinscheduler.dao.datasource.ConnectionFactory;
-import org.junit.Assert;
-import org.junit.Test;
import java.sql.Connection;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
public class ConnectionFactoryTest {
+ @BeforeClass
+ public static void setup() {
+ System.setProperty("spring.profiles.active", "h2");
+ }
- /**
- * test connection
- * @throws Exception if error throws Exception
- */
@Test
- public void testConnection()throws Exception{
- System.setProperty("spring.profiles.active", "h2");
+ public void testConnection() throws Exception {
Connection connection = ConnectionFactory.getInstance().getDataSource().getConnection();
Assert.assertTrue(connection != null);
}
-}
\ No newline at end of file
+}
diff --git a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/ProcessDefinitionDaoTest.java b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/ProcessDefinitionDaoTest.java
index f27a772c2d..e2078f7add 100644
--- a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/ProcessDefinitionDaoTest.java
+++ b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/ProcessDefinitionDaoTest.java
@@ -24,15 +24,15 @@ import java.util.Map;
import javax.sql.DataSource;
-import org.junit.Before;
+import org.junit.BeforeClass;
import org.junit.Test;
public class ProcessDefinitionDaoTest {
- DataSource dataSource;
+ static DataSource dataSource;
final ProcessDefinitionDao processDefinitionDao = new ProcessDefinitionDao();
- @Before
- public void seuUp() {
+ @BeforeClass
+ public static void seuUp() {
System.setProperty("spring.profiles.active", "h2");
dataSource = getDataSource();
}
diff --git a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/UpgradeDaoTest.java b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/UpgradeDaoTest.java
index 17d5a35301..e7f92113ff 100644
--- a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/UpgradeDaoTest.java
+++ b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/UpgradeDaoTest.java
@@ -16,14 +16,19 @@
*/
package org.apache.dolphinscheduler.dao.upgrade;
+import org.junit.BeforeClass;
import org.junit.Test;
public class UpgradeDaoTest {
private PostgresqlUpgradeDao postgresqlUpgradeDao;
+ @BeforeClass
+ public static void setUpClass() {
+ System.setProperty("spring.profiles.active", "h2");
+ }
+
@Test
public void setUp() {
- System.setProperty("spring.profiles.active", "h2");
postgresqlUpgradeDao = PostgresqlUpgradeDao.getInstance();
}
diff --git a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/WorkerGroupDaoTest.java b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/WorkerGroupDaoTest.java
index 7eed867248..44bdccf084 100644
--- a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/WorkerGroupDaoTest.java
+++ b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/upgrade/WorkerGroupDaoTest.java
@@ -25,10 +25,22 @@ import java.util.Map;
import javax.sql.DataSource;
+import org.junit.Before;
+import org.junit.BeforeClass;
import org.junit.Test;
public class WorkerGroupDaoTest {
- protected final DataSource dataSource = getDataSource();
+ protected DataSource dataSource;
+
+ @BeforeClass
+ public static void setupClass() {
+ System.setProperty("spring.profiles.active", "h2");
+ }
+
+ @Before
+ public void setup() {
+ dataSource = getDataSource();
+ }
@Test
public void testQueryQueryAllOldWorkerGroup() throws Exception {
diff --git a/dolphinscheduler-dist/pom.xml b/dolphinscheduler-dist/pom.xml
index 1c8213275b..877665a942 100644
--- a/dolphinscheduler-dist/pom.xml
+++ b/dolphinscheduler-dist/pom.xml
@@ -328,7 +328,7 @@
- ${basedir}/../sql
+ ${basedir}/../dolphinscheduler-dao/src/main/resources/sql
**/*.*
@@ -336,7 +336,7 @@
- ${basedir}/../sql
+ ${basedir}/../dolphinscheduler-dao/src/main/resources/sql
soft_version
diff --git a/dolphinscheduler-dist/src/main/assembly/dolphinscheduler-bin.xml b/dolphinscheduler-dist/src/main/assembly/dolphinscheduler-bin.xml
index c918aefa2a..11e0487d21 100644
--- a/dolphinscheduler-dist/src/main/assembly/dolphinscheduler-bin.xml
+++ b/dolphinscheduler-dist/src/main/assembly/dolphinscheduler-bin.xml
@@ -147,7 +147,7 @@
- ${basedir}/../sql
+ ${basedir}/../dolphinscheduler-dao/src/main/resources/sql
**/*
diff --git a/dolphinscheduler-server/src/test/java/org/apache/dolphinscheduler/server/master/WorkflowExecuteThreadTest.java b/dolphinscheduler-server/src/test/java/org/apache/dolphinscheduler/server/master/WorkflowExecuteThreadTest.java
index aa8102ec4f..6e2dda06ef 100644
--- a/dolphinscheduler-server/src/test/java/org/apache/dolphinscheduler/server/master/WorkflowExecuteThreadTest.java
+++ b/dolphinscheduler-server/src/test/java/org/apache/dolphinscheduler/server/master/WorkflowExecuteThreadTest.java
@@ -77,7 +77,7 @@ public class WorkflowExecuteThreadTest {
private ProcessService processService;
- private int processDefinitionId = 1;
+ private final int processDefinitionId = 1;
private MasterConfig config;
@@ -112,44 +112,9 @@ public class WorkflowExecuteThreadTest {
Field dag = WorkflowExecuteThread.class.getDeclaredField("dag");
dag.setAccessible(true);
dag.set(workflowExecuteThread, new DAG());
- PowerMockito.doNothing().when(workflowExecuteThread, "prepareProcess");
PowerMockito.doNothing().when(workflowExecuteThread, "endProcess");
}
- /**
- * without schedule
- */
- @Test
- public void testParallelWithOutSchedule() throws ParseException {
- try {
- Mockito.when(processService.queryReleaseSchedulerListByProcessDefinitionCode(processDefinitionId)).thenReturn(zeroSchedulerList());
- Method method = WorkflowExecuteThread.class.getDeclaredMethod("executeComplementProcess");
- method.setAccessible(true);
- method.invoke(workflowExecuteThread);
- // one create save, and 1-30 for next save, and last day 20 no save
- verify(processService, times(20)).saveProcessInstance(processInstance);
- } catch (Exception e) {
- e.printStackTrace();
- Assert.fail();
- }
- }
-
- /**
- * with schedule
- */
- @Test
- public void testParallelWithSchedule() {
- try {
- Mockito.when(processService.queryReleaseSchedulerListByProcessDefinitionCode(processDefinitionId)).thenReturn(oneSchedulerList());
- Method method = WorkflowExecuteThread.class.getDeclaredMethod("executeComplementProcess");
- method.setAccessible(true);
- method.invoke(workflowExecuteThread);
- // one create save, and 9(1 to 20 step 2) for next save, and last day 31 no save
- verify(processService, times(20)).saveProcessInstance(processInstance);
- } catch (Exception e) {
- Assert.fail();
- }
- }
@Test
public void testParseStartNodeName() throws ParseException {
@@ -167,23 +132,6 @@ public class WorkflowExecuteThreadTest {
}
}
- @Test
- public void testRetryTaskIntervalOverTime() {
- try {
- TaskInstance taskInstance = new TaskInstance();
- taskInstance.setId(0);
- taskInstance.setMaxRetryTimes(0);
- taskInstance.setRetryInterval(0);
- taskInstance.setState(ExecutionStatus.FAILURE);
- Class masterExecThreadClass = WorkflowExecuteThread.class;
- Method method = masterExecThreadClass.getDeclaredMethod("retryTaskIntervalOverTime", TaskInstance.class);
- method.setAccessible(true);
- Assert.assertTrue((Boolean) method.invoke(workflowExecuteThread, taskInstance));
- } catch (Exception e) {
- Assert.fail();
- }
- }
-
@Test
public void testGetStartTaskInstanceList() {
try {
diff --git a/dolphinscheduler-standalone-server/src/main/java/org/apache/dolphinscheduler/server/StandaloneServer.java b/dolphinscheduler-standalone-server/src/main/java/org/apache/dolphinscheduler/server/StandaloneServer.java
index 28f04dfb5c..50247b621d 100644
--- a/dolphinscheduler-standalone-server/src/main/java/org/apache/dolphinscheduler/server/StandaloneServer.java
+++ b/dolphinscheduler-standalone-server/src/main/java/org/apache/dolphinscheduler/server/StandaloneServer.java
@@ -38,7 +38,7 @@ public class StandaloneServer {
Thread.currentThread().setName("Standalone-Server");
System.setProperty("spring.profiles.active", "api,h2");
- System.setProperty("spring.datasource.sql.schema", "file:./sql/dolphinscheduler_h2.sql");
+ System.setProperty("spring.datasource.sql.schema", "classpath:sql/dolphinscheduler_h2.sql");
startRegistry();
diff --git a/pom.xml b/pom.xml
index a475181ad4..bfc5f6cee4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -16,7 +16,7 @@
~ limitations under the License.
-->
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
org.apache.dolphinscheduler
dolphinscheduler
@@ -129,6 +129,7 @@
1.5.1
0.10.9
1.0.1
+ false
@@ -884,268 +885,6 @@
${project.build.directory}/jacoco.exec
-
-
- **/plugin/registry/zookeeper/ZookeeperRegistryTest.java
-
- **/api/controller/ProjectControllerTest.java
- **/api/controller/QueueControllerTest.java
- **/api/configuration/TrafficConfigurationTest.java
- **/api/controller/ProcessDefinitionControllerTest.java
- **/api/controller/TenantControllerTest.java
- **/api/controller/SchedulerControllerTest.java
- **/api/dto/resources/filter/ResourceFilterTest.java
- **/api/dto/resources/visitor/ResourceTreeVisitorTest.java
- **/api/enums/testGetEnum.java
- **/api/enums/StatusTest.java
- **/api/exceptions/ApiExceptionHandlerTest.java
- **/api/exceptions/ServiceExceptionTest.java
- **/api/interceptor/LocaleChangeInterceptorTest.java
- **/api/interceptor/LoginHandlerInterceptorTest.java
- **/api/interceptor/RateLimitInterceptorTest.java
- **/api/security/impl/pwd/PasswordAuthenticatorTest.java
- **/api/security/impl/ldap/LdapAuthenticatorTest.java
- **/api/security/SecurityConfigLDAPTest.java
- **/api/security/SecurityConfigPasswordTest.java
- **/api/service/AccessTokenServiceTest.java
- **/api/service/AlertGroupServiceTest.java
- **/api/service/BaseDAGServiceTest.java
- **/api/service/BaseServiceTest.java
- **/api/service/DataAnalysisServiceTest.java
- **/api/service/AlertPluginInstanceServiceTest.java
- **/api/service/DataSourceServiceTest.java
- **/api/service/ExecutorService2Test.java
- **/api/service/ExecutorServiceTest.java
- **/api/service/LoggerServiceTest.java
- **/api/service/MonitorServiceTest.java
- **/api/service/ProcessDefinitionServiceTest.java
- **/api/service/ProcessTaskRelationServiceImplTest.java
- **/api/service/TaskDefinitionServiceImplTest.java
- **/api/service/ProcessInstanceServiceTest.java
- **/api/service/ProjectServiceTest.java
- **/api/service/QueueServiceTest.java
- **/api/service/ResourcesServiceTest.java
- **/api/service/SchedulerServiceTest.java
- **/api/service/SessionServiceTest.java
- **/api/service/TaskInstanceServiceTest.java
- **/api/service/TenantServiceTest.java
- **/api/service/UdfFuncServiceTest.java
- **/api/service/UiPluginServiceTest.java
- **/api/service/UserAlertGroupServiceTest.java
- **/api/service/UsersServiceTest.java
- **/api/service/WorkerGroupServiceTest.java
- **/api/service/WorkFlowLineageServiceTest.java
- **/api/service/EnvironmentServiceTest.java
- **/api/service/EnvironmentWorkerGroupRelationServiceTest.java
- **/api/controller/ProcessDefinitionControllerTest.java
- **/api/controller/TaskInstanceControllerTest.java
- **/api/controller/WorkFlowLineageControllerTest.java
- **/api/controller/EnvironmentControllerTest.java
- **/api/utils/exportprocess/DataSourceParamTest.java
- **/api/utils/exportprocess/DependentParamTest.java
- **/api/utils/CheckUtilsTest.java
- **/api/utils/FileUtilsTest.java
- **/api/utils/CheckUtilsTest.java
- **/api/utils/CheckUtilsTest.java
- **/api/utils/ResultTest.java
- **/common/graph/DAGTest.java
- **/common/os/OshiTest.java
- **/common/shell/ShellExecutorTest.java
- **/common/task/DataxParametersTest.java
- **/common/task/EntityTestUtils.java
- **/common/task/FlinkParametersTest.java
- **/common/task/HttpParametersTest.java
- **/common/task/SparkParametersTest.java
- **/common/task/SqlParametersTest.java
- **/common/task/SqoopParameterEntityTest.java
- **/common/threadutils/ThreadPoolExecutorsTest.java
- **/common/threadutils/ThreadUtilsTest.java
- **/common/utils/CollectionUtilsTest.java
- **/common/utils/CommonUtilsTest.java
- **/common/utils/DateUtilsTest.java
- **/common/utils/DependentUtilsTest.java
- **/common/utils/EncryptionUtilsTest.java
- **/common/utils/FileUtilsTest.java
- **/common/utils/JSONUtilsTest.java
- **/common/utils/LoggerUtilsTest.java
- **/common/utils/NetUtilsTest.java
- **/common/utils/ParameterUtilsTest.java
- **/common/utils/TimePlaceholderUtilsTest.java
- **/common/utils/PreconditionsTest.java
- **/common/utils/PropertyUtilsTest.java
- **/common/utils/SchemaUtilsTest.java
- **/common/utils/ScriptRunnerTest.java
- **/common/utils/SensitiveLogUtilsTest.java
- **/common/utils/StringTest.java
- **/common/utils/StringUtilsTest.java
- **/common/utils/TaskParametersUtilsTest.java
- **/common/utils/VarPoolUtilsTest.java
- **/common/utils/HadoopUtilsTest.java
- **/common/utils/HttpUtilsTest.java
- **/common/utils/KerberosHttpClientTest.java
- **/common/utils/HiveConfUtilsTest.java
- **/common/ConstantsTest.java
- **/common/utils/HadoopUtils.java
- **/common/utils/RetryerUtilsTest.java
- **/common/datasource/clickhouse/ClickHouseDatasourceProcessorTest.java
- **/common/datasource/db2/Db2DatasourceProcessorTest.java
- **/common/datasource/hive/HiveDatasourceProcessorTest.java
- **/common/datasource/mysql/MysqlDatasourceProcessorTest.java
- **/common/datasource/oracle/OracleDatasourceProcessorTest.java
- **/common/datasource/postgresql/PostgreSqlDatasourceProcessorTest.java
- **/common/datasource/presto/PrestoDatasourceProcessorTest.java
- **/common/datasource/spark/SparkDatasourceProcessorTest.java
- **/common/datasource/sqlserver/SqlServerDatasourceProcessorTest.java
- **/common/datasource/DatasourceUtilTest.java
- **/common/enums/ExecutionStatusTest
- **/dao/mapper/AccessTokenMapperTest.java
- **/dao/mapper/AlertGroupMapperTest.java
- **/dao/mapper/CommandMapperTest.java
- **/dao/mapper/ConnectionFactoryTest.java
- **/dao/mapper/DataSourceMapperTest.java
- **/dao/datasource/MySQLDataSourceTest.java
- **/dao/entity/TaskInstanceTest.java
- **/dao/entity/UdfFuncTest.java
- **/remote/command/alert/AlertSendRequestCommandTest.java
- **/remote/command/alert/AlertSendResponseCommandTest.java
- **/remote/command/future/ResponseFutureTest.java
- **/remote/command/log/RemoveTaskLogRequestCommandTest.java
- **/remote/command/log/RemoveTaskLogResponseCommandTest.java
- **/remote/command/log/GetLogBytesRequestCommandTest.java
- **/remote/command/log/GetLogBytesResponseCommandTest.java
- **/remote/command/log/ViewLogRequestCommandTest.java
- **/remote/utils/HostTest.java
- **/remote/utils/NettyUtilTest.java
- **/remote/NettyRemotingClientTest.java
- **/rpc/RpcTest.java
- **/server/log/LoggerServerTest.java
- **/server/entity/SQLTaskExecutionContextTest.java
- **/server/log/MasterLogFilterTest.java
- **/server/log/SensitiveDataConverterTest.java
- **/server/log/LoggerRequestProcessorTest.java
-
- **/server/log/TaskLogFilterTest.java
- **/server/log/WorkerLogFilterTest.java
- **/server/master/cache/impl/TaskInstanceCacheManagerImplTest.java
- **/server/master/config/MasterConfigTest.java
- **/server/master/consumer/TaskPriorityQueueConsumerTest.java
- **/server/master/runner/MasterTaskExecThreadTest.java
-
- **/server/master/dispatch/host/assign/LowerWeightRoundRobinTest.java
- **/server/master/dispatch/host/assign/RandomSelectorTest.java
- **/server/master/dispatch/host/assign/RoundRobinSelectorTest.java
- **/server/master/dispatch/host/assign/HostWorkerTest.java
- **/server/master/registry/MasterRegistryClientTest.java
- **/server/master/registry/ServerNodeManagerTest.java
- **/server/master/dispatch/host/RefreshResourceTaskTest.java
- **/server/master/dispatch/host/assign/RoundRobinHostManagerTest.java
- **/server/master/MasterCommandTest.java
- **/server/master/DependentTaskTest.java
- **/server/master/ConditionsTaskTest.java
- **/server/master/SwitchTaskTest.java
- **/server/master/MasterExecThreadTest.java
- **/server/master/ParamsTest.java
- **/server/master/SubProcessTaskTest.java
- **/server/master/processor/TaskAckProcessorTest.java
- **/server/master/processor/TaskKillResponseProcessorTest.java
- **/server/master/processor/queue/TaskResponseServiceTest.java
- **/server/master/zk/ZKMasterClientTest.java
- **/server/registry/ZookeeperRegistryCenterTest.java
- **/server/utils/DataxUtilsTest.java
- **/server/utils/ExecutionContextTestUtils.java
- **/server/utils/FlinkArgsUtilsTest.java
- **/server/utils/LogUtilsTest.java
- **/server/utils/MapReduceArgsUtilsTest.java
- **/server/utils/ParamUtilsTest.java
- **/server/utils/ProcessUtilsTest.java
- **/server/utils/SparkArgsUtilsTest.java
- **/server/worker/processor/TaskCallbackServiceTest.java
- **/server/worker/processor/TaskExecuteProcessorTest.java
- **/server/worker/registry/WorkerRegistryTest.java
- **/server/worker/shell/ShellCommandExecutorTest.java
- **/server/worker/sql/SqlExecutorTest.java
- **/server/worker/task/spark/SparkTaskTest.java
- **/server/worker/task/spark/SparkTaskTest.java
- **/server/worker/task/datax/DataxTaskTest.java
-
- **/server/worker/task/sqoop/SqoopTaskTest.java
- **/server/worker/task/processdure/ProcedureTaskTest.java
- **/server/worker/task/shell/ShellTaskTest.java
- **/server/worker/task/TaskManagerTest.java
- **/server/worker/task/PythonCommandExecutorTest.java
- **/server/worker/task/TaskParamsTest.java
- **/server/worker/task/ShellTaskReturnTest.java
- **/server/worker/task/sql/SqlTaskTest.java
- **/server/worker/runner/TaskExecuteThreadTest.java
- **/server/worker/runner/WorkerManagerThreadTest.java
- **/server/master/cache/impl/ProcessInstanceExecCacheManagerImplTest.java
- **/service/quartz/cron/CronUtilsTest.java
- **/service/process/ProcessServiceTest.java
- **/service/registry/RegistryClientTest.java
- **/service/registry/RegistryPluginTest.java
- **/service/queue/TaskUpdateQueueTest.java
- **/service/queue/PeerTaskInstancePriorityQueueTest.java
- **/service/log/LogClientServiceTest.java
- **/service/alert/AlertClientServiceTest.java
- **/service/alert/ProcessAlertManagerTest.java
- **/dao/mapper/DataSourceUserMapperTest.java
-
- **/dao/mapper/ProcessDefinitionMapperTest.java
- **/dao/mapper/ProcessInstanceMapMapperTest.java
- **/dao/mapper/ProcessInstanceMapperTest.java
- **/dao/mapper/ProjectMapperTest.java
- **/dao/mapper/ProjectUserMapperTest.java
- **/dao/mapper/QueueMapperTest.java
- **/dao/mapper/ResourceUserMapperTest.java
- **/dao/mapper/ScheduleMapperTest.java
- **/dao/mapper/SessionMapperTest.java
- **/dao/mapper/TaskInstanceMapperTest.java
- **/dao/mapper/TenantMapperTest.java
- **/dao/mapper/UdfFuncMapperTest.java
- **/dao/mapper/UDFUserMapperTest.java
- **/dao/mapper/UserMapperTest.java
- **/dao/mapper/AlertPluginInstanceMapperTest.java
- **/dao/mapper/PluginDefineTest.java
- **/dao/utils/DagHelperTest.java
- **/dao/AlertDaoTest.java
- **/dao/datasource/OracleDataSourceTest.java
- **/dao/datasource/HiveDataSourceTest.java
- **/dao/datasource/BaseDataSourceTest.java
- **/dao/upgrade/ProcessDefinitionDaoTest.java
- **/dao/upgrade/WokrerGrouopDaoTest.java
- **/dao/upgrade/UpgradeDaoTest.java
- **/plugin/alert/email/EmailAlertChannelFactoryTest.java
- **/plugin/alert/email/EmailAlertChannelTest.java
- **/plugin/alert/email/ExcelUtilsTest.java
- **/plugin/alert/email/template/DefaultHTMLTemplateTest.java
- **/plugin/alert/dingtalk/DingTalkSenderTest.java
- **/plugin/alert/dingtalk/DingTalkAlertChannelFactoryTest.java
- **/plugin/alert/wechat/WeChatSenderTest.java
- **/plugin/alert/wechat/WeChatAlertChannelFactoryTest.java
- **/plugin/alert/script/ProcessUtilsTest.java
- **/plugin/alert/script/ScriptAlertChannelFactoryTest.java
- **/plugin/alert/script/ScriptSenderTest.java
- **/plugin/alert/http/HttpAlertChannelFactoryTest.java
- **/plugin/alert/http/HttpAlertChannelTest.java
- **/plugin/alert/feishu/FeiShuAlertChannelFactoryTest.java
- **/plugin/alert/feishu/FeiShuSenderTest.java
- **/plugin/alert/http/HttpAlertPluginTest.java
- **/plugin/alert/http/HttpSenderTest.java
- **/plugin/alert/slack/SlackAlertChannelFactoryTest.java
- **/plugin/alert/slack/SlackAlertPluginTest.java
- **/plugin/alert/slack/SlackSenderTest.java
- **/spi/params/PluginParamsTransferTest.java
- **/spi/plugin/DolphinSchedulerPluginLoaderTest.java
- **/alert/plugin/EmailAlertPluginTest.java
- **/alert/plugin/AlertPluginManagerTest.java
- **/alert/plugin/DolphinPluginLoaderTest.java
- **/alert/utils/FuncUtilsTest.java
- **/alert/processor/AlertRequestProcessorTest.java
- **/alert/runner/AlertSenderTest.java
- **/alert/AlertServerTest.java
- **/plugin/task/pigeon/PigeonTaskTest.java
-
-
@@ -1155,6 +894,7 @@
jacoco-maven-plugin
${jacoco.version}
+ ${jacoco.skip}
${project.build.directory}/jacoco.exec
diff --git a/script/dolphinscheduler-daemon.sh b/script/dolphinscheduler-daemon.sh
index 4de812b979..91383ff679 100755
--- a/script/dolphinscheduler-daemon.sh
+++ b/script/dolphinscheduler-daemon.sh
@@ -45,6 +45,7 @@ export HOSTNAME=`hostname`
export DOLPHINSCHEDULER_PID_DIR=$DOLPHINSCHEDULER_HOME/pid
export DOLPHINSCHEDULER_LOG_DIR=$DOLPHINSCHEDULER_HOME/logs
export DOLPHINSCHEDULER_CONF_DIR=$DOLPHINSCHEDULER_HOME/conf
+export DOLPHINSCHEDULER_SQL_DIR=$DOLPHINSCHEDULER_HOME/sql
export DOLPHINSCHEDULER_LIB_JARS=$DOLPHINSCHEDULER_HOME/lib/*
export STOP_TIMEOUT=5
@@ -100,7 +101,7 @@ case $startStop in
if [ "$DOCKER" = "true" ]; then
echo start $command in docker
export DOLPHINSCHEDULER_OPTS="$DOLPHINSCHEDULER_OPTS -XX:-UseContainerSupport"
- exec_command="$LOG_FILE $DOLPHINSCHEDULER_OPTS -classpath $DOLPHINSCHEDULER_CONF_DIR:$DOLPHINSCHEDULER_LIB_JARS $CLASS"
+ exec_command="$LOG_FILE $DOLPHINSCHEDULER_OPTS -classpath $DOLPHINSCHEDULER_SQL_DIR:$DOLPHINSCHEDULER_CONF_DIR:$DOLPHINSCHEDULER_LIB_JARS $CLASS"
$JAVA_HOME/bin/java $exec_command
else
[ -w "$DOLPHINSCHEDULER_PID_DIR" ] || mkdir -p "$DOLPHINSCHEDULER_PID_DIR"
@@ -113,7 +114,7 @@ case $startStop in
fi
echo starting $command, logging to $log
- exec_command="$LOG_FILE $DOLPHINSCHEDULER_OPTS -classpath $DOLPHINSCHEDULER_CONF_DIR:$DOLPHINSCHEDULER_LIB_JARS $CLASS"
+ exec_command="$LOG_FILE $DOLPHINSCHEDULER_OPTS -classpath $DOLPHINSCHEDULER_SQL_DIR:$DOLPHINSCHEDULER_CONF_DIR:$DOLPHINSCHEDULER_LIB_JARS $CLASS"
echo "nohup $JAVA_HOME/bin/java $exec_command > $log 2>&1 &"
nohup $JAVA_HOME/bin/java $exec_command > $log 2>&1 &
echo $! > $pid