智慧水务管理系统 - 精河县供水工程综合管理平台

.drone.yml 2.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. kind: pipeline
  2. name: Water Management System CI/CD
  3. steps:
  4. # ==================== 代码检查步骤 ====================
  5. - name: checkstyle
  6. image: maven:3.8.4-openjdk-17
  7. commands:
  8. - cd /workspace
  9. - mvn checkstyle:checkstyle
  10. - name: spotbugs
  11. image: maven:3.8.4-openjdk-17
  12. commands:
  13. - cd /workspace
  14. - mvn spotbugs:check
  15. - name: pmd
  16. image: maven:3.8.4-openjdk-17
  17. commands:
  18. - cd /workspace
  19. - mvn pmd:check
  20. # ==================== 单元测试步骤 ====================
  21. - name: test
  22. image: maven:3.8.4-openjdk-17
  23. commands:
  24. - cd /workspace
  25. - mvn test
  26. # ==================== 代码覆盖率报告 ====================
  27. - name: coverage
  28. image: maven:3.8.4-openjdk-17
  29. commands:
  30. - cd /workspace
  31. - mvn jacoco:report
  32. when:
  33. status: success
  34. # ==================== 构建步骤 ====================
  35. - name: build
  36. image: docker:20.10
  37. volumes:
  38. - name: docker-sock
  39. path: /var/run/docker.sock
  40. commands:
  41. - docker version
  42. - cd /workspace
  43. - chmod +x docker/ci/build.sh
  44. - docker/ci/build.sh
  45. # ==================== Docker镜像推送 ====================
  46. - name: push
  47. image: docker:20.10
  48. volumes:
  49. - name: docker-sock
  50. path: /var/run/docker.sock
  51. settings:
  52. registry:
  53. - url: http://git.xayunmei.com:2345
  54. username: bot_dev1
  55. password: ${DOCKER_REGISTRY_PASSWORD}
  56. commands:
  57. - docker login http://git.xayunmei.com:2345 -u bot_dev1 -p $DOCKER_REGISTRY_PASSWORD
  58. - docker images | grep water
  59. - for img in water/*; do docker push $img; done
  60. # ==================== 部署到开发环境 ====================
  61. - name: deploy-dev
  62. image: docker:20.10
  63. volumes:
  64. - name: docker-sock
  65. path: /var/run/docker.sock
  66. commands:
  67. - cd /workspace
  68. - docker-compose up -d
  69. when:
  70. branch: main
  71. status: success
  72. volumes:
  73. - name: docker-sock
  74. host:
  75. path: /var/run/docker.sock
  76. settings:
  77. docker_config:
  78. username: bot_dev1
  79. password: ${DOCKER_REGISTRY_PASSWORD}