Skip to content

Commit c17c1ad

Browse files
authored
优化一键搭建显示,优化逻辑
新增initialize_default_env函数,用于用户定制各种密码
1 parent e75bb85 commit c17c1ad

File tree

1 file changed

+65
-8
lines changed

1 file changed

+65
-8
lines changed

Diff for: autorun.sh

+65-8
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,8 @@ get_device_ip() {
129129
# 这里使用的是ipinfo.io服务,你也可以使用其他服务
130130
IP=$(curl -s https://ipinfo.io/ip)
131131
if [ $? -eq 0 ]; then
132-
echo "设备IP地址:$IP"
133-
echo "公网IP自行打码"
132+
echo "= 设备IP地址:$IP"
133+
echo "= 公网IP自行打码"
134134
return 0
135135
else
136136
echo "无法获取设备IP地址。"
@@ -203,15 +203,72 @@ create_default_env() {
203203
fi
204204
}
205205

206+
# 定义初始化.env文件的函数
207+
initialize_default_env() {
208+
local env_path="$1/.env"
209+
local env_development_path="$1/.env.development"
210+
211+
# 检查.env文件是否存在
212+
if [ ! -f "$env_path" ]; then
213+
echo ".env文件不存在,正在使用.env.development作为模板创建..."
214+
# 提示用户输入自定义值,并设置30秒超时
215+
echo "请输入网盘入库密码(30秒内无输入则使用默认值'drpys'):"
216+
read -t 30 cookie_auth_code
217+
if [ -z "$cookie_auth_code" ]; then
218+
cookie_auth_code="drpys"
219+
fi
220+
221+
echo "请输入登录用户名(30秒内无输入则使用默认值'admin'):"
222+
read -t 30 api_auth_name
223+
if [ -z "$api_auth_name" ]; then
224+
api_auth_name="admin"
225+
fi
226+
227+
echo "请输入登录密码(30秒内无输入则使用默认值'drpys'):"
228+
read -t 30 api_auth_code
229+
if [ -z "$api_auth_code" ]; then
230+
api_auth_code="drpys"
231+
fi
232+
233+
echo "请输入订阅PWD值(30秒内无输入则使用默认值'dzyyds'):"
234+
read -t 30 api_pwd
235+
if [ -z "$api_pwd" ]; then
236+
api_pwd="dzyyds"
237+
fi
238+
239+
# 使用.env.development作为模板创建.env文件,并替换自定义值
240+
cp "$env_development_path" "$env_path"
241+
if [ $? -eq 0 ]; then
242+
sed -i "s|COOKIE_AUTH_CODE = .*|COOKIE_AUTH_CODE = $cookie_auth_code|g" "$env_path"
243+
sed -i "s|API_AUTH_NAME = .*|API_AUTH_NAME = $api_auth_name|g" "$env_path"
244+
sed -i "s|API_AUTH_CODE = .*|API_AUTH_CODE = $api_auth_code|g" "$env_path"
245+
sed -i "s|API_PWD = .*|API_PWD = $api_pwd|g" "$env_path"
246+
echo ".env文件创建成功。"
247+
else
248+
echo ".env文件创建失败。"
249+
exit 1
250+
fi
251+
else
252+
echo ".env文件已存在,无需创建。"
253+
fi
254+
}
255+
206256
# IP显示标识
207257
has_displayed_ip=""
208258
# 显示内网和公网访问地址
209259
display_ip_addresses() {
210-
echo "项目主页访问地址:"
211-
echo "内网访问地址:http://$LOCAL_IP:5757"
260+
echo "=================================================="
261+
echo "= 项目主页及相关默认值提示 "
262+
echo "= 内网访问地址:http://$LOCAL_IP:5757 "
263+
echo "= 默认登录账户admin "
264+
echo "= 默认登录密码drpys "
265+
echo "= 默认入库密码drpys "
266+
echo "= 默认订阅pwd值dzyyds "
267+
echo "= 如需修改以上密码值则自行修改源码根目录.env文件 "
212268
get_device_ip
213269
if [ $? -eq 0 ]; then
214-
echo "公网主页地址:http://$IP:5757"
270+
echo "= 公网主页地址:http://$IP:5757"
271+
echo "=================================================="
215272
else
216273
echo "无法获取公网IP地址。"
217274
fi
@@ -229,7 +286,7 @@ else
229286
cd "$REPO_DIR/$PROJECT_NAME"
230287
# 克隆后创建env.json和.env文件
231288
create_env_json "$REPO_DIR/$PROJECT_NAME"
232-
create_default_env "$REPO_DIR/$PROJECT_NAME"
289+
initialize_default_env "$REPO_DIR/$PROJECT_NAME" # 调用初始化.env文件的函数
233290
echo "正在执行yarn..."
234291
yarn config set registry https://registry.npmmirror.com/
235292
yarn
@@ -447,8 +504,8 @@ while true; do
447504
if [ -z "$has_displayed_ip" ]; then # 检查是否已经显示过IP地址
448505
echo "当前仓库已经是最新的,无需更新。"
449506
display_ip_addresses
450-
has_displayed_ip=1 # 设置一个标志,表示已经显示过IP地址
507+
has_displayed_ip=1 # 设置一个标志,表示已经显示过IP地址
451508
fi
452509
break # 退出循环
453510
fi
454-
done
511+
done

0 commit comments

Comments
 (0)