.drone.yml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. kind: pipeline
  2. name: default
  3. # type: ssh # 定义流水线类型,还有kubernetes、exec、docker等类型
  4. #server:
  5. # host: 127.0.0.1
  6. # user: root
  7. # password:
  8. # from_secret: passwdlocal # 可以在你的drone web界面设置里进行设置,这儿直接引用
  9. # 用的是树莓派所以架构要用arm64 正常 platform 这项就不用写了
  10. #platform:
  11. # os: linux
  12. # arch: amd64
  13. # 指定运行 runner,不需要
  14. # node:
  15. # name: pi-runner
  16. clone:
  17. depth: 1 # 定义git克隆的深度,这里只需要完整的克隆项目就行,之前的提交并不需要去克隆
  18. disable: false
  19. # step为执行的步骤,drone的步骤每一步都是使用临时docker的容器来实现的,每一步docker容器执行完会被自动销毁,所以本配置中的第一个用的是docker的ssh镜像,可以用来执行指定容器的命令。settings中配置了ssh要登录的host、username等,由于我们把username的信息放入drone来配置,这样保证了这些敏感字段的安全
  20. #- name: run-python
  21. # image: appleboy/drone-ssh
  22. # settings:
  23. # host: 192.168.1.246
  24. # username:
  25. # from_secret: pi_user
  26. # password:
  27. # from_secret: pi_password
  28. # port: 22
  29. # command_timeout: 5m
  30. # script:
  31. # - echo success
  32. # - cd /home/pi/python/dnspod
  33. # - git pull
  34. # - bash run.sh
  35. steps:
  36. - name: 编译
  37. image: maven:3-jdk-11
  38. pull: if-not-exists
  39. volumes:
  40. - name: mvnCache
  41. path: /root/.m2
  42. commands:
  43. - mvn compile -DskipTests=true -Dmaven.javadoc.skip=true -B -V
  44. - echo 'FINISHED!'
  45. - name: 钉钉通知
  46. image: guoxudongdocker/drone-dingtalk
  47. settings:
  48. token: 178f267b9b16b168e0a0afb223b3d41f3a58e62180ab5288aa576db02965dd72
  49. type: markdown
  50. #5f6c32b36e771df227b1ccb8898325158e12d851ae61982d1ec225a1aa58e251
  51. - name: dingtalk
  52. image: lddsb/drone-dingtalk-message
  53. settings:
  54. token: 178f267b9b16b168e0a0afb223b3d41f3a58e62180ab5288aa576db02965dd72
  55. type: markdown
  56. success_color: 008000
  57. failure_color: FF0000
  58. - name: wechat notify
  59. image: lizheming/drone-wechat
  60. settings:
  61. corpid: ww01cb42e24566126d
  62. corp_secret: un_CtWqThxc11MKWPK5SNWsFEgU9MkI7MIjvyvV9KjA
  63. agent_id: 1000002
  64. to_tag: ${DRONE_REPO_NAME}
  65. msg_url: ${DRONE_BUILD_LINK}
  66. safe: 1
  67. btn_txt: more
  68. title: ${DRONE_REPO_NAME}
  69. message: >
  70. {%if success %}
  71. build {{build.number}} succeeded. Good job.
  72. {% else %}
  73. build {{build.number}} failed. Fix me please.
  74. {% endif %}
  75. - name: wechat
  76. image: clem109/drone-wechat
  77. settings:
  78. corpid: ww01cb42e24566126d
  79. corp_secret: un_CtWqThxc11MKWPK5SNWsFEgU9MkI7MIjvyvV9KjA
  80. agent_id: 1000002
  81. title: ${DRONE_REPO_NAME}
  82. description: "Build Number: ${DRONE_BUILD_NUMBER} failed. ${DRONE_COMMIT_AUTHOR} please fix. Check the results here: ${DRONE_BUILD_LINK} "
  83. msg_url: ${DRONE_BUILD_LINK}
  84. btn_txt: bt
  85. volumes:
  86. - name: mvnCache
  87. host:
  88. path: /tmp/cache/.m2
  89. trigger:
  90. branch:
  91. - master
  92. event:
  93. - push