.drone.yml 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. kind: pipeline
  2. type: docker
  3. name: dev
  4. node:
  5. mode: local_test
  6. steps:
  7. - name: yarn-install
  8. image: node:18.16.1
  9. volumes:
  10. - name: modules-cache
  11. path: /drone/src/node_modules # 下载依赖的目录挂载出来,防止重复下载
  12. commands:
  13. - yarn i pnpm
  14. # - pnpm config set registry http://registry.npmjs.org
  15. - pnpm install
  16. - pnpm run build
  17. - name: build
  18. image: docker:20.10.7
  19. depends_on: [yarn-install]
  20. volumes:
  21. - name: docker
  22. path: /var/run/docker.sock
  23. environment:
  24. IMAGE: registry.yingcaibx.com/tl/admin_web:latest
  25. commands:
  26. # 清理 docker 服务中不再使用的镜像、挂载、网络等资源
  27. - docker system prune --force --volumes || true
  28. - docker build -f ./Dockerfile -t $IMAGE ./
  29. - name: run
  30. image: docker/compose
  31. depends_on: [build]
  32. volumes:
  33. - name: docker
  34. path: /var/run/docker.sock
  35. commands:
  36. - docker-compose -f docker-compose-dev.yml up -d
  37. trigger:
  38. branch:
  39. - dev
  40. event:
  41. - push
  42. volumes:
  43. - name: docker
  44. host:
  45. path: /var/run/docker.sock
  46. - name: modules-cache
  47. host:
  48. path: /data/cache/tl/new_web
  49. ---
  50. kind: pipeline
  51. type: docker
  52. name: pre
  53. node:
  54. mode: local_pre
  55. steps:
  56. - name: yarn-install
  57. image: node:18.16.1
  58. volumes:
  59. - name: modules-cache
  60. path: /drone/src/node_modules # 下载依赖的目录挂载出来,防止重复下载
  61. commands:
  62. # - pnpm config set registry http://registry.npmjs.org
  63. - pnpm install
  64. - pnpm run build
  65. - name: build
  66. image: docker:20.10.7
  67. depends_on: [yarn-install]
  68. volumes:
  69. - name: docker
  70. path: /var/run/docker.sock
  71. environment:
  72. IMAGE: registry.yingcaibx.com/tl/admin_web:latest
  73. commands:
  74. # 清理 docker 服务中不再使用的镜像、挂载、网络等资源
  75. - docker system prune --force --volumes || true
  76. - docker build -f ./Dockerfile -t $IMAGE ./
  77. - name: run
  78. image: docker/compose
  79. depends_on: [build]
  80. volumes:
  81. - name: docker
  82. path: /var/run/docker.sock
  83. commands:
  84. - docker-compose -f docker-compose-pre.yml up -d
  85. trigger:
  86. branch:
  87. - pre
  88. event:
  89. - push
  90. volumes:
  91. - name: docker
  92. host:
  93. path: /var/run/docker.sock
  94. - name: modules-cache
  95. host:
  96. path: /data/cache/tl/web_new
  97. ---
  98. kind: pipeline
  99. type: docker
  100. name: release
  101. node:
  102. mode: local_test
  103. steps:
  104. # - name: yarn-install
  105. # depends_on: [clone]
  106. # image: node:18.16.1
  107. # volumes:
  108. # - name: modules-cache
  109. # path: /drone/src/node_modules # 下载依赖的目录挂载出来,防止重复下载
  110. # commands:
  111. # - yarn run build
  112. # - yarn install && yarn run build
  113. - name: push
  114. image: docker:20.10.7
  115. # depends_on: [yarn-install]
  116. volumes:
  117. - name: docker
  118. path: /var/run/docker.sock
  119. environment:
  120. IMAGE: registry.yingcaibx.com/tl/admin_web
  121. commands:
  122. - docker login -u yxt -p qwe123QWE registry.yingcaibx.com
  123. - echo $DRONE_TAG
  124. - docker build -f ./Dockerfile -t $IMAGE:$DRONE_TAG ./
  125. - docker push $IMAGE:$DRONE_TAG
  126. - docker rmi $IMAGE:$DRONE_TAG
  127. trigger:
  128. event:
  129. - tag
  130. volumes:
  131. - name: docker
  132. host:
  133. path: /var/run/docker.sock
  134. - name: modules-cache
  135. host:
  136. path: /data/cache/tl/web