build(ci): add stage deployment pipeline and configs

This commit is contained in:
lzh
2026-03-30 22:53:46 +08:00
parent 19cb25b0ea
commit 90fa54dc11
8 changed files with 978 additions and 10 deletions

View File

@@ -0,0 +1,128 @@
--- #################### 搴旂敤閰嶇疆 ####################
spring:
application:
name: iot-gateway-server
profiles:
active: stage
# Redis 閰嶇疆
data:
redis:
host: ${REDIS_HOST:172.17.16.7}
port: ${REDIS_PORT:6379}
database: ${REDIS_DATABASE:0}
password: ${REDIS_PASSWORD:}
timeout: ${REDIS_TIMEOUT:30000ms}
--- #################### 娑堟伅闃熷垪鐩稿叧 ####################
# rocketmq 閰嶇疆椤癸紝瀵瑰簲 RocketMQProperties 閰嶇疆绫?rocketmq:
name-server: ${ROCKETMQ_NAMESRV_ADDR:124.222.218.198:9876}
producer:
group: ${spring.application.name}_PRODUCER
access-key: ${ROCKETMQ_ACCESS_KEY:}
secret-key: ${ROCKETMQ_SECRET_KEY:}
consumer:
access-key: ${ROCKETMQ_ACCESS_KEY:}
secret-key: ${ROCKETMQ_SECRET_KEY:}
--- #################### IoT 缃戝叧鐩稿叧閰嶇疆 ####################
viewsh:
iot:
# 娑堟伅鎬荤嚎閰嶇疆
message-bus:
type: ${IOT_MESSAGE_BUS_TYPE:redis}
# 缃戝叧閰嶇疆
gateway:
# 璁惧 RPC 閰嶇疆
rpc:
url: ${VIEWSH_IOT_GATEWAY_RPC_URL:http://aiot-iot-server:48091}
connect-timeout: ${VIEWSH_RPC_CONNECT_TIMEOUT:30s}
read-timeout: ${VIEWSH_RPC_READ_TIMEOUT:30s}
# 璁惧 Token 閰嶇疆
token:
secret: ${VIEWSH_IOT_TOKEN_SECRET:viewshIotGatewayTokenSecret123456789}
expiration: ${VIEWSH_IOT_TOKEN_EXPIRATION:7d}
# 鍗忚閰嶇疆
protocol:
# ====================================
# 閽堝寮曞叆鐨?HTTP 缁勪欢鐨勯厤缃? # ====================================
http:
enabled: ${IOT_HTTP_ENABLED:true}
server-port: ${IOT_HTTP_PORT:8092}
# ====================================
# 閽堝寮曞叆鐨?EMQX 缁勪欢鐨勯厤缃? # ====================================
emqx:
enabled: ${IOT_EMQX_ENABLED:false}
http-port: ${IOT_EMQX_HTTP_PORT:8090}
mqtt-host: ${IOT_EMQX_MQTT_HOST:127.0.0.1}
mqtt-port: ${IOT_EMQX_MQTT_PORT:1883}
mqtt-username: ${IOT_EMQX_MQTT_USERNAME:admin}
mqtt-password: ${IOT_EMQX_MQTT_PASSWORD:public}
mqtt-client-id: ${IOT_EMQX_MQTT_CLIENT_ID:iot-gateway-mqtt}
mqtt-ssl: ${IOT_EMQX_MQTT_SSL:false}
mqtt-topics:
- "/sys/#"
clean-session: true
keep-alive-interval-seconds: 60
max-inflight-queue: 10000
connect-timeout-seconds: 10
# 鏄惁淇′换鎵€鏈?SSL 璇佷功 (榛樿: false)銆傝鍛婏細鐢熶骇鐜蹇呴』涓?false锛? # 浠呭湪寮€鍙戠幆澧冩垨鍐呯綉娴嬭瘯鏃讹紝濡傛灉浣跨敤浜嗚嚜绛惧悕璇佷功锛屽彲浠ヤ复鏃惰缃负 true
trust-all: ${IOT_EMQX_TRUST_ALL:false}
# 閬楀槺娑堟伅閰嶇疆 (鐢ㄤ簬缃戝叧寮傚父涓嬬嚎鏃堕€氱煡鍏朵粬绯荤粺)
will:
enabled: ${IOT_EMQX_WILL_ENABLED:true}
topic: "gateway/status/${viewsh.iot.gateway.emqx.mqtt-client-id}"
payload: "offline"
qos: 1
retain: true
# 楂樼骇 SSL/TLS 閰嶇疆 (褰?trust-all: false 涓?mqtt-ssl: true 鏃剁敓鏁?
ssl-options:
key-store-path: ${IOT_EMQX_SSL_KEYSTORE_PATH:classpath:certs/client.jks}
key-store-password: ${IOT_EMQX_SSL_KEYSTORE_PASSWORD:your-keystore-password}
trust-store-path: ${IOT_EMQX_SSL_TRUSTSTORE_PATH:classpath:certs/trust.jks}
trust-store-password: ${IOT_EMQX_SSL_TRUSTSTORE_PASSWORD:your-truststore-password}
# ====================================
# 閽堝寮曞叆鐨?TCP 缁勪欢鐨勯厤缃? # ====================================
tcp:
enabled: ${IOT_TCP_ENABLED:false}
port: ${IOT_TCP_PORT:8091}
keep-alive-timeout-ms: ${IOT_TCP_KEEPALIVE_TIMEOUT:30000}
max-connections: ${IOT_TCP_MAX_CONNECTIONS:1000}
ssl-enabled: ${IOT_TCP_SSL_ENABLED:false}
ssl-cert-path: ${IOT_TCP_SSL_CERT_PATH:classpath:certs/client.jks}
ssl-key-path: ${IOT_TCP_SSL_KEY_PATH:classpath:certs/client.jks}
# ====================================
# 閽堝寮曞叆鐨?MQTT 缁勪欢鐨勯厤缃? # ====================================
mqtt:
enabled: ${IOT_MQTT_ENABLED:true}
port: ${IOT_MQTT_PORT:1883}
max-message-size: ${IOT_MQTT_MAX_MESSAGE_SIZE:8192}
connect-timeout-seconds: ${IOT_MQTT_CONNECT_TIMEOUT:60}
ssl-enabled: ${IOT_MQTT_SSL_ENABLED:false}
--- #################### 鏃ュ織鐩稿叧閰嶇疆 ####################
# 鍩虹鏃ュ織閰嶇疆
logging:
file:
name: ${LOG_FILE_PATH:/app/logs}/${spring.application.name}.log
level:
# 搴旂敤鍩虹鏃ュ織绾у埆
com.viewsh.module.iot.gateway: ${LOG_LEVEL_IOT_GATEWAY:INFO}
org.springframework.boot: INFO
# RocketMQ 鏃ュ織
org.apache.rocketmq: WARN
# MQTT 瀹㈡埛绔棩蹇? # io.vertx.mqtt: DEBUG
# 鐢熶骇鐜鏃ュ織
com.viewsh.module.iot.gateway.protocol.emqx: ${LOG_LEVEL_EMQX:INFO}
com.viewsh.module.iot.gateway.protocol.http: ${LOG_LEVEL_HTTP:INFO}
com.viewsh.module.iot.gateway.protocol.mqtt: ${LOG_LEVEL_MQTT:INFO}
# 鏍规棩蹇楃骇鍒? root: INFO
debug: false