This is an automated email from the ASF dual-hosted git repository.
songjian pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/dev by this push:
new de2d215aee impv: Correct datax execute and python execute script name
(#14523)
de2d215aee is described below
commit de2d215aee55a811dd2b843a97963190757da0e2
Author: Jay Chung <[email protected]>
AuthorDate: Thu Jul 20 09:13:55 2023 +0800
impv: Correct datax execute and python execute script name (#14523)
* impv: Correct datax execute and python execute script name
we use PYTHON_LAUNCHER for python script execute and
DATAX_LAUNCHER for datax script name
* Add pr number
* fix ut
* style
---------
Co-authored-by: xiangzihao <[email protected]>
---
.../cluster-test/mysql/dolphinscheduler_env.sh | 6 ++--
.../postgresql/dolphinscheduler_env.sh | 6 ++--
README.md | 2 ++
deploy/kubernetes/dolphinscheduler/values.yaml | 4 +--
docs/docs/en/architecture/configuration.md | 6 ++--
docs/docs/en/faq.md | 8 ++---
docs/docs/en/guide/expansion-reduction.md | 6 ++--
docs/docs/en/guide/installation/kubernetes.md | 6 ++--
docs/docs/en/guide/installation/pseudo-cluster.md | 6 ++--
docs/docs/en/guide/integration/rainbond.md | 2 +-
docs/docs/en/guide/task/datax.md | 4 +--
docs/docs/en/guide/task/openmldb.md | 2 +-
docs/docs/en/guide/task/pytorch.md | 6 ++--
docs/docs/en/guide/upgrade/incompatible.md | 1 +
docs/docs/zh/architecture/configuration.md | 6 ++--
docs/docs/zh/faq.md | 8 ++---
docs/docs/zh/guide/expansion-reduction.md | 6 ++--
docs/docs/zh/guide/installation/kubernetes.md | 6 ++--
docs/docs/zh/guide/installation/pseudo-cluster.md | 6 ++--
docs/docs/zh/guide/integration/rainbond.md | 2 +-
docs/docs/zh/guide/task/datax.md | 4 +--
docs/docs/zh/guide/task/openmldb.md | 2 +-
docs/docs/zh/guide/task/pytorch.md | 14 ++++-----
docs/docs/zh/guide/upgrade/incompatible.md | 1 +
.../api/service/EnvironmentServiceTest.java | 6 ++--
.../dao/mapper/ClusterMapperTest.java | 6 ++--
.../dao/mapper/EnvironmentMapperTest.java | 6 ++--
.../dao/utils/TaskCacheUtilsTest.java | 2 +-
.../plugin/task/datax/DataxTask.java | 12 ++++----
.../plugin/task/datax/DataxTaskTest.java | 6 ++--
.../plugin/task/openmldb/OpenmldbTask.java | 4 +--
.../plugin/task/python/PythonConstants.java | 35 ----------------------
.../plugin/task/python/PythonTask.java | 8 ++---
.../plugin/task/python/PythonTaskTest.java | 2 +-
.../plugin/task/pytorch/PythonEnvManager.java | 2 +-
.../plugin/task/pytorch/PytorchParameters.java | 10 +++----
.../plugin/task/pytorch/PytorchTask.java | 2 +-
.../plugin/task/pytorch/PytorchTaskTest.java | 14 ++++-----
dolphinscheduler-ui/src/locales/en_US/project.ts | 2 +-
dolphinscheduler-ui/src/locales/zh_CN/project.ts | 2 +-
.../task/components/node/tasks/use-pytorch.ts | 2 +-
.../components/environment-modal.tsx | 6 ++--
42 files changed, 106 insertions(+), 141 deletions(-)
diff --git a/.github/workflows/cluster-test/mysql/dolphinscheduler_env.sh
b/.github/workflows/cluster-test/mysql/dolphinscheduler_env.sh
index b19bdbcafb..671c70a5bb 100755
--- a/.github/workflows/cluster-test/mysql/dolphinscheduler_env.sh
+++ b/.github/workflows/cluster-test/mysql/dolphinscheduler_env.sh
@@ -39,12 +39,12 @@ export REGISTRY_ZOOKEEPER_BLOCK_UNTIL_CONNECTED=30000ms
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
-export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
+export PYTHON_LAUNCHER=${PYTHON_LAUNCHER:-/opt/soft/python/bin/python3}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
-export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
+export DATAX_LAUNCHER=${DATAX_LAUNCHER:-/opt/soft/datax/bin/datax.py}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH
export MASTER_RESERVED_MEMORY=0.01
export WORKER_RESERVED_MEMORY=0.01
diff --git a/.github/workflows/cluster-test/postgresql/dolphinscheduler_env.sh
b/.github/workflows/cluster-test/postgresql/dolphinscheduler_env.sh
index e7ab832fdd..1dbd63254e 100644
--- a/.github/workflows/cluster-test/postgresql/dolphinscheduler_env.sh
+++ b/.github/workflows/cluster-test/postgresql/dolphinscheduler_env.sh
@@ -39,12 +39,12 @@ export REGISTRY_ZOOKEEPER_BLOCK_UNTIL_CONNECTED=30000ms
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
-export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
+export PYTHON_LAUNCHER=${PYTHON_LAUNCHER:-/opt/soft/python/bin/python3}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
-export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
+export DATAX_LAUNCHER=${DATAX_LAUNCHER:-/opt/soft/datax/bin/datax.py}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH
export MASTER_RESERVED_MEMORY=0.01
export WORKER_RESERVED_MEMORY=0.01
diff --git a/README.md b/README.md
index 6eaab81773..1e8608ff83 100644
--- a/README.md
+++ b/README.md
@@ -76,3 +76,5 @@ DolphinScheduler enriches the <a
href="https://landscape.cncf.io/?landscape=obse
</p >
+
+/opt/soft/datax
diff --git a/deploy/kubernetes/dolphinscheduler/values.yaml
b/deploy/kubernetes/dolphinscheduler/values.yaml
index e24b3cb45c..c6f9ff8005 100644
--- a/deploy/kubernetes/dolphinscheduler/values.yaml
+++ b/deploy/kubernetes/dolphinscheduler/values.yaml
@@ -258,11 +258,11 @@ common:
HADOOP_HOME: "/opt/soft/hadoop"
HADOOP_CONF_DIR: "/opt/soft/hadoop/etc/hadoop"
SPARK_HOME: "/opt/soft/spark"
- PYTHON_HOME: "/usr/bin/python"
+ PYTHON_LAUNCHER: "/usr/bin/python/bin/python3"
JAVA_HOME: "/opt/java/openjdk"
HIVE_HOME: "/opt/soft/hive"
FLINK_HOME: "/opt/soft/flink"
- DATAX_HOME: "/opt/soft/datax"
+ DATAX_LAUNCHER: "/opt/soft/datax/bin/datax.py"
## Shared storage persistence mounted into api, master and worker, such as
Hadoop, Spark, Flink and DataX binary package
sharedStoragePersistence:
enabled: false
diff --git a/docs/docs/en/architecture/configuration.md
b/docs/docs/en/architecture/configuration.md
index acbd4c87b0..a9316aa9f8 100644
--- a/docs/docs/en/architecture/configuration.md
+++ b/docs/docs/en/architecture/configuration.md
@@ -373,12 +373,12 @@ export JAVA_HOME=${JAVA_HOME:-/opt/soft/java}
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
-export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
+export PYTHON_LAUNCHER=${PYTHON_LAUNCHER:-/opt/soft/python/bin/python3}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
-export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
+export DATAX_LAUNCHER=${DATAX_LAUNCHER:-/opt/soft/datax/bin/datax.py}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH
# applicationId auto collection related configuration, the following
configurations are unnecessary if setting appId.collect=log
export HADOOP_CLASSPATH=`hadoop
classpath`:${DOLPHINSCHEDULER_HOME}/tools/libs/*
diff --git a/docs/docs/en/faq.md b/docs/docs/en/faq.md
index 01084c393d..b0954b3468 100644
--- a/docs/docs/en/faq.md
+++ b/docs/docs/en/faq.md
@@ -220,16 +220,16 @@ A: 1, in **the process definition list**, click the
**Start** button.
## Q : Python task setting Python version
-A: 1,**for the version after 1.0.3** only need to modify PYTHON_HOME in
`bin/env/dolphinscheduler_env.sh`
+A: 1,**for the version after 1.0.3** only need to modify `$PYTHON_LAUNCHER` in
`bin/env/dolphinscheduler_env.sh`
```
-export PYTHON_HOME=/bin/python
+export PYTHON_LAUNCHER=/bin/python/bin/python3
```
-Note: This is **PYTHON_HOME** , which is the absolute path of the python
command, not the simple PYTHON_HOME. Also note that when exporting the PATH,
you need to directly
+Note: This is **PYTHON_LAUNCHER** , which is the absolute path of the python
command, not the simple PYTHON_LAUNCHER. Also note that when exporting the
PATH, you need to directly
```
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH
```
2,For versions prior to 1.0.3, the Python task only supports the Python
version of the system. It does not support specifying the Python version.
diff --git a/docs/docs/en/guide/expansion-reduction.md
b/docs/docs/en/guide/expansion-reduction.md
index 15540e85c5..5c9dd7d1d2 100644
--- a/docs/docs/en/guide/expansion-reduction.md
+++ b/docs/docs/en/guide/expansion-reduction.md
@@ -80,12 +80,12 @@ Attention:
export HADOOP_HOME=/opt/soft/hadoop
export HADOOP_CONF_DIR=/opt/soft/hadoop/etc/hadoop
export SPARK_HOME=/opt/soft/spark
- export PYTHON_HOME=/opt/soft/python
+ export PYTHON_LAUNCHER=/opt/soft/python/bin/python3
export JAVA_HOME=/opt/soft/jav
export HIVE_HOME=/opt/soft/hive
export FLINK_HOME=/opt/soft/flink
- export DATAX_HOME=/opt/soft/datax/bin/datax.py
- export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_HOME:$PATH
+ export DATAX_LAUNCHER=/opt/soft/datax/bin/datax.py
+ export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH
```
diff --git a/docs/docs/en/guide/installation/kubernetes.md
b/docs/docs/en/guide/installation/kubernetes.md
index fcf2833ca8..279024c39d 100644
--- a/docs/docs/en/guide/installation/kubernetes.md
+++ b/docs/docs/en/guide/installation/kubernetes.md
@@ -372,7 +372,7 @@ docker build -t apache/dolphinscheduler-worker:python3 .
4. Modify image `repository` and update `tag` to `python3` in `values.yaml`.
-5. Modify `PYTHON_HOME` to `/usr/bin/python3` in `values.yaml`.
+5. Modify `PYTHON_LAUNCHER` to `/usr/bin/python3` in `values.yaml`.
6. Run a DolphinScheduler release in Kubernetes (See **Install
DolphinScheduler**).
@@ -575,11 +575,11 @@ common:
| `common.configmap.HADOOP_HOME` | Set
`HADOOP_HOME` for DolphinScheduler's task environment
| `/opt/soft/hadoop`
|
| `common.configmap.HADOOP_CONF_DIR` | Set
`HADOOP_CONF_DIR` for DolphinScheduler's task environment
| `/opt/soft/hadoop/etc/hadoop`
|
| `common.configmap.SPARK_HOME` | Set
`SPARK_HOME` for DolphinScheduler's task environment
| `/opt/soft/spark`
|
-| `common.configmap.PYTHON_HOME` | Set
`PYTHON_HOME` for DolphinScheduler's task environment
| `/usr/bin/python`
|
+| `common.configmap.PYTHON_LAUNCHER` | Set
`PYTHON_LAUNCHER` for DolphinScheduler's task environment
| `/usr/bin/python`
|
| `common.configmap.JAVA_HOME` | Set
`JAVA_HOME` for DolphinScheduler's task environment
| `/opt/java/openjdk`
|
| `common.configmap.HIVE_HOME` | Set
`HIVE_HOME` for DolphinScheduler's task environment
| `/opt/soft/hive`
|
| `common.configmap.FLINK_HOME` | Set
`FLINK_HOME` for DolphinScheduler's task environment
| `/opt/soft/flink`
|
-| `common.configmap.DATAX_HOME` | Set
`DATAX_HOME` for DolphinScheduler's task environment
| `/opt/soft/datax`
|
+| `common.configmap.DATAX_LAUNCHER` | Set
`DATAX_LAUNCHER` for DolphinScheduler's task environment
| `/opt/soft/datax`
|
| `common.sharedStoragePersistence.enabled` | Set
`common.sharedStoragePersistence.enabled` to `true` to mount a shared storage
volume for Hadoop, Spark binary and etc | `false`
|
| `common.sharedStoragePersistence.mountPath` | The
mount path for the shared storage volume
| `/opt/soft`
|
| `common.sharedStoragePersistence.accessModes` |
`PersistentVolumeClaim` access modes, must be `ReadWriteMany`
| `[ReadWriteMany]`
|
diff --git a/docs/docs/en/guide/installation/pseudo-cluster.md
b/docs/docs/en/guide/installation/pseudo-cluster.md
index a2fdc73293..e63436f203 100644
--- a/docs/docs/en/guide/installation/pseudo-cluster.md
+++ b/docs/docs/en/guide/installation/pseudo-cluster.md
@@ -133,12 +133,12 @@ export
REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-lo
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
-export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
+export PYTHON_LAUNCHER=${PYTHON_LAUNCHER:-/opt/soft/python/bin/python3}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
-export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
+export DATAX_LAUNCHER=${DATAX_LAUNCHER:-/opt/soft/datax/bin/datax.py}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH
```
## Initialize the Database
diff --git a/docs/docs/en/guide/integration/rainbond.md
b/docs/docs/en/guide/integration/rainbond.md
index 1628485ed5..3b2c032f87 100644
--- a/docs/docs/en/guide/integration/rainbond.md
+++ b/docs/docs/en/guide/integration/rainbond.md
@@ -47,7 +47,7 @@ API and Worker Services share the configuration file
`/opt/dolphinscheduler/conf
## How to support Python 3?
-Worker service is installed with default `Python3`,you can add environment
variables `PYTHON_HOME=/usr/bin/python3`
+Worker service is installed with default `Python3`,you can add environment
variables `PYTHON_LAUNCHER=/usr/bin/python3`
## How to support Hadoop, Spark, DataX ?
diff --git a/docs/docs/en/guide/task/datax.md b/docs/docs/en/guide/task/datax.md
index feeeef5e05..b6c6ba83ca 100644
--- a/docs/docs/en/guide/task/datax.md
+++ b/docs/docs/en/guide/task/datax.md
@@ -2,9 +2,9 @@
## Overview
-DataX task type for executing DataX programs. For DataX nodes, the worker will
execute `${DATAX_HOME}/bin/datax.py` to analyze the input json file.
+DataX task type for executing DataX programs. For DataX nodes, the worker will
execute `${DATAX_LAUNCHER}` to analyze the input json file.
-By default, the datax.py will be executed by python2.7, if you want to use
other python version, you can set the `DATAX_PYTHON` environment variable to
specify a version.
+Please set environment name `PYTHON_LAUNCHER` before you run datax task, some
of datax release version only support `python2.7`
## Create Task
diff --git a/docs/docs/en/guide/task/openmldb.md
b/docs/docs/en/guide/task/openmldb.md
index 3475847aba..27a45b44b0 100644
--- a/docs/docs/en/guide/task/openmldb.md
+++ b/docs/docs/en/guide/task/openmldb.md
@@ -54,6 +54,6 @@ to a quick start.
The OpenMLDB task will use OpenMLDB Python SDK to connect OpenMLDB cluster. So
you should have the Python env.
-We will use `python3` by default. You can set `PYTHON_HOME` to use your custom
python env.
+We will use `python3` by default. You can set `PYTHON_LAUNCHER` to use your
custom python env.
Make sure you have installed OpenMLDB Python SDK in the host where the worker
server running, using `pip install openmldb`.
diff --git a/docs/docs/en/guide/task/pytorch.md
b/docs/docs/en/guide/task/pytorch.md
index 2dcb7bbee6..965b0d3bf7 100644
--- a/docs/docs/en/guide/task/pytorch.md
+++ b/docs/docs/en/guide/task/pytorch.md
@@ -41,12 +41,12 @@ The preceding two parameters are used to minimize the
running of the configurati
*no*
-- **Python Command Path** :Such as `/usr/bin/python`,The default value is
${PYTHON_HOME} in environment.
+- **Python Command Path** :Such as `/usr/bin/python`,The default value is
${PYTHON_LAUNCHER} in environment.
*yes*
- **Python Environment Manager Tool** :You can choose `virtualenv` or `conda`.
- - if choose `virtualenv`,that may use `virtualenv` to create a new
environment. Use command `virtualenv -p ${PYTHON_HOME} venv`.
+ - if choose `virtualenv`,that may use `virtualenv` to create a new
environment. Use command `virtualenv -p ${PYTHON_LAUNCHER} venv`.
- if choose `conda`, ,that may use `conda` to create a new environment,And
you need to specify the Python version.
- **Requirement File** :The default is requirements.txt。
@@ -86,7 +86,7 @@ It applies to a new environment to run the project. You need
to create an enviro
```shell
# Add the directory for the virtualenv command
export PATH=/home/xxx/anaconda3/bin:$PATH
-export PYTHON_HOME=/usr/local/bin/python3.7
+export PYTHON_LAUNCHER=/usr/local/bin/python3.7
```
## Other
diff --git a/docs/docs/en/guide/upgrade/incompatible.md
b/docs/docs/en/guide/upgrade/incompatible.md
index 3d27b4e7e0..3ca43116fa 100644
--- a/docs/docs/en/guide/upgrade/incompatible.md
+++ b/docs/docs/en/guide/upgrade/incompatible.md
@@ -4,6 +4,7 @@ This document records the incompatible updates between each
version. You need to
## dev
+* Change env `PYTHON_HOME` to `PYTHON_LAUNCHER` and `DATAX_HOME` to
`DATAX_LAUNCHER`
([#14523](https://github.com/apache/dolphinscheduler/pull/14523))
* Change regex matching sql params in SQL task plugin
([#13378](https://github.com/apache/dolphinscheduler/pull/13378))
* Remove the spark version of spark task
([#11860](https://github.com/apache/dolphinscheduler/pull/11860)).
* Change the default unix shell executor from sh to bash
([#12180](https://github.com/apache/dolphinscheduler/pull/12180)).
diff --git a/docs/docs/zh/architecture/configuration.md
b/docs/docs/zh/architecture/configuration.md
index 024a037ce0..f50dae2f8b 100644
--- a/docs/docs/zh/architecture/configuration.md
+++ b/docs/docs/zh/architecture/configuration.md
@@ -365,12 +365,12 @@ export JAVA_HOME=${JAVA_HOME:-/opt/soft/java}
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
-export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
+export PYTHON_LAUNCHER=${PYTHON_LAUNCHER:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
-export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
+export DATAX_LAUNCHER=${DATAX_LAUNCHER:-/opt/soft/datax/bin/datax.py}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH
# applicationId auto collection related configuration, the following
configurations are unnecessary if setting appId.collect=log
export HADOOP_CLASSPATH=`hadoop
classpath`:${DOLPHINSCHEDULER_HOME}/tools/libs/*
diff --git a/docs/docs/zh/faq.md b/docs/docs/zh/faq.md
index d7759f44c7..13e0dc8b84 100644
--- a/docs/docs/zh/faq.md
+++ b/docs/docs/zh/faq.md
@@ -199,16 +199,16 @@ A: 1,在 **流程定义列表**,点击 **启动** 按钮
## Q:Python 任务设置 Python 版本
-A: 只需要修改 `bin/env/dolphinscheduler_env.sh` 中的 PYTHON_HOME
+A: 只需要修改 `bin/env/dolphinscheduler_env.sh` 中的 PYTHON_LAUNCHER
```
-export PYTHON_HOME=/bin/python
+export PYTHON_LAUNCHER=/bin/python
```
-注意:这了 **PYTHON_HOME** ,是 python 命令的绝对路径,而不是单纯的 PYTHON_HOME,还需要注意的是 export PATH
的时候,需要直接
+注意:这了 **PYTHON_LAUNCHER** ,是 python 命令的绝对路径,而不是单纯的 PYTHON_LAUNCHER,还需要注意的是
export PATH 的时候,需要直接
```
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH
```
## Q:Worker Task 通过 sudo -u 租户 sh xxx.command 会产生子进程,在 kill 的时候,是否会杀掉
diff --git a/docs/docs/zh/guide/expansion-reduction.md
b/docs/docs/zh/guide/expansion-reduction.md
index 2ee8b4373d..ad27e32a35 100644
--- a/docs/docs/zh/guide/expansion-reduction.md
+++ b/docs/docs/zh/guide/expansion-reduction.md
@@ -80,12 +80,12 @@ sed -i 's/Defaults requirett/#Defaults requirett/g'
/etc/sudoers
export HADOOP_HOME=/opt/soft/hadoop
export HADOOP_CONF_DIR=/opt/soft/hadoop/etc/hadoop
export SPARK_HOME=/opt/soft/spark
- export PYTHON_HOME=/opt/soft/python
+ export PYTHON_LAUNCHER=/opt/soft/python/bin/python3
export JAVA_HOME=/opt/soft/java
export HIVE_HOME=/opt/soft/hive
export FLINK_HOME=/opt/soft/flink
- export DATAX_HOME=/opt/soft/datax/bin/datax.py
- export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_HOME:$PATH
+ export DATAX_LAUNCHER=/opt/soft/datax/bin/datax.py
+ export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$PATH:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH
```
diff --git a/docs/docs/zh/guide/installation/kubernetes.md
b/docs/docs/zh/guide/installation/kubernetes.md
index e8cd6c70b5..bec37d1f94 100644
--- a/docs/docs/zh/guide/installation/kubernetes.md
+++ b/docs/docs/zh/guide/installation/kubernetes.md
@@ -371,7 +371,7 @@ docker build -t apache/dolphinscheduler-worker:python3 .
4. 修改 `values.yaml` 文件中 image 的 `repository` 字段,并更新 `tag` 为 `python3`
-5. 修改 `values.yaml` 文件中的 `PYTHON_HOME` 为 `/usr/bin/python3`
+5. 修改 `values.yaml` 文件中的 `PYTHON_LAUNCHER` 为 `/usr/bin/python3`
6. 部署 dolphinscheduler (详见**安装 dolphinscheduler**)
@@ -574,11 +574,11 @@ common:
| `common.configmap.HADOOP_HOME` | Set
`HADOOP_HOME` for DolphinScheduler's task environment
| `/opt/soft/hadoop`
|
| `common.configmap.HADOOP_CONF_DIR` | Set
`HADOOP_CONF_DIR` for DolphinScheduler's task environment
| `/opt/soft/hadoop/etc/hadoop`
|
| `common.configmap.SPARK_HOME` | Set
`SPARK_HOME` for DolphinScheduler's task environment
| `/opt/soft/spark`
|
-| `common.configmap.PYTHON_HOME` | Set
`PYTHON_HOME` for DolphinScheduler's task environment
| `/usr/bin/python`
|
+| `common.configmap.PYTHON_LAUNCHER` | Set
`PYTHON_LAUNCHER` for DolphinScheduler's task environment
| `/usr/bin/python`
|
| `common.configmap.JAVA_HOME` | Set
`JAVA_HOME` for DolphinScheduler's task environment
| `/opt/java/openjdk`
|
| `common.configmap.HIVE_HOME` | Set
`HIVE_HOME` for DolphinScheduler's task environment
| `/opt/soft/hive`
|
| `common.configmap.FLINK_HOME` | Set
`FLINK_HOME` for DolphinScheduler's task environment
| `/opt/soft/flink`
|
-| `common.configmap.DATAX_HOME` | Set
`DATAX_HOME` for DolphinScheduler's task environment
| `/opt/soft/datax`
|
+| `common.configmap.DATAX_LAUNCHER` | Set
`DATAX_LAUNCHER` for DolphinScheduler's task environment
| `/opt/soft/datax`
|
| `common.sharedStoragePersistence.enabled` | Set
`common.sharedStoragePersistence.enabled` to `true` to mount a shared storage
volume for Hadoop, Spark binary and etc | `false`
|
| `common.sharedStoragePersistence.mountPath` | The
mount path for the shared storage volume
| `/opt/soft`
|
| `common.sharedStoragePersistence.accessModes` |
`PersistentVolumeClaim` access modes, must be `ReadWriteMany`
| `[ReadWriteMany]`
|
diff --git a/docs/docs/zh/guide/installation/pseudo-cluster.md
b/docs/docs/zh/guide/installation/pseudo-cluster.md
index 8d1ca341f2..13479e0d9e 100644
--- a/docs/docs/zh/guide/installation/pseudo-cluster.md
+++ b/docs/docs/zh/guide/installation/pseudo-cluster.md
@@ -128,12 +128,12 @@ export
REGISTRY_ZOOKEEPER_CONNECT_STRING=${REGISTRY_ZOOKEEPER_CONNECT_STRING:-lo
export HADOOP_HOME=${HADOOP_HOME:-/opt/soft/hadoop}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/opt/soft/hadoop/etc/hadoop}
export SPARK_HOME=${SPARK_HOME:-/opt/soft/spark}
-export PYTHON_HOME=${PYTHON_HOME:-/opt/soft/python}
+export PYTHON_LAUNCHER=${PYTHON_LAUNCHER:-/opt/soft/python}
export HIVE_HOME=${HIVE_HOME:-/opt/soft/hive}
export FLINK_HOME=${FLINK_HOME:-/opt/soft/flink}
-export DATAX_HOME=${DATAX_HOME:-/opt/soft/datax}
+export DATAX_LAUNCHER=${DATAX_LAUNCHER:-/opt/soft/datax/bin/python3}
-export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH
+export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH
```
## 初始化数据库
diff --git a/docs/docs/zh/guide/integration/rainbond.md
b/docs/docs/zh/guide/integration/rainbond.md
index b77cbc4546..f38ceaff63 100644
--- a/docs/docs/zh/guide/integration/rainbond.md
+++ b/docs/docs/zh/guide/integration/rainbond.md
@@ -47,7 +47,7 @@ API 和 Worker 服务共用
`/opt/dolphinscheduler/conf/common.properties` ,
## 如何支持 Python 3?
-Worker 服务默认安装了 Python3,使用时可以添加环境变量 `PYTHON_HOME=/usr/bin/python3`
+Worker 服务默认安装了 Python3,使用时可以添加环境变量 `PYTHON_LAUNCHER=/usr/bin/python3`
## 如何支持 Hadoop, Spark, DataX 等?
diff --git a/docs/docs/zh/guide/task/datax.md b/docs/docs/zh/guide/task/datax.md
index e738743707..ed06b46bcb 100644
--- a/docs/docs/zh/guide/task/datax.md
+++ b/docs/docs/zh/guide/task/datax.md
@@ -2,9 +2,9 @@
## 综述
-DataX 任务类型,用于执行 DataX 程序。对于 DataX 节点,worker 会通过执行 `${DATAX_HOME}/bin/datax.py`
来解析传入的 json 文件。
+DataX 任务类型,用于执行 DataX 程序。对于 DataX 节点,worker 会通过执行 `${DATAX_LAUNCHER}` 来解析传入的
json 文件。
-默认会使用python2.7去执行datax.py,如果需要使用其他版本的python去执行datax.py,需要在环境变量中配置`DATAX_PYTHON`。
+执行 datax 任务前需要在环境变量中配置`PYTHON_LAUNCHER`,部分 datax 发行版只支持 python2.7。
## 创建任务
diff --git a/docs/docs/zh/guide/task/openmldb.md
b/docs/docs/zh/guide/task/openmldb.md
index 6da0e2f28b..9438f0e0ed 100644
--- a/docs/docs/zh/guide/task/openmldb.md
+++ b/docs/docs/zh/guide/task/openmldb.md
@@ -51,6 +51,6 @@ OpenMLDB任务组件可以连接OpenMLDB集群执行任务。
OpenMLDB任务组件将使用OpenMLDB Python SDK来连接OpenMLDB。所以你需要Python环境。
-我们默认使用`python3`,你可以通过配置`PYTHON_HOME`来设置自己的Python环境。
+我们默认使用`python3`,你可以通过配置`PYTHON_LAUNCHER`来设置自己的Python环境。
请确保已通过`pip install openmldb`,在worker server的主机中安装了OpenMLDB Python SDK。
diff --git a/docs/docs/zh/guide/task/pytorch.md
b/docs/docs/zh/guide/task/pytorch.md
index ed3d41085d..5405b19efb 100644
--- a/docs/docs/zh/guide/task/pytorch.md
+++ b/docs/docs/zh/guide/task/pytorch.md
@@ -41,12 +41,12 @@
#### python环境参数
-| **任务参数** |
**描述**
|
-|--------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|
-| 是否创建新环境 | 是否创建新的python环境来运行该任务
|
-| python命令路径 | 如`/usr/bin/python`,默认为DS环境配置中的`${PYTHON_HOME}`
|
-| python环境管理工具 |
可以选择virtualenv或者conda,若选择`virtualenv`,则会用`virtualenv`创建一个新环境,使用命令 `virtualenv
-p ${PYTHON_HOME} venv` 创建;若选择`conda`, 则会使用`conda` 创建一个新环境,并需要指定创建的python版本 |
-| 依赖文件 | 默认为 requirements.txt
|
+| **任务参数** |
**描述**
|
+|--------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| 是否创建新环境 | 是否创建新的python环境来运行该任务
|
+| python命令路径 | 如`/usr/bin/python`,默认为DS环境配置中的`${PYTHON_LAUNCHER}`
|
+| python环境管理工具 |
可以选择virtualenv或者conda,若选择`virtualenv`,则会用`virtualenv`创建一个新环境,使用命令 `virtualenv
-p ${PYTHON_LAUNCHER} venv` 创建;若选择`conda`, 则会使用`conda` 创建一个新环境,并需要指定创建的python版本
|
+| 依赖文件 | 默认为 requirements.txt
|
配置了`python项目地址`参数,那么`python脚本`和`依赖文件`参数允许输入相对路径
@@ -84,7 +84,7 @@ export PATH=$HOME/anaconda3/bin:$PATH
```shell
# virtualenv命令对应的目录加入PATH中
export PATH=/home/lucky/anaconda3/bin:$PATH
-export PYTHON_HOME=/usr/local/bin/python3.7
+export PYTHON_LAUNCHER=/usr/local/bin/python3.7
```
## 其他
diff --git a/docs/docs/zh/guide/upgrade/incompatible.md
b/docs/docs/zh/guide/upgrade/incompatible.md
index daa55d3093..153331cc78 100644
--- a/docs/docs/zh/guide/upgrade/incompatible.md
+++ b/docs/docs/zh/guide/upgrade/incompatible.md
@@ -4,6 +4,7 @@
## dev
+* 更改了环境变量名称,将 `PYTHON_HOME` 改为 `PYTHON_LAUNCHER`, 将 `DATAX_HOME` 改为
`DATAX_LAUNCHER`
([#14523](https://github.com/apache/dolphinscheduler/pull/14523))
* 更新了SQL任务中用于匹配变量的正则表达式
([#13378](https://github.com/apache/dolphinscheduler/pull/13378))
* Remove the spark version of spark task
([#11860](https://github.com/apache/dolphinscheduler/pull/11860)).
* Change the default unix shell executor from sh to bash
([#12180](https://github.com/apache/dolphinscheduler/pull/12180)).
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/EnvironmentServiceTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/EnvironmentServiceTest.java
index da40fc07e9..b6b1eb5b07 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/EnvironmentServiceTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/EnvironmentServiceTest.java
@@ -296,14 +296,14 @@ public class EnvironmentServiceTest {
return "export HADOOP_HOME=/opt/hadoop-2.6.5\n"
+ "export HADOOP_CONF_DIR=/etc/hadoop/conf\n"
+ "export SPARK_HOME=/opt/soft/spark\n"
- + "export PYTHON_HOME=/opt/soft/python\n"
+ + "export PYTHON_LAUNCHER=/opt/soft/python/bin/python3\n"
+ "export JAVA_HOME=/opt/java/jdk1.8.0_181-amd64\n"
+ "export HIVE_HOME=/opt/soft/hive\n"
+ "export FLINK_HOME=/opt/soft/flink\n"
- + "export DATAX_HOME=/opt/soft/datax\n"
+ + "export DATAX_LAUNCHER=/opt/soft/datax/bin/python3\n"
+ "export YARN_CONF_DIR=\"/etc/hadoop/conf\"\n"
+ "\n"
- + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH\n"
+ "\n"
+ "export HADOOP_CLASSPATH=`hadoop classpath`\n"
+ "\n"
diff --git
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ClusterMapperTest.java
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ClusterMapperTest.java
index c970e47f2c..ee94f6b001 100644
---
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ClusterMapperTest.java
+++
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/ClusterMapperTest.java
@@ -174,14 +174,14 @@ public class ClusterMapperTest extends BaseDaoTest {
return "export HADOOP_HOME=/opt/hadoop-2.6.5\n"
+ "export HADOOP_CONF_DIR=/etc/hadoop/conf\n"
+ "export SPARK_HOME=/opt/soft/spark\n"
- + "export PYTHON_HOME=/opt/soft/python\n"
+ + "export PYTHON_LAUNCHER=/opt/soft/python/bin/python3\n"
+ "export JAVA_HOME=/opt/java/jdk1.8.0_181-amd64\n"
+ "export HIVE_HOME=/opt/soft/hive\n"
+ "export FLINK_HOME=/opt/soft/flink\n"
- + "export DATAX_HOME=/opt/soft/datax\n"
+ + "export DATAX_LAUNCHER=/opt/soft/datax/bin/python3\n"
+ "export YARN_CONF_DIR=\"/etc/hadoop/conf\"\n"
+ "\n"
- + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH\n"
+ "\n"
+ "export HADOOP_CLASSPATH=`hadoop classpath`\n"
+ "\n"
diff --git
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/EnvironmentMapperTest.java
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/EnvironmentMapperTest.java
index b81d783b16..7a796d28b9 100644
---
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/EnvironmentMapperTest.java
+++
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/EnvironmentMapperTest.java
@@ -174,14 +174,14 @@ public class EnvironmentMapperTest extends BaseDaoTest {
return "export HADOOP_HOME=/opt/hadoop-2.6.5\n"
+ "export HADOOP_CONF_DIR=/etc/hadoop/conf\n"
+ "export SPARK_HOME=/opt/soft/spark\n"
- + "export PYTHON_HOME=/opt/soft/python\n"
+ + "export PYTHON_LAUNCHER=/opt/soft/python/bin/python3\n"
+ "export JAVA_HOME=/opt/java/jdk1.8.0_181-amd64\n"
+ "export HIVE_HOME=/opt/soft/hive\n"
+ "export FLINK_HOME=/opt/soft/flink\n"
- + "export DATAX_HOME=/opt/soft/datax\n"
+ + "export DATAX_LAUNCHER=/opt/soft/datax/bin/python3\n"
+ "export YARN_CONF_DIR=\"/etc/hadoop/conf\"\n"
+ "\n"
- + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n"
+ + "export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH\n"
+ "\n"
+ "export HADOOP_CLASSPATH=`hadoop classpath`\n"
+ "\n"
diff --git
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtilsTest.java
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtilsTest.java
index abdc023101..1b6329b3a6 100644
---
a/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtilsTest.java
+++
b/dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/utils/TaskCacheUtilsTest.java
@@ -167,7 +167,7 @@ class TaskCacheUtilsTest {
// task definition version is changed, so cache key changed
Assertions.assertNotEquals(cacheKeyD, cacheKeyE);
- taskInstance.setEnvironmentConfig("export PYTHON_HOME=/bin/python3");
+ taskInstance.setEnvironmentConfig("export
PYTHON_LAUNCHER=/bin/python3");
String cacheKeyF = TaskCacheUtils.generateCacheKey(taskInstance,
taskExecutionContext, storageOperate);
// EnvironmentConfig is changed, so cache key changed
Assertions.assertNotEquals(cacheKeyE, cacheKeyF);
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-datax/src/main/java/org/apache/dolphinscheduler/plugin/task/datax/DataxTask.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-datax/src/main/java/org/apache/dolphinscheduler/plugin/task/datax/DataxTask.java
index 80de6cc7cd..fc553ebfe6 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-datax/src/main/java/org/apache/dolphinscheduler/plugin/task/datax/DataxTask.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-datax/src/main/java/org/apache/dolphinscheduler/plugin/task/datax/DataxTask.java
@@ -54,7 +54,6 @@ import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
-import java.util.Optional;
import java.util.concurrent.ExecutionException;
import com.alibaba.druid.sql.ast.SQLStatement;
@@ -74,14 +73,13 @@ public class DataxTask extends AbstractTask {
/**
* jvm parameters
*/
- public static final String JVM_PARAM = " --jvm=\"-Xms%sG -Xmx%sG\" ";
+ public static final String JVM_PARAM = "--jvm=\"-Xms%sG -Xmx%sG\" ";
public static final String CUSTOM_PARAM = " -D%s='%s'";
/**
- * python process(datax only supports version 2.7 by default)
* todo: Create a shell script to execute the datax task, and read the
python version from the env, so we can support multiple versions of datax python
*/
- private static final String DATAX_PYTHON =
Optional.ofNullable(System.getenv("DATAX_PYTHON")).orElse("python2.7");
+ private static final String PYTHON_LAUNCHER = "${PYTHON_LAUNCHER}";
/**
* select all
@@ -95,7 +93,7 @@ public class DataxTask extends AbstractTask {
/**
* datax path
*/
- private static final String DATAX_PATH = "${DATAX_HOME}/bin/datax.py";
+ private static final String DATAX_LAUNCHER = "${DATAX_LAUNCHER}";
/**
* datax channel count
*/
@@ -380,9 +378,9 @@ public class DataxTask extends AbstractTask {
*/
protected String buildCommand(String jobConfigFilePath, Map<String,
Property> paramsMap) {
// datax python command
- return DATAX_PYTHON +
+ return PYTHON_LAUNCHER +
" " +
- DATAX_PATH +
+ DATAX_LAUNCHER +
" " +
loadJvmEnv(dataXParameters) +
addCustomParameters(paramsMap) +
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-datax/src/test/java/org/apache/dolphinscheduler/plugin/task/datax/DataxTaskTest.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-datax/src/test/java/org/apache/dolphinscheduler/plugin/task/datax/DataxTaskTest.java
index e423fcb89d..933e47f451 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-datax/src/test/java/org/apache/dolphinscheduler/plugin/task/datax/DataxTaskTest.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-datax/src/test/java/org/apache/dolphinscheduler/plugin/task/datax/DataxTaskTest.java
@@ -122,7 +122,7 @@ public class DataxTaskTest {
Assertions.assertTrue(delete);
Assertions.assertEquals(dataxTask.buildCommand("/tmp/execution/app-id_job.json",
null),
- "python2.7 ${DATAX_HOME}/bin/datax.py --jvm=\"-Xms1G -Xmx1G\"
/tmp/execution/app-id_job.json");
+ "${PYTHON_LAUNCHER} ${DATAX_LAUNCHER} --jvm=\"-Xms1G -Xmx1G\"
/tmp/execution/app-id_job.json");
}
@Test
@@ -157,7 +157,7 @@ public class DataxTaskTest {
Assertions.assertTrue(delete);
Assertions.assertEquals(dataxTask.buildCommand("/tmp/execution/app-id_job.json",
createPrepareParamsMap()),
- "python2.7 ${DATAX_HOME}/bin/datax.py --jvm=\"-Xms1G -Xmx1G\"
-p \"-DDT='DT' -DDS='DS'\" /tmp/execution/app-id_job.json");
+ "${PYTHON_LAUNCHER} ${DATAX_LAUNCHER} --jvm=\"-Xms1G -Xmx1G\"
-p \"-DDT='DT' -DDS='DS'\" /tmp/execution/app-id_job.json");
}
@Test
@@ -237,7 +237,7 @@ public class DataxTaskTest {
DataxParameters dataXParameters = createDataxParameters();
dataXParameters.setXms(3);
dataXParameters.setXmx(4);
- Assertions.assertEquals(dataxTask.loadJvmEnv(dataXParameters), "
--jvm=\"-Xms3G -Xmx4G\" ");
+ Assertions.assertEquals(dataxTask.loadJvmEnv(dataXParameters),
"--jvm=\"-Xms3G -Xmx4G\" ");
}
private DataxParameters createDataxParameters() {
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-openmldb/src/main/java/org/apache/dolphinscheduler/plugin/task/openmldb/OpenmldbTask.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-openmldb/src/main/java/org/apache/dolphinscheduler/plugin/task/openmldb/OpenmldbTask.java
index 19b5104f07..9142a364a1 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-openmldb/src/main/java/org/apache/dolphinscheduler/plugin/task/openmldb/OpenmldbTask.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-openmldb/src/main/java/org/apache/dolphinscheduler/plugin/task/openmldb/OpenmldbTask.java
@@ -132,7 +132,7 @@ public class OpenmldbTask extends PythonTask {
/**
* Build the python task command.
- * If user have set the 'PYTHON_HOME' environment, we will use the
'PYTHON_HOME',
+ * If user have set the 'PYTHON_LAUNCHER' environment, we will use the
'PYTHON_LAUNCHER',
* if not, we will default use python.
*
* @param pythonFile Python file, cannot be empty.
@@ -145,7 +145,7 @@ public class OpenmldbTask extends PythonTask {
}
private String getPythonCommand() {
- String pythonHome = System.getenv(PYTHON_HOME);
+ String pythonHome = System.getenv(PYTHON_LAUNCHER);
return getPythonCommand(pythonHome);
}
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/main/java/org/apache/dolphinscheduler/plugin/task/python/PythonConstants.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/main/java/org/apache/dolphinscheduler/plugin/task/python/PythonConstants.java
deleted file mode 100644
index e6655db3b4..0000000000
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/main/java/org/apache/dolphinscheduler/plugin/task/python/PythonConstants.java
+++ /dev/null
@@ -1,35 +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.plugin.task.python;
-
-public class PythonConstants {
-
- private PythonConstants() {
- throw new IllegalStateException("Utility class");
- }
-
- /**
- * python home
- */
- public static final String PYTHON_HOME = "PYTHON_HOME";
-
- /**
- * EQUAL SIGN
- */
- public static final String EQUAL_SIGN = "=";
-}
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/main/java/org/apache/dolphinscheduler/plugin/task/python/PythonTask.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/main/java/org/apache/dolphinscheduler/plugin/task/python/PythonTask.java
index 4b4d8cbd66..3fd938d3a5 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/main/java/org/apache/dolphinscheduler/plugin/task/python/PythonTask.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/main/java/org/apache/dolphinscheduler/plugin/task/python/PythonTask.java
@@ -59,9 +59,7 @@ public class PythonTask extends AbstractTask {
protected TaskExecutionContext taskRequest;
- protected static final String PYTHON_HOME = "PYTHON_HOME";
-
- private static final String DEFAULT_PYTHON_VERSION = "python";
+ protected static final String PYTHON_LAUNCHER = "PYTHON_LAUNCHER";
/**
* constructor
@@ -185,7 +183,7 @@ public class PythonTask extends AbstractTask {
/**
* Build the python task command.
- * If user have set the 'PYTHON_HOME' environment, we will use the
'PYTHON_HOME',
+ * If user have set the 'PYTHON_LAUNCHER' environment, we will use the
'PYTHON_LAUNCHER',
* if not, we will default use python.
*
* @param pythonFile Python file, cannot be empty.
@@ -194,7 +192,7 @@ public class PythonTask extends AbstractTask {
protected String buildPythonExecuteCommand(String pythonFile) {
Preconditions.checkNotNull(pythonFile, "Python file cannot be null");
- String pythonHome = String.format("${%s}", PYTHON_HOME);
+ String pythonHome = String.format("${%s}", PYTHON_LAUNCHER);
return pythonHome + " " + pythonFile;
}
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/test/java/org/apache/dolphinscheduler/plugin/task/python/PythonTaskTest.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/test/java/org/apache/dolphinscheduler/plugin/task/python/PythonTaskTest.java
index 6abcabe4fc..78ee01f30d 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/test/java/org/apache/dolphinscheduler/plugin/task/python/PythonTaskTest.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-python/src/test/java/org/apache/dolphinscheduler/plugin/task/python/PythonTaskTest.java
@@ -25,7 +25,7 @@ public class PythonTaskTest {
@Test
public void buildPythonExecuteCommand() throws Exception {
PythonTask pythonTask = createPythonTask();
- Assertions.assertEquals("${PYTHON_HOME} test.py",
pythonTask.buildPythonExecuteCommand("test.py"));
+ Assertions.assertEquals("${PYTHON_LAUNCHER} test.py",
pythonTask.buildPythonExecuteCommand("test.py"));
}
private PythonTask createPythonTask() {
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PythonEnvManager.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PythonEnvManager.java
index 99c24947d3..4c9b1215c4 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PythonEnvManager.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PythonEnvManager.java
@@ -38,7 +38,7 @@ public class PythonEnvManager {
private static final String VIRTUALENV_SOURCE = "source %s/bin/activate";
- private static final String VIRTUALENV_BUILD = "virtualenv -p
${PYTHON_HOME} %s";
+ private static final String VIRTUALENV_BUILD = "virtualenv -p
${PYTHON_LAUNCHER} %s";
private static final String INSTALL_COMMAND = "%s -m pip install -r %s";
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchParameters.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchParameters.java
index 7fbc669ae6..fa7c4dc70c 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchParameters.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchParameters.java
@@ -35,7 +35,7 @@ public class PytorchParameters extends AbstractParameters {
private String pythonPath = ".";
private String script;
private String scriptParams;
- private String pythonCommand = "${PYTHON_HOME}";
+ private String pythonLauncher = "${PYTHON_LAUNCHER}";
private String pythonEnvTool = PythonEnvManager.ENV_TOOL_VENV;
private String requirements = "requirements.txt";
private String condaPythonVersion = "3.9";
@@ -58,12 +58,12 @@ public class PytorchParameters extends AbstractParameters {
return getPossiblePath(requirements);
}
- public String getPythonCommand() {
+ public String getPythonLauncher() {
String command;
- if (pythonCommand.isEmpty()) {
- command = "${PYTHON_HOME}";
+ if (pythonLauncher.isEmpty()) {
+ command = "${PYTHON_LAUNCHER}";
} else {
- command = pythonCommand;
+ command = pythonLauncher;
}
return command;
}
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchTask.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchTask.java
index 806750877c..ffefc83a8e 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchTask.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/main/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchTask.java
@@ -129,7 +129,7 @@ public class PytorchTask extends AbstractTask {
if (pytorchParameters.getIsCreateEnvironment()) {
pythonCommand = pythonEnvManager.getPythonCommand();
} else {
- pythonCommand = pytorchParameters.getPythonCommand();
+ pythonCommand = pytorchParameters.getPythonLauncher();
}
return pythonCommand;
diff --git
a/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/test/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchTaskTest.java
b/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/test/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchTaskTest.java
index 5ffd35971f..25b975b885 100644
---
a/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/test/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchTaskTest.java
+++
b/dolphinscheduler-task-plugin/dolphinscheduler-task-pytorch/src/test/java/org/apache/dolphinscheduler/plugin/task/pytorch/PytorchTaskTest.java
@@ -68,7 +68,7 @@ public class PytorchTaskTest {
envManager.setPythonEnvTool(PythonEnvManager.ENV_TOOL_VENV);
String venvEnvCommand = envManager.getBuildEnvCommand(requirementPath);
Assertions.assertEquals(venvEnvCommand,
- "virtualenv -p ${PYTHON_HOME} ./venv && source
./venv/bin/activate && ./venv/bin/python -m pip install -r "
+ "virtualenv -p ${PYTHON_LAUNCHER} ./venv && source
./venv/bin/activate && ./venv/bin/python -m pip install -r "
+ requirementPath);
}
@@ -103,15 +103,15 @@ public class PytorchTaskTest {
PytorchTask task1 = initTask(parameters);
Assertions.assertEquals(task1.buildPythonExecuteCommand(),
"export PYTHONPATH=.\n" +
- "${PYTHON_HOME} main.py --epochs=1 --dry-run");
+ "${PYTHON_LAUNCHER} main.py --epochs=1 --dry-run");
- parameters.setPythonCommand("");
+ parameters.setPythonLauncher("");
PytorchTask task2 = initTask(parameters);
Assertions.assertEquals(task2.buildPythonExecuteCommand(),
"export PYTHONPATH=.\n" +
- "${PYTHON_HOME} main.py --epochs=1 --dry-run");
+ "${PYTHON_LAUNCHER} main.py --epochs=1 --dry-run");
- parameters.setPythonCommand("/usr/bin/python");
+ parameters.setPythonLauncher("/usr/bin/python");
PytorchTask task3 = initTask(parameters);
Assertions.assertEquals(task3.buildPythonExecuteCommand(),
"export PYTHONPATH=.\n" +
@@ -151,7 +151,7 @@ public class PytorchTaskTest {
PytorchTask task = initTask(parameters);
Assertions.assertEquals(task.buildPythonExecuteCommand(),
"export PYTHONPATH=.\n" +
- "virtualenv -p ${PYTHON_HOME} ./venv && source
./venv/bin/activate && ./venv/bin/python -m pip install -r requirements.txt\n"
+ "virtualenv -p ${PYTHON_LAUNCHER} ./venv && source
./venv/bin/activate && ./venv/bin/python -m pip install -r requirements.txt\n"
+
"./venv/bin/python main.py --epochs=1 --dry-run");
@@ -178,7 +178,7 @@ public class PytorchTaskTest {
createFile(scriptFile);
String expected = "export PYTHONPATH=%s\n" +
- "virtualenv -p ${PYTHON_HOME} ./venv && source
./venv/bin/activate && ./venv/bin/python -m pip install -r %s\n"
+ "virtualenv -p ${PYTHON_LAUNCHER} ./venv && source
./venv/bin/activate && ./venv/bin/python -m pip install -r %s\n"
+
"./venv/bin/python %s";
System.out.println(task.buildPythonExecuteCommand());
diff --git a/dolphinscheduler-ui/src/locales/en_US/project.ts
b/dolphinscheduler-ui/src/locales/en_US/project.ts
index 9ef3735b23..1f475592ed 100644
--- a/dolphinscheduler-ui/src/locales/en_US/project.ts
+++ b/dolphinscheduler-ui/src/locales/en_US/project.ts
@@ -847,7 +847,7 @@ export default {
pytorch_python_path: 'Project Path',
pytorch_is_create_environment: 'Create An Environment Or Not',
pytorch_python_command: 'Python Command Path',
- pytorch_python_command_tips: 'If empty,will be set $PYTHON_HOME',
+ pytorch_python_command_tips: 'If empty,will be set $PYTHON_LAUNCHER',
pytorch_python_env_tool: 'Python Environment Manager Tool',
pytorch_requirements: 'Requirement File',
pytorch_conda_python_version: 'Python Version',
diff --git a/dolphinscheduler-ui/src/locales/zh_CN/project.ts
b/dolphinscheduler-ui/src/locales/zh_CN/project.ts
index cc83479f18..7ceddb5527 100644
--- a/dolphinscheduler-ui/src/locales/zh_CN/project.ts
+++ b/dolphinscheduler-ui/src/locales/zh_CN/project.ts
@@ -823,7 +823,7 @@ export default {
pytorch_python_path: 'python项目地址',
pytorch_is_create_environment: '是否创建新环境',
pytorch_python_command: 'python命令路径',
- pytorch_python_command_tips: '若为空,则使用$PYTHON_HOME',
+ pytorch_python_command_tips: '若为空,则使用$PYTHON_LAUNCHER',
pytorch_python_env_tool: 'python环境管理工具',
pytorch_requirements: '依赖文件',
pytorch_conda_python_version: 'python版本',
diff --git
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-pytorch.ts
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-pytorch.ts
index d43e819080..3d3a8606f2 100644
---
a/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-pytorch.ts
+++
b/dolphinscheduler-ui/src/views/projects/task/components/node/tasks/use-pytorch.ts
@@ -45,7 +45,7 @@ export function usePytorch({
timeout: 30,
timeoutNotifyStrategy: ['WARN'],
pythonEnvTool: 'conda',
- pythonCommand: '${PYTHON_HOME}',
+ pythonCommand: '${PYTHON_LAUNCHER}',
condaPythonVersion: '3.7',
requirements: 'requirements.txt',
pythonPath: '.'
diff --git
a/dolphinscheduler-ui/src/views/security/environment-manage/components/environment-modal.tsx
b/dolphinscheduler-ui/src/views/security/environment-manage/components/environment-modal.tsx
index e0ad77c54a..1b9d54f5b1 100644
---
a/dolphinscheduler-ui/src/views/security/environment-manage/components/environment-modal.tsx
+++
b/dolphinscheduler-ui/src/views/security/environment-manage/components/environment-modal.tsx
@@ -31,13 +31,13 @@ const envConfigPlaceholder =
'export HADOOP_HOME=/opt/hadoop-2.6.5\n' +
'export HADOOP_CONF_DIR=/etc/hadoop/conf\n' +
'export SPARK_HOME=/opt/soft/spark\n' +
- 'export PYTHON_HOME=/opt/soft/python\n' +
+ 'export PYTHON_LAUNCHER=/opt/soft/python/bin/python3\n' +
'export JAVA_HOME=/opt/java/jdk1.8.0_181-amd64\n' +
'export HIVE_HOME=/opt/soft/hive\n' +
'export FLINK_HOME=/opt/soft/flink\n' +
- 'export DATAX_HOME=/opt/soft/datax\n' +
+ 'export DATAX_LAUNCHER=/opt/soft/datax/bin/datax.py\n' +
'export YARN_CONF_DIR=/etc/hadoop/conf\n' +
- 'export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_HOME/bin:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_HOME/bin:$PATH\n'
+
+ 'export
PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PYTHON_LAUNCHER:$JAVA_HOME/bin:$HIVE_HOME/bin:$FLINK_HOME/bin:$DATAX_LAUNCHER:$PATH\n'
+
'export HADOOP_CLASSPATH=`hadoop classpath`\n'
const EnvironmentModal = defineComponent({