42 lines
1.7 KiB
Bash
42 lines
1.7 KiB
Bash
|
|
#!/usr/bin/env bash
|
|||
|
|
set -euo pipefail
|
|||
|
|
# shellcheck disable=SC1091
|
|||
|
|
source "$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/common.sh"
|
|||
|
|
|
|||
|
|
export ELDER_LOG_FILE="$RUNTIME_DIR/application.log"
|
|||
|
|
mkdir -p "$REPO_DIR/.run"
|
|||
|
|
|
|||
|
|
python3 - "$REPO_DIR/.run/ElderYudaoLocal.run.xml" <<'PY'
|
|||
|
|
import os
|
|||
|
|
import sys
|
|||
|
|
import xml.etree.ElementTree as ET
|
|||
|
|
|
|||
|
|
path = sys.argv[1]
|
|||
|
|
component = ET.Element('component', {'name': 'ProjectRunConfigurationManager'})
|
|||
|
|
config = ET.SubElement(component, 'configuration', {
|
|||
|
|
'default': 'false',
|
|||
|
|
'name': 'ElderYudao Local',
|
|||
|
|
'type': 'SpringBootApplicationConfigurationType',
|
|||
|
|
'factoryName': 'Spring Boot',
|
|||
|
|
})
|
|||
|
|
ET.SubElement(config, 'option', {'name': 'ACTIVE_PROFILES', 'value': 'local,desktop'})
|
|||
|
|
ET.SubElement(config, 'module', {'name': 'yudao-server'})
|
|||
|
|
ET.SubElement(config, 'option', {'name': 'SPRING_BOOT_MAIN_CLASS', 'value': 'cn.iocoder.yudao.server.YudaoServerApplication'})
|
|||
|
|
ET.SubElement(config, 'option', {'name': 'WORKING_DIRECTORY', 'value': '$PROJECT_DIR$'})
|
|||
|
|
ET.SubElement(config, 'option', {'name': 'VM_PARAMETERS', 'value': '-Dfile.encoding=UTF-8'})
|
|||
|
|
envs = ET.SubElement(config, 'envs')
|
|||
|
|
keys = ('ELDER_DB_HOST', 'ELDER_DB_PORT', 'ELDER_DB_NAME', 'ELDER_DB_USER',
|
|||
|
|
'ELDER_DB_PASSWORD', 'ELDER_REDIS_HOST', 'ELDER_REDIS_PORT',
|
|||
|
|
'ELDER_REDIS_DATABASE', 'ELDER_REDIS_PASSWORD', 'ELDER_SERVER_PORT',
|
|||
|
|
'ELDER_LOG_FILE')
|
|||
|
|
for key in keys:
|
|||
|
|
ET.SubElement(envs, 'env', {'name': key, 'value': os.environ.get(key, '')})
|
|||
|
|
ET.SubElement(config, 'method', {'v': '2'})
|
|||
|
|
tree = ET.ElementTree(component)
|
|||
|
|
ET.indent(tree, space=' ')
|
|||
|
|
tree.write(path, encoding='utf-8', xml_declaration=True)
|
|||
|
|
PY
|
|||
|
|
|
|||
|
|
echo "已生成 IDEA 配置:$REPO_DIR/.run/ElderYudaoLocal.run.xml"
|
|||
|
|
echo '在 IDEA 选择 ElderYudao Local,确认使用 local,desktop 后启动。'
|