.drone-prod.yml 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852
  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
  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
  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: 2m
  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. - push
  226. ---
  227. kind: pipeline
  228. type: docker
  229. name: kxs-system-prod
  230. volumes: # 声明数据卷
  231. - name: mvn_repo # 数据卷名称
  232. # Host Volume, 挂载到宿主机上的卷轴
  233. host:
  234. # 宿主机的绝对路径
  235. path: /home/ABServer/cache/mvn_repo
  236. - name: mvn_config
  237. host:
  238. path: /home/ABServer/config/mvn/
  239. - name: targetDir
  240. host:
  241. path: /kxs-system
  242. clone:
  243. disable: false # 启用代码拉取
  244. steps:
  245. - name: build-project
  246. image: maven:3.9.4-amazoncorretto-17
  247. pull: if-not-exists
  248. depends_on: [clone] # 依赖的步骤
  249. volumes: # 挂载数据卷
  250. - name: mvn_repo # 数据卷名称
  251. path: /usr/share/maven/repo # 容器内目录 绝对路径
  252. - name: targetDir
  253. path: /drone/src/dist/
  254. - name: mvn_config
  255. path: /usr/share/maven/conf/
  256. commands: # 执行命令
  257. - mvn clean package -Dmaven.test.skip=true -P prod
  258. - 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/ # 复制文件
  259. when:
  260. status:
  261. - success # 当前步骤成功时执行
  262. - name: scp-project
  263. image: appleboy/drone-scp
  264. pull: if-not-exists
  265. depends_on: [build-project] # 依赖的步骤
  266. volumes: # 挂载数据卷
  267. - name: targetDir # 数据卷名称
  268. path: /kxs-system # 容器内目录 绝对路径
  269. settings:
  270. host:
  271. from_secret: kxs-user-system-a-host
  272. username:
  273. from_secret: username
  274. password:
  275. from_secret: kxs-user-system-pwd
  276. port: 22
  277. command_timeout: 2m
  278. target: /home/ABServer/deploy-ready/
  279. source:
  280. - echo ====开始拷贝=======
  281. - /kxs-system/*.jar
  282. - /kxs-system/lib
  283. - /kxs-system/config
  284. - echo ====结束拷贝=======
  285. when:
  286. status:
  287. - success # 当前步骤成功时执行
  288. - name: deploy-project
  289. image: appleboy/drone-ssh
  290. pull: if-not-exists
  291. depends_on: [scp-project] # 依赖的步骤
  292. settings:
  293. host:
  294. from_secret: kxs-user-system-a-host
  295. username:
  296. from_secret: username
  297. password:
  298. from_secret: kxs-user-system-pwd
  299. port: 22
  300. command_timeout: 2m
  301. script:
  302. - echo ====开始部署=======
  303. - cd /home/ABServer/
  304. - cp -r /home/ABServer/deploy-ready/kxs-system /home/ABServer/webroot/
  305. - docker stop kxs-system && docker rm kxs-system && docker-compose up -d kxs-system
  306. # - docker restart nodeServer1
  307. - echo ====部署成功=======
  308. - name: scp-project-b
  309. image: appleboy/drone-scp
  310. pull: if-not-exists
  311. depends_on: [build-project] # 依赖的步骤
  312. volumes: # 挂载数据卷
  313. - name: targetDir # 数据卷名称
  314. path: /kxs-system # 容器内目录 绝对路径
  315. settings:
  316. host:
  317. from_secret: kxs-user-system-b-host
  318. username:
  319. from_secret: username
  320. password:
  321. from_secret: kxs-user-system-pwd
  322. port: 22
  323. command_timeout: 2m
  324. target: /home/ABServer/deploy-ready/
  325. source:
  326. - echo ====开始拷贝=======
  327. - /kxs-system/*.jar
  328. - /kxs-system/lib
  329. - /kxs-system/config
  330. - echo ====结束拷贝=======
  331. when:
  332. status:
  333. - success # 当前步骤成功时执行
  334. - name: deploy-project-b
  335. image: appleboy/drone-ssh
  336. pull: if-not-exists
  337. depends_on: [scp-project] # 依赖的步骤
  338. settings:
  339. host:
  340. from_secret: kxs-user-system-b-host
  341. username:
  342. from_secret: username
  343. password:
  344. from_secret: kxs-user-system-pwd
  345. port: 22
  346. command_timeout: 2m
  347. script:
  348. - echo ====开始部署=======
  349. - cd /home/ABServer/
  350. - cp -r /home/ABServer/deploy-ready/kxs-system /home/ABServer/webroot/
  351. - docker stop kxs-system && docker rm kxs-system && docker-compose up -d kxs-system
  352. # - docker restart nodeServer1
  353. - echo ====部署成功=======
  354. trigger:
  355. branch:
  356. include:
  357. - release-system
  358. event:
  359. include:
  360. - pull_request
  361. - push
  362. ---
  363. kind: pipeline
  364. type: docker
  365. name: kxs-user-prod
  366. volumes: # 声明数据卷
  367. - name: mvn_repo # 数据卷名称
  368. # Host Volume, 挂载到宿主机上的卷轴
  369. host:
  370. # 宿主机的绝对路径
  371. path: /home/ABServer/cache/mvn_repo
  372. - name: mvn_config
  373. host:
  374. path: /home/ABServer/config/mvn/
  375. - name: targetDir
  376. host:
  377. path: /kxs-user
  378. clone:
  379. disable: false # 启用代码拉取
  380. steps:
  381. - name: build-project
  382. image: maven:3.9.4-amazoncorretto-17
  383. pull: if-not-exists
  384. depends_on: [clone] # 依赖的步骤
  385. volumes: # 挂载数据卷
  386. - name: mvn_repo # 数据卷名称
  387. path: /usr/share/maven/repo # 容器内目录 绝对路径
  388. - name: targetDir
  389. path: /drone/src/dist/
  390. - name: mvn_config
  391. path: /usr/share/maven/conf/
  392. commands: # 执行命令
  393. - mvn clean package -Dmaven.test.skip=true -P prod
  394. - 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/ # 复制文件
  395. when:
  396. status:
  397. - success # 当前步骤成功时执行
  398. - name: scp-project
  399. image: appleboy/drone-scp
  400. pull: if-not-exists
  401. depends_on: [build-project] # 依赖的步骤
  402. volumes: # 挂载数据卷
  403. - name: targetDir # 数据卷名称
  404. path: /kxs-user # 容器内目录 绝对路径
  405. settings:
  406. host:
  407. from_secret: kxs-user-system-a-host
  408. username:
  409. from_secret: username
  410. password:
  411. from_secret: kxs-user-system-pwd
  412. port: 22
  413. command_timeout: 2m
  414. target: /home/ABServer/deploy-ready/
  415. source:
  416. - echo ====开始拷贝=======
  417. - /kxs-user/*.jar
  418. - /kxs-user/lib
  419. - /kxs-user/config
  420. - echo ====结束拷贝=======
  421. when:
  422. status:
  423. - success # 当前步骤成功时执行
  424. - name: deploy-project
  425. image: appleboy/drone-ssh
  426. pull: if-not-exists
  427. depends_on: [scp-project] # 依赖的步骤
  428. settings:
  429. host:
  430. from_secret: kxs-user-system-a-host
  431. username:
  432. from_secret: username
  433. password:
  434. from_secret: kxs-user-system-pwd
  435. port: 22
  436. command_timeout: 2m
  437. script:
  438. - echo ====开始部署=======
  439. - cd /home/ABServer/
  440. - cp -r /home/ABServer/deploy-ready/kxs-user /home/ABServer/webroot/
  441. - docker stop kxs-user && docker rm kxs-user && docker-compose up -d kxs-user
  442. # - docker restart nodeServer1
  443. - echo ====部署成功=======
  444. - name: scp-project-b
  445. image: appleboy/drone-scp
  446. pull: if-not-exists
  447. depends_on: [build-project] # 依赖的步骤
  448. volumes: # 挂载数据卷
  449. - name: targetDir # 数据卷名称
  450. path: /kxs-user # 容器内目录 绝对路径
  451. settings:
  452. host:
  453. from_secret: kxs-user-system-b-host
  454. username:
  455. from_secret: username
  456. password:
  457. from_secret: kxs-user-system-pwd
  458. port: 22
  459. command_timeout: 2m
  460. target: /home/ABServer/deploy-ready/
  461. source:
  462. - echo ====开始拷贝=======
  463. - /kxs-user/*.jar
  464. - /kxs-user/lib
  465. - /kxs-user/config
  466. - echo ====结束拷贝=======
  467. when:
  468. status:
  469. - success # 当前步骤成功时执行
  470. - name: deploy-project-b
  471. image: appleboy/drone-ssh
  472. pull: if-not-exists
  473. depends_on: [scp-project] # 依赖的步骤
  474. settings:
  475. host:
  476. from_secret: kxs-user-system-b-host
  477. username:
  478. from_secret: username
  479. password:
  480. from_secret: kxs-user-system-pwd
  481. port: 22
  482. command_timeout: 2m
  483. script:
  484. - echo ====开始部署=======
  485. - cd /home/ABServer/
  486. - cp -r /home/ABServer/deploy-ready/kxs-user /home/ABServer/webroot/
  487. - docker stop kxs-user && docker rm kxs-user && docker-compose up -d kxs-user
  488. # - docker restart nodeServer1
  489. - echo ====部署成功=======
  490. trigger:
  491. branch:
  492. include:
  493. - release-user
  494. event:
  495. include:
  496. - pull_request
  497. - push
  498. ---
  499. kind: pipeline
  500. type: docker
  501. name: kxs-product-prod
  502. volumes: # 声明数据卷
  503. - name: mvn_repo # 数据卷名称
  504. # Host Volume, 挂载到宿主机上的卷轴
  505. host:
  506. # 宿主机的绝对路径
  507. path: /home/ABServer/cache/mvn_repo
  508. - name: mvn_config
  509. host:
  510. path: /home/ABServer/config/mvn/
  511. - name: targetDir
  512. host:
  513. path: /kxs-product
  514. clone:
  515. disable: false # 启用代码拉取
  516. steps:
  517. - name: build-project
  518. image: maven:3.9.4-amazoncorretto-17
  519. pull: if-not-exists
  520. depends_on: [clone] # 依赖的步骤
  521. volumes: # 挂载数据卷
  522. - name: mvn_repo # 数据卷名称
  523. path: /usr/share/maven/repo # 容器内目录 绝对路径
  524. - name: targetDir
  525. path: /drone/src/dist/
  526. - name: mvn_config
  527. path: /usr/share/maven/conf/
  528. commands: # 执行命令
  529. - mvn clean package -Dmaven.test.skip=true -P prod
  530. - 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/ # 复制文件
  531. when:
  532. status:
  533. - success # 当前步骤成功时执行
  534. - name: scp-project
  535. image: appleboy/drone-scp
  536. pull: if-not-exists
  537. depends_on: [build-project] # 依赖的步骤
  538. volumes: # 挂载数据卷
  539. - name: targetDir # 数据卷名称
  540. path: /kxs-product # 容器内目录 绝对路径
  541. settings:
  542. host:
  543. from_secret: kxs-product-a-host
  544. username:
  545. from_secret: username
  546. password:
  547. from_secret: kxs-product-pwd
  548. port: 22
  549. command_timeout: 2m
  550. target: /home/ABServer/deploy-ready/
  551. source:
  552. - echo ====开始拷贝=======
  553. - /kxs-product/*.jar
  554. - /kxs-product/lib
  555. - /kxs-product/config
  556. - echo ====结束拷贝=======
  557. when:
  558. status:
  559. - success # 当前步骤成功时执行
  560. - name: deploy-project
  561. image: appleboy/drone-ssh
  562. pull: if-not-exists
  563. depends_on: [scp-project] # 依赖的步骤
  564. settings:
  565. host:
  566. from_secret: kxs-product-a-host
  567. username:
  568. from_secret: username
  569. password:
  570. from_secret: kxs-product-pwd
  571. port: 22
  572. command_timeout: 2m
  573. script:
  574. - echo ====开始部署=======
  575. - cd /home/ABServer/
  576. - cp -r /home/ABServer/deploy-ready/kxs-product /home/ABServer/webroot/
  577. - docker stop kxs-product && docker rm kxs-product && docker-compose up -d kxs-product
  578. # - docker restart nodeServer1
  579. - echo ====部署成功=======
  580. - name: scp-project-b
  581. image: appleboy/drone-scp
  582. pull: if-not-exists
  583. depends_on: [build-project] # 依赖的步骤
  584. volumes: # 挂载数据卷
  585. - name: targetDir # 数据卷名称
  586. path: /kxs-product # 容器内目录 绝对路径
  587. settings:
  588. host:
  589. from_secret: kxs-product-a-host
  590. username:
  591. from_secret: username
  592. password:
  593. from_secret: kxs-product-pwd
  594. port: 22
  595. command_timeout: 2m
  596. target: /home/ABServer/deploy-ready/
  597. source:
  598. - echo ====开始拷贝=======
  599. - /kxs-product/*.jar
  600. - /kxs-product/lib
  601. - /kxs-product/config
  602. - echo ====结束拷贝=======
  603. when:
  604. status:
  605. - success # 当前步骤成功时执行
  606. - name: deploy-project-b
  607. image: appleboy/drone-ssh
  608. pull: if-not-exists
  609. depends_on: [scp-project] # 依赖的步骤
  610. settings:
  611. host:
  612. from_secret: kxs-product-a-host
  613. username:
  614. from_secret: username
  615. password:
  616. from_secret: kxs-product-pwd
  617. port: 22
  618. command_timeout: 2m
  619. script:
  620. - echo ====开始部署=======
  621. - cd /home/ABServer/
  622. - cp -r /home/ABServer/deploy-ready/kxs-product /home/ABServer/webroot/
  623. - docker stop kxs-product && docker rm kxs-product && docker-compose up -d kxs-product
  624. # - docker restart nodeServer1
  625. - echo ====部署成功=======
  626. - name: scp-project-b
  627. image: appleboy/drone-scp
  628. pull: if-not-exists
  629. depends_on: [build-project] # 依赖的步骤
  630. volumes: # 挂载数据卷
  631. - name: targetDir # 数据卷名称
  632. path: /kxs-product # 容器内目录 绝对路径
  633. settings:
  634. host:
  635. from_secret: kxs-product-b-host
  636. username:
  637. from_secret: username
  638. password:
  639. from_secret: kxs-product-pwd
  640. port: 22
  641. command_timeout: 2m
  642. target: /home/ABServer/deploy-ready/
  643. source:
  644. - echo ====开始拷贝=======
  645. - /kxs-product/*.jar
  646. - /kxs-product/lib
  647. - /kxs-product/config
  648. - echo ====结束拷贝=======
  649. when:
  650. status:
  651. - success # 当前步骤成功时执行
  652. - name: deploy-project-b
  653. image: appleboy/drone-ssh
  654. pull: if-not-exists
  655. depends_on: [scp-project] # 依赖的步骤
  656. settings:
  657. host:
  658. from_secret: kxs-product-b-host
  659. username:
  660. from_secret: username
  661. password:
  662. from_secret: kxs-product-pwd
  663. port: 22
  664. command_timeout: 2m
  665. script:
  666. - echo ====开始部署=======
  667. - cd /home/ABServer/
  668. - cp -r /home/ABServer/deploy-ready/kxs-product /home/ABServer/webroot/
  669. - docker stop kxs-product && docker rm kxs-product && docker-compose up -d kxs-product
  670. # - docker restart nodeServer1
  671. - echo ====部署成功=======
  672. trigger:
  673. branch:
  674. include:
  675. - release-product
  676. event:
  677. include:
  678. - pull_request
  679. - push
  680. ---
  681. kind: pipeline
  682. type: docker
  683. name: kxs-store-prod
  684. volumes: # 声明数据卷
  685. - name: mvn_repo # 数据卷名称
  686. # Host Volume, 挂载到宿主机上的卷轴
  687. host:
  688. # 宿主机的绝对路径
  689. path: /home/ABServer/cache/mvn_repo
  690. - name: mvn_config
  691. host:
  692. path: /home/ABServer/config/mvn/
  693. - name: targetDir
  694. host:
  695. path: /kxs-store
  696. clone:
  697. disable: false # 启用代码拉取
  698. steps:
  699. - name: build-project
  700. image: maven:3.9.4-amazoncorretto-17
  701. pull: if-not-exists
  702. depends_on: [clone] # 依赖的步骤
  703. volumes: # 挂载数据卷
  704. - name: mvn_repo # 数据卷名称
  705. path: /usr/share/maven/repo # 容器内目录 绝对路径
  706. - name: targetDir
  707. path: /drone/src/dist/
  708. - name: mvn_config
  709. path: /usr/share/maven/conf/
  710. commands: # 执行命令
  711. - mvn clean package -Dmaven.test.skip=true -P prod
  712. - 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/ # 复制文件
  713. when:
  714. status:
  715. - success # 当前步骤成功时执行
  716. - name: scp-project
  717. image: appleboy/drone-scp
  718. pull: if-not-exists
  719. depends_on: [build-project] # 依赖的步骤
  720. volumes: # 挂载数据卷
  721. - name: targetDir # 数据卷名称
  722. path: /kxs-store # 容器内目录 绝对路径
  723. settings:
  724. host:
  725. from_secret: kxs-store-a-host
  726. username:
  727. from_secret: username
  728. password:
  729. from_secret: kxs-store-pwd
  730. port: 22
  731. command_timeout: 2m
  732. target: /home/ABServer/deploy-ready/
  733. source:
  734. - echo ====开始拷贝=======
  735. - /kxs-store/*.jar
  736. - /kxs-store/lib
  737. - /kxs-store/config
  738. - echo ====结束拷贝=======
  739. when:
  740. status:
  741. - success # 当前步骤成功时执行
  742. - name: deploy-project
  743. image: appleboy/drone-ssh
  744. pull: if-not-exists
  745. depends_on: [scp-project] # 依赖的步骤
  746. settings:
  747. host:
  748. from_secret: kxs-store-a-host
  749. username:
  750. from_secret: username
  751. password:
  752. from_secret: kxs-store-pwd
  753. port: 22
  754. command_timeout: 2m
  755. script:
  756. - echo ====开始部署=======
  757. - cd /home/ABServer/
  758. - cp -r /home/ABServer/deploy-ready/kxs-store /home/ABServer/webroot/
  759. - docker stop kxs-store && docker rm kxs-store && docker-compose up -d kxs-store
  760. # - docker restart nodeServer1
  761. - echo ====部署成功=======
  762. - name: scp-project-b
  763. image: appleboy/drone-scp
  764. pull: if-not-exists
  765. depends_on: [build-project] # 依赖的步骤
  766. volumes: # 挂载数据卷
  767. - name: targetDir # 数据卷名称
  768. path: /kxs-store # 容器内目录 绝对路径
  769. settings:
  770. host:
  771. from_secret: kxs-store-b-host
  772. username:
  773. from_secret: username
  774. password:
  775. from_secret: kxs-store-pwd
  776. port: 22
  777. command_timeout: 2m
  778. target: /home/ABServer/deploy-ready/
  779. source:
  780. - echo ====开始拷贝=======
  781. - /kxs-store/*.jar
  782. - /kxs-store/lib
  783. - /kxs-store/config
  784. - echo ====结束拷贝=======
  785. when:
  786. status:
  787. - success # 当前步骤成功时执行
  788. - name: deploy-project-b
  789. image: appleboy/drone-ssh
  790. pull: if-not-exists
  791. depends_on: [scp-project] # 依赖的步骤
  792. settings:
  793. host:
  794. from_secret: kxs-store-b-host
  795. username:
  796. from_secret: username
  797. password:
  798. from_secret: kxs-store-pwd
  799. port: 22
  800. command_timeout: 2m
  801. script:
  802. - echo ====开始部署=======
  803. - cd /home/ABServer/
  804. - cp -r /home/ABServer/deploy-ready/kxs-store /home/ABServer/webroot/
  805. - docker stop kxs-store && docker rm kxs-store && docker-compose up -d kxs-store
  806. # - docker restart nodeServer1
  807. - echo ====部署成功=======
  808. trigger:
  809. branch:
  810. include:
  811. - release-store
  812. event:
  813. include:
  814. - pull_request
  815. - push