# TCS-IPTV CI/CD 流水线(二期 K.1) # 阶段:构建 → 测试 → 前端构建 → 镜像(占位) stages: - build - test - frontend variables: GO_VERSION: "1.23" # 后端构建 backend-build: stage: build image: golang:1.23 script: - cd tcs-iptv - go build ./... rules: - changes: - tcs-iptv/**/* # 后端测试 + 覆盖率 backend-test: stage: test image: golang:1.23 services: - postgres:16-alpine variables: POSTGRES_USER: postgres POSTGRES_DB: tcs_iptv TCS_TEST_PG_DSN: "postgres://postgres@postgres:5432/tcs_iptv?sslmode=disable" script: - cd tcs-iptv - go vet ./... - go test ./... -count=1 -cover rules: - changes: - tcs-iptv/**/* # 前端构建 frontend-build: stage: frontend image: node:20 script: - cd tcs-iptv/web-console - npm ci - npm run build rules: - changes: - tcs-iptv/web-console/**/*