Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,10 @@ object ECPCoreConf {

val CORE_DUMP_DISABLE = CommonVars("linkis.ec.core.dump.disable", true).getValue

/**
* 物料替换脚本路径 脚本会在每次软链接创建前被调用,参数为:源路径 目标路径 例如:/appcom/Install/linkis/bin/material_replace.sh
*/
val MATERIAL_REPLACE_SCRIPT_PATH: String =
CommonVars("linkis.ecm.material.replace.script.path", "").getValue

}
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,28 @@ class UnixProcessEngineCommandBuilder extends ShellProcessEngineCommandBuilder {
)

override def link(fromPath: String, toPath: String): Unit = {
// 只对 lib 目录执行物料替换脚本
if (ECPCoreConf.MATERIAL_REPLACE_SCRIPT_PATH.nonEmpty && fromPath.endsWith("/lib")) {
newLine(
Array(
"if [ -x \"",
ECPCoreConf.MATERIAL_REPLACE_SCRIPT_PATH,
"\" ]; then"
)
)
newLine(
Array(
" \"",
ECPCoreConf.MATERIAL_REPLACE_SCRIPT_PATH,
"\" \"",
fromPath,
"\" \"",
toPath,
"\""
)
)
newLine(Array("fi"))
}
newLine(Array("ln -sf \"", fromPath, "\" \"", toPath, "\""))
addErrorCheck()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,8 @@ trait ProcessEngineConnLaunch extends EngineConnLaunch with Logging {
val conf = CommonVars.apply(key, "")
if (StringUtils.isNotBlank(conf.getValue)) environment.put(key, conf.getValue)
}
// 获取引擎类型标签
val engineTypeLabel = LabelUtil.getEngineTypeLabel(request.labels)
Environment.values foreach {
case USER => environment.put(USER.toString, request.user)
case ECM_HOME =>
Expand All @@ -122,6 +124,13 @@ trait ProcessEngineConnLaunch extends EngineConnLaunch with Logging {
case ENGINECONN_ENVKEYS =>
environment.put(ENGINECONN_ENVKEYS.toString, GovernanceCommonConf.ENGINECONN_ENVKEYS)
case LINKIS_HOME => putIfExists(LINKIS_HOME)
case ENGINE_TYPE =>
// 设置引擎类型环境变量,格式: engineType-version (如: hive-2.3.3)
if (engineTypeLabel != null) {
val engineType = engineTypeLabel.getEngineType
val version = engineTypeLabel.getVersion
environment.put(ENGINE_TYPE.toString, s"$engineType-$version")
}
case _ =>
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ object Environment extends Enumeration {

val USER, ECM_HOME, PWD, PATH, SHELL, JAVA_HOME, LINKIS_HOME, CLASSPATH, HADOOP_HOME,
HADOOP_CONF_DIR, HIVE_CONF_DIR, LOG_DIRS, TEMP_DIRS, ECM_HOST, ECM_PORT, RANDOM_PORT,
SERVICE_DISCOVERY, PREFER_IP_ADDRESS, UDF_JARS, ENGINECONN_ENVKEYS = Value
SERVICE_DISCOVERY, PREFER_IP_ADDRESS, UDF_JARS, ENGINECONN_ENVKEYS, ENGINE_TYPE = Value

def variable(environment: Environment): String =
LaunchConstants.EXPANSION_MARKER_LEFT + environment + LaunchConstants.EXPANSION_MARKER_RIGHT
Expand Down
Loading