.drone.yml 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. kind: pipeline
  2. type: docker
  3. name: default
  4. trigger:
  5. branch:
  6. - master
  7. - develop
  8. steps:
  9. # Maven 构建(Master)
  10. - name: build-master
  11. image: maven:3.8-openjdk-17
  12. volumes:
  13. - name: maven-cache
  14. path: /root/.m2
  15. - name: build-output
  16. path: /app/build
  17. commands:
  18. - mvn clean package -P prod
  19. - mkdir -p /app/build/target
  20. - cp target/test.jar /app/build/target/test.jar
  21. - cp Dockerfile docker-compose.yml /app/build/
  22. when:
  23. branch:
  24. - master
  25. # Maven 构建(Develop)
  26. - name: build-develop
  27. image: maven:3.8-openjdk-17
  28. volumes:
  29. - name: maven-cache
  30. path: /root/.m2
  31. - name: build-output
  32. path: /app/build
  33. commands:
  34. - mvn clean package -P dev
  35. - mkdir -p /app/build/target
  36. - cp target/test-dev.jar /app/build/target/test-dev.jar
  37. - cp Dockerfile docker-compose.yml /app/build/
  38. when:
  39. branch:
  40. - develop
  41. # 部署(Master)
  42. - name: deploy-master
  43. image: appleboy/drone-ssh:1.8.0
  44. settings:
  45. host:
  46. from_secret: ssh_host
  47. username:
  48. from_secret: ssh_user
  49. password:
  50. from_secret: ssh_pwd
  51. port: 22
  52. command_timeout: 10m
  53. script:
  54. - cd /home/app
  55. - docker-compose down
  56. - docker-compose build
  57. - docker-compose up -d
  58. - docker image prune -f
  59. - echo "Master deployment finished"
  60. when:
  61. branch:
  62. - master
  63. # 部署(Develop)
  64. - name: deploy-develop
  65. image: appleboy/drone-ssh:1.8.0
  66. settings:
  67. host:
  68. from_secret: ssh_host
  69. username:
  70. from_secret: ssh_user
  71. password:
  72. from_secret: ssh_pwd
  73. port: 22
  74. command_timeout: 10m
  75. script:
  76. - cd /home/app
  77. - docker-compose down
  78. - docker-compose build
  79. - docker-compose up -d
  80. - docker image prune -f
  81. - echo "Develop deployment finished"
  82. when:
  83. branch:
  84. - develop
  85. volumes:
  86. - name: maven-cache
  87. host:
  88. path: /root/docker/maven/cache
  89. - name: build-output
  90. host:
  91. path: /home/app