.drone.yml 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840
  1. kind: pipeline
  2. type: docker
  3. name: kxs-gateway-prod
  4. volumes: # 声明数据卷
  5. - name: mvn_repo # 数据卷名称
  6. # Host Volume, 挂载到宿主机上的卷轴
  7. host:
  8. # 宿主机的绝对路径
  9. path: /home/ABServer/cache/mvn_repo
  10. - name: mvn_config
  11. host:
  12. path: /home/ABServer/config/mvn/
  13. - name: targetDir
  14. host:
  15. path: /kxs-gateway
  16. clone:
  17. disable: false # 启用代码拉取
  18. steps:
  19. - name: build-project
  20. image: maven:3.9.4-amazoncorretto-17
  21. pull: if-not-exists
  22. depends_on: [clone] # 依赖的步骤
  23. volumes: # 挂载数据卷
  24. - name: mvn_repo # 数据卷名称
  25. path: /usr/share/maven/repo # 容器内目录 绝对路径
  26. - name: targetDir
  27. path: /drone/src/dist/
  28. - name: mvn_config
  29. path: /usr/share/maven/conf/
  30. commands: # 执行命令
  31. - mvn clean package -Dmaven.test.skip=true -P prod
  32. - cp /drone/src/kxs-gateway/target/*.jar /drone/src/dist/ && cp -r /drone/src/kxs-gateway/target/lib /drone/src/dist/ && cp -r /drone/src/kxs-gateway/target/config /drone/src/dist/ # 复制文件
  33. when:
  34. status:
  35. - success # 当前步骤成功时执行
  36. - name: scp-project
  37. image: appleboy/drone-scp
  38. pull: if-not-exists
  39. depends_on: [build-project] # 依赖的步骤
  40. volumes: # 挂载数据卷
  41. - name: targetDir # 数据卷名称
  42. path: /kxs-gateway # 容器内目录 绝对路径
  43. settings:
  44. host:
  45. from_secret: kxs-gateway-a-host
  46. username:
  47. from_secret: username
  48. password:
  49. from_secret: kxs-gateway-pwd
  50. port: 22
  51. command_timeout: 2m
  52. target: /home/ABServer/deploy-ready/
  53. source:
  54. - echo ====开始拷贝=======
  55. - /kxs-gateway/*.jar
  56. - /kxs-gateway/lib
  57. - /kxs-gateway/config
  58. - echo ====结束拷贝=======
  59. when:
  60. status:
  61. - success # 当前步骤成功时执行
  62. - name: deploy-project
  63. image: appleboy/drone-ssh
  64. pull: if-not-exists
  65. depends_on: [scp-project] # 依赖的步骤
  66. settings:
  67. host:
  68. from_secret: kxs-gateway-a-host
  69. username:
  70. from_secret: username
  71. password:
  72. from_secret: kxs-gateway-pwd
  73. port: 22
  74. command_timeout: 2m
  75. script:
  76. - echo ====开始部署=======
  77. - cd /home/ABServer/
  78. - cp -r /home/ABServer/deploy-ready/kxs-gateway /home/ABServer/webroot/
  79. - docker stop kxs-gateway && docker rm kxs-gateway && docker-compose up -d kxs-gateway
  80. # - docker restart nodeServer1
  81. - echo ====部署成功=======
  82. - name: scp-project-b
  83. image: appleboy/drone-scp
  84. pull: if-not-exists
  85. depends_on: [build-project] # 依赖的步骤
  86. volumes: # 挂载数据卷
  87. - name: targetDir # 数据卷名称
  88. path: /kxs-gateway # 容器内目录 绝对路径
  89. settings:
  90. host:
  91. from_secret: kxs-gateway-b-host
  92. username:
  93. from_secret: username
  94. password:
  95. from_secret: kxs-gateway-pwd
  96. port: 22
  97. command_timeout: 2m
  98. target: /home/ABServer/deploy-ready/
  99. source:
  100. - echo ====开始拷贝=======
  101. - /kxs-gateway/*.jar
  102. - /kxs-gateway/lib
  103. - /kxs-gateway/config
  104. - echo ====结束拷贝=======
  105. when:
  106. status:
  107. - success # 当前步骤成功时执行
  108. - name: deploy-project-b
  109. image: appleboy/drone-ssh
  110. pull: if-not-exists
  111. depends_on: [scp-project] # 依赖的步骤
  112. settings:
  113. host:
  114. from_secret: kxs-gateway-b-host
  115. username:
  116. from_secret: username
  117. password:
  118. from_secret: kxs-gateway-pwd
  119. port: 22
  120. command_timeout: 2m
  121. script:
  122. - echo ====开始部署=======
  123. - cd /home/ABServer/
  124. - cp -r /home/ABServer/deploy-ready/kxs-gateway /home/ABServer/webroot/
  125. - docker stop kxs-gateway && docker rm kxs-gateway && docker-compose up -d kxs-gateway
  126. # - docker restart nodeServer1
  127. - echo ====部署成功=======
  128. trigger:
  129. branch:
  130. include:
  131. - release-gateway
  132. event:
  133. include:
  134. - pull_request
  135. - push
  136. ---
  137. kind: pipeline
  138. type: docker
  139. name: kxs-transfer-prod
  140. volumes: # 声明数据卷
  141. - name: mvn_repo # 数据卷名称
  142. # Host Volume, 挂载到宿主机上的卷轴
  143. host:
  144. # 宿主机的绝对路径
  145. path: /home/ABServer/cache/mvn_repo
  146. - name: mvn_config
  147. host:
  148. path: /home/ABServer/config/mvn/
  149. - name: targetDir
  150. host:
  151. path: /kxs-transfer
  152. clone:
  153. disable: false # 启用代码拉取
  154. steps:
  155. - name: build-project
  156. image: maven:3.9.4-amazoncorretto-17
  157. pull: if-not-exists
  158. depends_on: [clone] # 依赖的步骤
  159. volumes: # 挂载数据卷
  160. - name: mvn_repo # 数据卷名称
  161. path: /usr/share/maven/repo # 容器内目录 绝对路径
  162. - name: targetDir
  163. path: /drone/src/dist/
  164. - name: mvn_config
  165. path: /usr/share/maven/conf/
  166. commands: # 执行命令
  167. - mvn clean package -Dmaven.test.skip=true -P prod
  168. - cp /drone/src/kxs-transfer/target/*.jar /drone/src/dist/ && cp -r /drone/src/kxs-transfer/target/lib /drone/src/dist/ && cp -r /drone/src/kxs-transfer/target/config /drone/src/dist/ # 复制文件
  169. when:
  170. status:
  171. - success # 当前步骤成功时执行
  172. - name: scp-project
  173. image: appleboy/drone-scp
  174. pull: if-not-exists
  175. depends_on: [build-project] # 依赖的步骤
  176. volumes: # 挂载数据卷
  177. - name: targetDir # 数据卷名称
  178. path: /kxs-transfer # 容器内目录 绝对路径
  179. settings:
  180. host:
  181. from_secret: kxs-transfer-a-host
  182. username:
  183. from_secret: username
  184. password:
  185. from_secret: kxs-transfer-pwd
  186. port: 22
  187. command_timeout: 2m
  188. target: /home/ABServer/deploy-ready/
  189. source:
  190. - echo ====开始拷贝=======
  191. - /kxs-transfer/*.jar
  192. - /kxs-transfer/lib
  193. - /kxs-transfer/config
  194. - echo ====结束拷贝=======
  195. when:
  196. status:
  197. - success # 当前步骤成功时执行
  198. - name: deploy-project
  199. image: appleboy/drone-ssh
  200. pull: if-not-exists
  201. depends_on: [ scp-project ] # 依赖的步骤
  202. settings:
  203. host:
  204. from_secret: kxs-transfer-a-host
  205. username:
  206. from_secret: username
  207. password:
  208. from_secret: kxs-transfer-pwd
  209. port: 22
  210. command_timeout: 5m
  211. script:
  212. - echo ====开始部署=======
  213. - cd /home/ABServer/
  214. - cp -r /home/ABServer/deploy-ready/kxs-transfer /home/ABServer/webroot/
  215. - docker stop kxs-transfer && docker rm kxs-transfer && docker-compose up -d kxs-transfer
  216. # - docker restart nodeServer1
  217. - echo ====部署成功=======
  218. trigger:
  219. branch:
  220. include:
  221. - release-transfer
  222. event:
  223. include:
  224. - pull_request
  225. ---
  226. kind: pipeline
  227. type: docker
  228. name: kxs-system-prod
  229. volumes: # 声明数据卷
  230. - name: mvn_repo # 数据卷名称
  231. # Host Volume, 挂载到宿主机上的卷轴
  232. host:
  233. # 宿主机的绝对路径
  234. path: /home/ABServer/cache/mvn_repo
  235. - name: mvn_config
  236. host:
  237. path: /home/ABServer/config/mvn/
  238. - name: targetDir
  239. host:
  240. path: /kxs-system
  241. clone:
  242. disable: false # 启用代码拉取
  243. steps:
  244. - name: build-project
  245. image: maven:3.9.4-amazoncorretto-17
  246. pull: if-not-exists
  247. depends_on: [clone] # 依赖的步骤
  248. volumes: # 挂载数据卷
  249. - name: mvn_repo # 数据卷名称
  250. path: /usr/share/maven/repo # 容器内目录 绝对路径
  251. - name: targetDir
  252. path: /drone/src/dist/
  253. - name: mvn_config
  254. path: /usr/share/maven/conf/
  255. commands: # 执行命令
  256. - mvn clean package -Dmaven.test.skip=true -P prod
  257. - cp /drone/src/kxs-system/kxs-system-biz/target/*.jar /drone/src/dist/ && cp -r /drone/src/kxs-system/kxs-system-biz/target/lib /drone/src/dist/ && cp -r /drone/src/kxs-system/kxs-system-biz/target/config /drone/src/dist/ # 复制文件
  258. when:
  259. status:
  260. - success # 当前步骤成功时执行
  261. - name: scp-project
  262. image: appleboy/drone-scp
  263. pull: if-not-exists
  264. depends_on: [build-project] # 依赖的步骤
  265. volumes: # 挂载数据卷
  266. - name: targetDir # 数据卷名称
  267. path: /kxs-system # 容器内目录 绝对路径
  268. settings:
  269. host:
  270. from_secret: kxs-user-system-a-host
  271. username:
  272. from_secret: username
  273. password:
  274. from_secret: kxs-user-system-pwd
  275. port: 22
  276. command_timeout: 2m
  277. target: /home/ABServer/deploy-ready/
  278. source:
  279. - echo ====开始拷贝=======
  280. - /kxs-system/*.jar
  281. - /kxs-system/lib
  282. - /kxs-system/config
  283. - echo ====结束拷贝=======
  284. when:
  285. status:
  286. - success # 当前步骤成功时执行
  287. - name: deploy-project
  288. image: appleboy/drone-ssh
  289. pull: if-not-exists
  290. depends_on: [scp-project] # 依赖的步骤
  291. settings:
  292. host:
  293. from_secret: kxs-user-system-a-host
  294. username:
  295. from_secret: username
  296. password:
  297. from_secret: kxs-user-system-pwd
  298. port: 22
  299. command_timeout: 2m
  300. script:
  301. - echo ====开始部署=======
  302. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-system-biz&ip=172.27.251.56&port=8060&weight=0'
  303. - sleep 25s
  304. - cd /home/ABServer/
  305. - cp -r /home/ABServer/deploy-ready/kxs-system /home/ABServer/webroot/
  306. - docker stop kxs-system && docker rm kxs-system && docker-compose up -d kxs-system
  307. # - docker restart nodeServer1
  308. - echo ====部署成功=======
  309. - name: scp-project-b
  310. image: appleboy/drone-scp
  311. pull: if-not-exists
  312. depends_on: [build-project] # 依赖的步骤
  313. volumes: # 挂载数据卷
  314. - name: targetDir # 数据卷名称
  315. path: /kxs-system # 容器内目录 绝对路径
  316. settings:
  317. host:
  318. from_secret: kxs-user-system-b-host
  319. username:
  320. from_secret: username
  321. password:
  322. from_secret: kxs-user-system-pwd
  323. port: 22
  324. command_timeout: 2m
  325. target: /home/ABServer/deploy-ready/
  326. source:
  327. - echo ====开始拷贝=======
  328. - /kxs-system/*.jar
  329. - /kxs-system/lib
  330. - /kxs-system/config
  331. - echo ====结束拷贝=======
  332. when:
  333. status:
  334. - success # 当前步骤成功时执行
  335. - name: deploy-project-b
  336. image: appleboy/drone-ssh
  337. pull: if-not-exists
  338. depends_on: [scp-project] # 依赖的步骤
  339. settings:
  340. host:
  341. from_secret: kxs-user-system-b-host
  342. username:
  343. from_secret: username
  344. password:
  345. from_secret: kxs-user-system-pwd
  346. port: 22
  347. command_timeout: 5m
  348. script:
  349. - echo ====开始部署=======
  350. - sleep 60s
  351. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-system-biz&ip=172.27.251.56&port=8060&weight=1'
  352. - sleep 1s
  353. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-system-biz&ip=172.26.230.195&port=8060&weight=0'
  354. - sleep 25s
  355. - cd /home/ABServer/
  356. - cp -r /home/ABServer/deploy-ready/kxs-system /home/ABServer/webroot/
  357. - docker stop kxs-system && docker rm kxs-system && docker-compose up -d kxs-system
  358. # - docker restart nodeServer1
  359. - sleep 60s
  360. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-system-biz&ip=172.26.230.195&port=8060&weight=1'
  361. - echo ====部署成功=======
  362. trigger:
  363. branch:
  364. include:
  365. - release-system
  366. event:
  367. include:
  368. - pull_request
  369. ---
  370. kind: pipeline
  371. type: docker
  372. name: kxs-user-prod
  373. volumes: # 声明数据卷
  374. - name: mvn_repo # 数据卷名称
  375. # Host Volume, 挂载到宿主机上的卷轴
  376. host:
  377. # 宿主机的绝对路径
  378. path: /home/ABServer/cache/mvn_repo
  379. - name: mvn_config
  380. host:
  381. path: /home/ABServer/config/mvn/
  382. - name: targetDir
  383. host:
  384. path: /kxs-user
  385. clone:
  386. disable: false # 启用代码拉取
  387. steps:
  388. - name: build-project
  389. image: maven:3.9.4-amazoncorretto-17
  390. pull: if-not-exists
  391. depends_on: [clone] # 依赖的步骤
  392. volumes: # 挂载数据卷
  393. - name: mvn_repo # 数据卷名称
  394. path: /usr/share/maven/repo # 容器内目录 绝对路径
  395. - name: targetDir
  396. path: /drone/src/dist/
  397. - name: mvn_config
  398. path: /usr/share/maven/conf/
  399. commands: # 执行命令
  400. - mvn clean package -Dmaven.test.skip=true -P prod
  401. - cp /drone/src/kxs-user/kxs-user-biz/target/*.jar /drone/src/dist/ && cp -r /drone/src/kxs-user/kxs-user-biz/target/lib /drone/src/dist/ && cp -r /drone/src/kxs-user/kxs-user-biz/target/config /drone/src/dist/ # 复制文件
  402. when:
  403. status:
  404. - success # 当前步骤成功时执行
  405. - name: scp-project
  406. image: appleboy/drone-scp
  407. pull: if-not-exists
  408. depends_on: [build-project] # 依赖的步骤
  409. volumes: # 挂载数据卷
  410. - name: targetDir # 数据卷名称
  411. path: /kxs-user # 容器内目录 绝对路径
  412. settings:
  413. host:
  414. from_secret: kxs-user-system-a-host
  415. username:
  416. from_secret: username
  417. password:
  418. from_secret: kxs-user-system-pwd
  419. port: 22
  420. command_timeout: 2m
  421. target: /home/ABServer/deploy-ready/
  422. source:
  423. - echo ====开始拷贝=======
  424. - /kxs-user/*.jar
  425. - /kxs-user/lib
  426. - /kxs-user/config
  427. - echo ====结束拷贝=======
  428. when:
  429. status:
  430. - success # 当前步骤成功时执行
  431. - name: deploy-project
  432. image: appleboy/drone-ssh
  433. pull: if-not-exists
  434. depends_on: [scp-project] # 依赖的步骤
  435. settings:
  436. host:
  437. from_secret: kxs-user-system-a-host
  438. username:
  439. from_secret: username
  440. password:
  441. from_secret: kxs-user-system-pwd
  442. port: 22
  443. command_timeout: 5m
  444. script:
  445. - echo ====开始部署=======
  446. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-user-biz&ip=172.27.251.56&port=8888&weight=0'
  447. - sleep 25s
  448. - cd /home/ABServer/
  449. - cp -r /home/ABServer/deploy-ready/kxs-user /home/ABServer/webroot/
  450. - docker stop kxs-user && docker rm kxs-user && docker-compose up -d kxs-user
  451. # - docker restart nodeServer1
  452. - echo ====部署成功=======
  453. - name: scp-project-b
  454. image: appleboy/drone-scp
  455. pull: if-not-exists
  456. depends_on: [build-project] # 依赖的步骤
  457. volumes: # 挂载数据卷
  458. - name: targetDir # 数据卷名称
  459. path: /kxs-user # 容器内目录 绝对路径
  460. settings:
  461. host:
  462. from_secret: kxs-user-system-b-host
  463. username:
  464. from_secret: username
  465. password:
  466. from_secret: kxs-user-system-pwd
  467. port: 22
  468. command_timeout: 2m
  469. target: /home/ABServer/deploy-ready/
  470. source:
  471. - echo ====开始拷贝=======
  472. - /kxs-user/*.jar
  473. - /kxs-user/lib
  474. - /kxs-user/config
  475. - echo ====结束拷贝=======
  476. when:
  477. status:
  478. - success # 当前步骤成功时执行
  479. - name: deploy-project-b
  480. image: appleboy/drone-ssh
  481. pull: if-not-exists
  482. depends_on: [scp-project] # 依赖的步骤
  483. settings:
  484. host:
  485. from_secret: kxs-user-system-b-host
  486. username:
  487. from_secret: username
  488. password:
  489. from_secret: kxs-user-system-pwd
  490. port: 22
  491. command_timeout: 5m
  492. script:
  493. - echo ====开始部署=======
  494. - sleep 60s
  495. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-user-biz&ip=172.27.251.56&port=8888&weight=1'
  496. - sleep 1s
  497. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-user-biz&ip=172.26.230.195&port=8888&weight=0'
  498. - sleep 25s
  499. - cd /home/ABServer/
  500. - cp -r /home/ABServer/deploy-ready/kxs-user /home/ABServer/webroot/
  501. - docker stop kxs-user && docker rm kxs-user && docker-compose up -d kxs-user
  502. - sleep 60s
  503. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-user-biz&ip=172.26.230.195&port=8888&weight=1'
  504. # - docker restart nodeServer1
  505. - echo ====部署成功=======
  506. trigger:
  507. branch:
  508. include:
  509. - release-user
  510. event:
  511. include:
  512. - pull_request
  513. ---
  514. kind: pipeline
  515. type: docker
  516. name: kxs-product-prod
  517. volumes: # 声明数据卷
  518. - name: mvn_repo # 数据卷名称
  519. # Host Volume, 挂载到宿主机上的卷轴
  520. host:
  521. # 宿主机的绝对路径
  522. path: /home/ABServer/cache/mvn_repo
  523. - name: mvn_config
  524. host:
  525. path: /home/ABServer/config/mvn/
  526. - name: targetDir
  527. host:
  528. path: /kxs-product
  529. clone:
  530. disable: false # 启用代码拉取
  531. steps:
  532. - name: build-project
  533. image: maven:3.9.4-amazoncorretto-17
  534. pull: if-not-exists
  535. depends_on: [clone] # 依赖的步骤
  536. volumes: # 挂载数据卷
  537. - name: mvn_repo # 数据卷名称
  538. path: /usr/share/maven/repo # 容器内目录 绝对路径
  539. - name: targetDir
  540. path: /drone/src/dist/
  541. - name: mvn_config
  542. path: /usr/share/maven/conf/
  543. commands: # 执行命令
  544. - mvn clean package -Dmaven.test.skip=true -P prod
  545. - cp /drone/src/kxs-product/kxs-product-biz/target/*.jar /drone/src/dist/ && cp -r /drone/src/kxs-product/kxs-product-biz/target/lib /drone/src/dist/ && cp -r /drone/src/kxs-product/kxs-product-biz/target/config /drone/src/dist/ # 复制文件
  546. when:
  547. status:
  548. - success # 当前步骤成功时执行
  549. - name: scp-project
  550. image: appleboy/drone-scp
  551. pull: if-not-exists
  552. depends_on: [build-project] # 依赖的步骤
  553. volumes: # 挂载数据卷
  554. - name: targetDir # 数据卷名称
  555. path: /kxs-product # 容器内目录 绝对路径
  556. settings:
  557. host:
  558. from_secret: kxs-user-system-a-host
  559. username:
  560. from_secret: username
  561. password:
  562. from_secret: kxs-user-system-pwd
  563. port: 22
  564. command_timeout: 2m
  565. target: /home/ABServer/deploy-ready/
  566. source:
  567. - echo ====开始拷贝=======
  568. - /kxs-product/*.jar
  569. - /kxs-product/lib
  570. - /kxs-product/config
  571. - echo ====结束拷贝=======
  572. when:
  573. status:
  574. - success # 当前步骤成功时执行
  575. - name: deploy-project
  576. image: appleboy/drone-ssh
  577. pull: if-not-exists
  578. depends_on: [scp-project] # 依赖的步骤
  579. settings:
  580. host:
  581. from_secret: kxs-user-system-a-host
  582. username:
  583. from_secret: username
  584. password:
  585. from_secret: kxs-user-system-pwd
  586. port: 22
  587. command_timeout: 5m
  588. script:
  589. - echo ====开始部署=======
  590. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-product-biz&ip=172.27.251.56&port=8050&weight=0'
  591. - sleep 25s
  592. - cd /home/ABServer/
  593. - cp -r /home/ABServer/deploy-ready/kxs-product /home/ABServer/webroot/
  594. - docker stop kxs-product && docker rm kxs-product && docker-compose up -d kxs-product
  595. # - docker restart nodeServer1
  596. - echo ====部署成功=======
  597. - name: scp-project-b
  598. image: appleboy/drone-scp
  599. pull: if-not-exists
  600. depends_on: [build-project] # 依赖的步骤
  601. volumes: # 挂载数据卷
  602. - name: targetDir # 数据卷名称
  603. path: /kxs-product # 容器内目录 绝对路径
  604. settings:
  605. host:
  606. from_secret: kxs-user-system-b-host
  607. username:
  608. from_secret: username
  609. password:
  610. from_secret: kxs-user-system-pwd
  611. port: 22
  612. command_timeout: 5m
  613. target: /home/ABServer/deploy-ready/
  614. source:
  615. - echo ====开始拷贝=======
  616. - /kxs-product/*.jar
  617. - /kxs-product/lib
  618. - /kxs-product/config
  619. - echo ====结束拷贝=======
  620. when:
  621. status:
  622. - success # 当前步骤成功时执行
  623. - name: deploy-project-b
  624. image: appleboy/drone-ssh
  625. pull: if-not-exists
  626. depends_on: [scp-project] # 依赖的步骤
  627. settings:
  628. host:
  629. from_secret: kxs-user-system-b-host
  630. username:
  631. from_secret: username
  632. password:
  633. from_secret: kxs-user-system-pwd
  634. port: 22
  635. command_timeout: 5m
  636. script:
  637. - echo ====开始部署=======
  638. - sleep 60s
  639. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-product-biz&ip=172.27.251.56&port=8050&weight=1'
  640. - sleep 1s
  641. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-product-biz&ip=172.26.230.195&port=8050&weight=0'
  642. - sleep 25s
  643. - cd /home/ABServer/
  644. - cp -r /home/ABServer/deploy-ready/kxs-product /home/ABServer/webroot/
  645. - docker stop kxs-product && docker rm kxs-product && docker-compose up -d kxs-product
  646. - sleep 60s
  647. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-product-biz&ip=172.26.230.195&port=8050&weight=1'
  648. # - docker restart nodeServer1
  649. - echo ====部署成功=======
  650. trigger:
  651. branch:
  652. include:
  653. - release-product
  654. event:
  655. include:
  656. - pull_request
  657. - push
  658. ---
  659. kind: pipeline
  660. type: docker
  661. name: kxs-store-prod
  662. volumes: # 声明数据卷
  663. - name: mvn_repo # 数据卷名称
  664. # Host Volume, 挂载到宿主机上的卷轴
  665. host:
  666. # 宿主机的绝对路径
  667. path: /home/ABServer/cache/mvn_repo
  668. - name: mvn_config
  669. host:
  670. path: /home/ABServer/config/mvn/
  671. - name: targetDir
  672. host:
  673. path: /kxs-store
  674. clone:
  675. disable: false # 启用代码拉取
  676. steps:
  677. - name: build-project
  678. image: maven:3.9.4-amazoncorretto-17
  679. pull: if-not-exists
  680. depends_on: [clone] # 依赖的步骤
  681. volumes: # 挂载数据卷
  682. - name: mvn_repo # 数据卷名称
  683. path: /usr/share/maven/repo # 容器内目录 绝对路径
  684. - name: targetDir
  685. path: /drone/src/dist/
  686. - name: mvn_config
  687. path: /usr/share/maven/conf/
  688. commands: # 执行命令
  689. - mvn clean package -Dmaven.test.skip=true -P prod
  690. - cp /drone/src/kxs-store/kxs-store-biz/target/*.jar /drone/src/dist/ && cp -r /drone/src/kxs-store/kxs-store-biz/target/lib /drone/src/dist/ && cp -r /drone/src/kxs-store/kxs-store-biz/target/config /drone/src/dist/ # 复制文件
  691. when:
  692. status:
  693. - success # 当前步骤成功时执行
  694. - name: scp-project
  695. image: appleboy/drone-scp
  696. pull: if-not-exists
  697. depends_on: [build-project] # 依赖的步骤
  698. volumes: # 挂载数据卷
  699. - name: targetDir # 数据卷名称
  700. path: /kxs-store # 容器内目录 绝对路径
  701. settings:
  702. host:
  703. from_secret: kxs-user-system-b-host
  704. username:
  705. from_secret: username
  706. password:
  707. from_secret: kxs-user-system-pwd
  708. port: 22
  709. command_timeout: 5m
  710. target: /home/ABServer/deploy-ready/
  711. source:
  712. - echo ====开始拷贝=======
  713. - /kxs-store/*.jar
  714. - /kxs-store/lib
  715. - /kxs-store/config
  716. - echo ====结束拷贝=======
  717. when:
  718. status:
  719. - success # 当前步骤成功时执行
  720. - name: deploy-project
  721. image: appleboy/drone-ssh
  722. pull: if-not-exists
  723. depends_on: [scp-project] # 依赖的步骤
  724. settings:
  725. host:
  726. from_secret: kxs-user-system-b-host
  727. username:
  728. from_secret: username
  729. password:
  730. from_secret: kxs-user-system-pwd
  731. port: 22
  732. command_timeout: 5m
  733. script:
  734. - echo ====开始部署=======
  735. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-store-biz&ip=172.27.251.56&port=8070&weight=0'
  736. - sleep 25s
  737. - cd /home/ABServer/
  738. - cp -r /home/ABServer/deploy-ready/kxs-store /home/ABServer/webroot/
  739. - docker stop kxs-store && docker rm kxs-store && docker-compose up -d kxs-store
  740. # - docker restart nodeServer1
  741. - echo ====部署成功=======
  742. - name: scp-project-b
  743. image: appleboy/drone-scp
  744. pull: if-not-exists
  745. depends_on: [build-project] # 依赖的步骤
  746. volumes: # 挂载数据卷
  747. - name: targetDir # 数据卷名称
  748. path: /kxs-store # 容器内目录 绝对路径
  749. settings:
  750. host:
  751. from_secret: kxs-user-system-b-host
  752. username:
  753. from_secret: username
  754. password:
  755. from_secret: kxs-user-system-pwd
  756. port: 22
  757. command_timeout: 5m
  758. target: /home/ABServer/deploy-ready/
  759. source:
  760. - echo ====开始拷贝=======
  761. - /kxs-store/*.jar
  762. - /kxs-store/lib
  763. - /kxs-store/config
  764. - echo ====结束拷贝=======
  765. when:
  766. status:
  767. - success # 当前步骤成功时执行
  768. - name: deploy-project-b
  769. image: appleboy/drone-ssh
  770. pull: if-not-exists
  771. depends_on: [scp-project] # 依赖的步骤
  772. settings:
  773. host:
  774. from_secret: kxs-user-system-b-host
  775. username:
  776. from_secret: username
  777. password:
  778. from_secret: kxs-user-system-pwd
  779. port: 22
  780. command_timeout: 5m
  781. script:
  782. - echo ====开始部署=======
  783. - sleep 60s
  784. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-store-biz&ip=172.27.251.56&port=8070&weight=1'
  785. - sleep 1s
  786. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-store-biz&ip=172.26.230.195&port=8070&weight=0'
  787. - sleep 25s
  788. - cd /home/ABServer/
  789. - cp -r /home/ABServer/deploy-ready/kxs-store /home/ABServer/webroot/
  790. - docker stop kxs-store && docker rm kxs-store && docker-compose up -d kxs-store
  791. - sleep 60s
  792. - curl -X PUT 'http://mse-78d0edb13-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance?serviceName=kxs-store-biz&ip=172.26.230.195&port=8070&weight=1'
  793. # - docker restart nodeServer1
  794. - echo ====部署成功=======
  795. trigger:
  796. branch:
  797. include:
  798. - release-store
  799. event:
  800. include:
  801. - pull_request
  802. - push