You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

.drone.yml 2.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. kind: pipeline
  2. name: default
  3. steps:
  4. - name: restore cache
  5. image: drillster/drone-volume-cache
  6. settings:
  7. restore: true
  8. mount:
  9. - ./node_modules
  10. volumes:
  11. - name: cache
  12. path: /cache
  13. - name: npm install
  14. image: node:12
  15. commands:
  16. - npm install
  17. - name: npm run build
  18. image: node:12
  19. commands:
  20. - npm run build
  21. - name: rebuild cache
  22. image: drillster/drone-volume-cache
  23. settings:
  24. rebuild: true
  25. mount:
  26. - ./node_modules
  27. volumes:
  28. - name: cache
  29. path: /cache
  30. - name: show tag
  31. image: alpine
  32. commands:
  33. - echo ${DRONE_BUILD_CREATED}
  34. - name: npm run test
  35. image: node:12
  36. commands:
  37. - npm run test
  38. - name: rebuild documentation
  39. image: node:12
  40. commands:
  41. - rm -rf docs
  42. - npm run docs
  43. trigger:
  44. event:
  45. - tag
  46. - name: npm publish
  47. image: plugins/npm
  48. settings:
  49. username: frontwork
  50. password:
  51. from_secret: npm_password
  52. email: frontwork.me@gmail.com
  53. trigger:
  54. event:
  55. - tag
  56. - name: versioning
  57. image: node:12
  58. commands:
  59. - git config --global user.email "frontwork.me@gmail.com"
  60. - git config --global user.name "drone"
  61. - PACKAGE_VERSION=$(cat package.json | grep version | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]')
  62. - LATEST_VERSION=$(npm view rpclibrary | grep latest | head -1 | awk -F: '{ print $2 }' | sed 's/[\",]//g' | tr -d '[[:space:]]')
  63. - if [ "${PACKAGE_VERSION}" != "${LATEST_VERSION}" ];
  64. then
  65. git tag $PACKAGE_VERSION
  66. git status
  67. git push https://$GIT_USER:$GIT_PASSWORD@gitea.frontblock.me/fw-vendor/${DRONE_REPO_NAME}.git master $PACKAGE_VERSION;
  68. else
  69. echo 'Version: '
  70. echo $LATEST_VERSION
  71. echo 'did not change. Don`t push tag to master';
  72. fi
  73. environment:
  74. GIT_USER:
  75. from_secret: git_user
  76. GIT_PASSWORD:
  77. from_secret: git_password
  78. trigger:
  79. event:
  80. exclude:
  81. - tag
  82. - name: commit documentation
  83. image: node:12
  84. commands:
  85. - git config --global user.email "frontwork.me@gmail.com"
  86. - git config --global user.name "drone"
  87. - git add -f docs
  88. - git commit --allow-empty -m "documented version at ${DRONE_BUILD_CREATED}"
  89. - git tag ${DRONE_BUILD_CREATED}
  90. - git status
  91. - git push https://$GIT_USER:$GIT_PASSWORD@gitea.frontblock.me/fw-vendor/${DRONE_REPO_NAME}.git master ${DRONE_BUILD_CREATED}
  92. environment:
  93. GIT_USER:
  94. from_secret: git_user
  95. GIT_PASSWORD:
  96. from_secret: git_password
  97. trigger:
  98. event:
  99. - tag
  100. volumes:
  101. - name: cache
  102. host:
  103. path: /tmp