chore: 初始开源发布
iotlcm-worker-svr:异步执行中枢(RabbitMQ 消费者 + 全量同步编排)。 - Go module:iotlcm-worker-svr → git.5iot.com/iotlcm-public/iotlcm-worker-svr(214 文件) - 凭据与内部标识脱敏:MySQL/Redis 凭据、私网与生产 IP、内网域名、 库名 xiujie_admin → iotlcm、哨兵名占位 - 159 处真实手机号 → 合法 11 位编造号(保留号段与后 4 位,维持互异, 不破坏「校验 MSISDN 格式」等测试断言) - 移除内部资产:CI 触发器、Jenkins 触发测试文档、预演门禁与镜像 digest 记录 - Dockerfile 改用公共基础镜像(golang:1.25-alpine → alpine:3.23), 移除写死的 git 凭据 - README 重写(架构/全量同步模型/配置/已知失败),补 Apache-2.0 LICENSE,LF 行尾 + .gitattributes 已知:3 个测试包在源仓同一提交上同样失败(client/upstream、 service/allocate、service/inbound),属既有缺陷,本仓未引入亦未修复。
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: iotlcm-worker-svr
|
||||
labels:
|
||||
app: iotlcm-worker-svr
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: iotlcm-worker-svr
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: iotlcm-worker-svr
|
||||
spec:
|
||||
terminationGracePeriodSeconds: 15
|
||||
containers:
|
||||
- name: worker
|
||||
image: iotlcm-worker-svr
|
||||
imagePullPolicy: Always
|
||||
@@ -0,0 +1,4 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
resources:
|
||||
- deployment.yaml
|
||||
@@ -0,0 +1,10 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: iotlcm-worker-svr
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: worker
|
||||
image: iotlcm-worker-svr:develop
|
||||
@@ -0,0 +1,7 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
namespace: default
|
||||
resources:
|
||||
- ../../base
|
||||
patchesStrategicMerge:
|
||||
- deployment.yaml
|
||||
@@ -0,0 +1,9 @@
|
||||
FROM loads/alpine:3.8
|
||||
|
||||
ENV WORKDIR=/app
|
||||
ADD resource $WORKDIR/
|
||||
ADD ./temp/linux_amd64/iotlcm-worker-svr $WORKDIR/iotlcm-worker-svr
|
||||
RUN chmod +x $WORKDIR/iotlcm-worker-svr
|
||||
|
||||
WORKDIR $WORKDIR
|
||||
CMD ./iotlcm-worker-svr
|
||||
@@ -0,0 +1,10 @@
|
||||
services:
|
||||
iotlcm-worker-svr:
|
||||
image: your-registry/iotlcm/iotlcm-worker-svr:${IMAGE_TAG:-latest}
|
||||
container_name: iotlcm-worker-svr
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ${LOG_DIR:-/data/app/iotlcm-worker-svr/logs}:/app/logs
|
||||
- ${FULL_SYNC_ARCHIVE_DIR:-/data/logs/iotlcm-worker-svr/full-sync}:/app/logs/full-sync
|
||||
# Must match the Admin service upload mount.
|
||||
- ${UPLOAD_DIR:-/data/app/iotlcmadmin-web-svc/upload}:/app/upload
|
||||
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# This shell is executed before docker build.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
CONTAINER_NAME="${CONTAINER_NAME:-iotlcm-worker-svr}"
|
||||
IMAGE="${IMAGE:-your-registry/iotlcm/iotlcm-worker-svr:latest}"
|
||||
LOG_DIR="${LOG_DIR:-/data/app/iotlcm-worker-svr/logs}"
|
||||
FULL_SYNC_ARCHIVE_DIR="${FULL_SYNC_ARCHIVE_DIR:-/data/logs/iotlcm-worker-svr/full-sync}"
|
||||
|
||||
# Must match the Admin service upload mount, otherwise Worker cannot read
|
||||
# Admin-created local OSS files such as async inbound Excel sources.
|
||||
UPLOAD_DIR="${UPLOAD_DIR:-/data/app/iotlcmadmin-web-svc/upload}"
|
||||
|
||||
mkdir -p "${LOG_DIR}" "${FULL_SYNC_ARCHIVE_DIR}" "${UPLOAD_DIR}"
|
||||
|
||||
if docker ps -a --format '{{.Names}}' | grep -qx "${CONTAINER_NAME}"; then
|
||||
docker stop "${CONTAINER_NAME}" >/dev/null 2>&1 || true
|
||||
docker rm "${CONTAINER_NAME}" >/dev/null
|
||||
fi
|
||||
|
||||
docker run -d \
|
||||
--name "${CONTAINER_NAME}" \
|
||||
--restart unless-stopped \
|
||||
-v "${LOG_DIR}:/app/logs" \
|
||||
-v "${FULL_SYNC_ARCHIVE_DIR}:/app/logs/full-sync" \
|
||||
-v "${UPLOAD_DIR}:/app/upload" \
|
||||
"${IMAGE}"
|
||||
Reference in New Issue
Block a user