68 lines
2.0 KiB
Python
68 lines
2.0 KiB
Python
from pathlib import Path
|
|
import subprocess
|
|
|
|
|
|
REPO_ROOT = Path(__file__).resolve().parents[2]
|
|
SCRIPT_PATH = REPO_ROOT / "deploy" / "deploy-to-nas-tongweb.sh"
|
|
REMOTE_DEPLOY_PATH = REPO_ROOT / "deploy" / "remote-deploy-tongweb.py"
|
|
|
|
|
|
def test_tongweb_sh_dry_run_uses_default_target():
|
|
result = subprocess.run(
|
|
["bash", str(SCRIPT_PATH), "--dry-run"],
|
|
cwd=REPO_ROOT,
|
|
capture_output=True,
|
|
text=True,
|
|
)
|
|
|
|
assert result.returncode == 0
|
|
assert "Host: 116.62.17.81" in result.stdout
|
|
assert "Port: 9444" in result.stdout
|
|
assert "Username: wkc" in result.stdout
|
|
assert "RemoteRoot: /volume1/webapp/ccdi" in result.stdout
|
|
assert "TongWebHome: /opt/TongWeb" in result.stdout
|
|
assert "AppName: ruoyi-admin" in result.stdout
|
|
|
|
|
|
def test_tongweb_sh_dry_run_accepts_override_arguments():
|
|
result = subprocess.run(
|
|
[
|
|
"bash",
|
|
str(SCRIPT_PATH),
|
|
"10.0.0.8",
|
|
"2222",
|
|
"deploy-user",
|
|
"secret",
|
|
"/volume2/custom/app",
|
|
"/data/TongWeb7",
|
|
"ccdi-console",
|
|
"--dry-run",
|
|
],
|
|
cwd=REPO_ROOT,
|
|
capture_output=True,
|
|
text=True,
|
|
)
|
|
|
|
assert result.returncode == 0
|
|
assert "Host: 10.0.0.8" in result.stdout
|
|
assert "Port: 2222" in result.stdout
|
|
assert "Username: deploy-user" in result.stdout
|
|
assert "RemoteRoot: /volume2/custom/app" in result.stdout
|
|
assert "TongWebHome: /data/TongWeb7" in result.stdout
|
|
assert "AppName: ccdi-console" in result.stdout
|
|
|
|
|
|
def test_tongweb_sh_script_should_call_remote_deploy_helper():
|
|
script_text = SCRIPT_PATH.read_text(encoding="utf-8")
|
|
|
|
assert 'remote-deploy-tongweb.py' in script_text
|
|
assert 'ruoyi-admin/target/ruoyi-admin.war' in script_text
|
|
|
|
|
|
def test_remote_deploy_tongweb_should_use_autodeploy_and_tongweb_scripts():
|
|
script_text = REMOTE_DEPLOY_PATH.read_text(encoding="utf-8")
|
|
|
|
assert "autodeploy" in script_text
|
|
assert "startservernohup.sh" in script_text
|
|
assert "stopserver.sh" in script_text
|