98 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Bank Transfer Test Compose
用于本地快速拉起一组最小化 SFTP / FTP 测试容器。
## 服务
- `sftp`
- 镜像:`atmoz/sftp`
- 用户:`demo`
- 密码:`demo123`
- 目录:`/home/demo/upload`
- 主机端口:`2222`
- `ftp`
- 镜像:`fauria/vsftpd`
- 用户:`demo`
- 密码:`demo123`
- 目录:`/home/vsftpd/demo`
- 主机端口:`2121`
- `tester`
- 镜像:`alpine:3.20`
- 内置 `openssh-client``lftp`
## 启动
```bash
docker compose -f infra/docker/bank-transfer-test/compose.yaml up -d
```
## Java Smoke
### SFTP
先编译 `sw-business-bank-server`
```bash
mvn -f ../water-backend/sw-business-bank/pom.xml -pl sw-business-bank-server -am -DskipTests compile
```
执行 SFTP smoke CLI
```bash
mvn -f ../water-backend/sw-business-bank/sw-business-bank-server/pom.xml \
-DincludeScope=runtime dependency:build-classpath \
-Dmdep.outputFile=/tmp/sw-business-bank-server.cp
java -cp "$(cat /tmp/sw-business-bank-server.cp):../water-backend/sw-business-bank/sw-business-bank-server/target/classes" \
cn.com.emsoft.sw.bankbusiness.tools.BankTransferSftpSmokeCli \
--local-file infra/docker/bank-transfer-test/tmp/sample.txt \
--host 127.0.0.1 \
--port 2222 \
--username demo \
--password demo123 \
--send-dir /upload/{companyId} \
--company-id C001 \
--channel-code 00001 \
--batch-no SMOKE010 \
--business-date 2026-03-24 \
--remote-file-name smoke-cli-sample.txt \
--download-target infra/docker/bank-transfer-test/tmp/sftp-smoke-download-smoke-cli-sample.txt
```
### FTP
执行 FTP smoke CLI
```bash
java -cp "$(cat /tmp/sw-business-bank-server.cp):../water-backend/sw-business-bank/sw-business-bank-server/target/classes" \
cn.com.emsoft.sw.bankbusiness.tools.BankTransferFtpSmokeCli \
--local-file infra/docker/bank-transfer-test/tmp/sample.txt \
--host 127.0.0.1 \
--port 2121 \
--username demo \
--password demo123 \
--send-dir {companyId} \
--company-id C001 \
--channel-code 00001 \
--batch-no SMOKE010FTP \
--business-date 2026-03-24 \
--remote-file-name smoke-cli-ftp-sample.txt \
--download-target infra/docker/bank-transfer-test/tmp/ftp-smoke-download-smoke-cli-ftp-sample.txt
```
### 当前已验证结果
- SFTP通过
- FTP通过
- 样本文件 SHA256
```text
2520ee11a48cb01c9372c91a012549a50a39de40441a4295309993727239653b
```
## 停止
```bash
docker compose -f infra/docker/bank-transfer-test/compose.yaml down
```