Jenkinsfile 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #!groovy
  2. pipeline {
  3. agent any
  4. tools { nodejs "nodejs" }
  5. parameters {
  6. string(name: 'TAG_NAME', defaultValue: '', description: '')
  7. }
  8. environment {
  9. APP_NAME = 'yudao-admin'
  10. APP_PACKAGE='yudao-admin-ui'
  11. NGINX_WORKDIR = '/home/pi/mydata/nginx/html/'
  12. }
  13. stages {
  14. stage('检出') {
  15. steps {
  16. git url: "https://gitee.com/will-we/ruoyi-vue-pro.git",
  17. branch: "devops"
  18. }
  19. }
  20. stage('构建') {
  21. steps {
  22. sh 'cnpm --prefix '+ "${env.APP_PACKAGE}" +' install'
  23. sh 'cnpm --prefix '+ "${env.APP_PACKAGE}" +' run build:prod'
  24. }
  25. }
  26. stage('部署') {
  27. steps {
  28. sh 'mkdir -p ' + "${env.NGINX_WORKDIR}" + "${env.APP_NAME}"
  29. sh 'cp -rf ' + "${env.APP_NAME}" + '/dist/. ' + "${env.NGINX_WORKDIR}" + "${env.APP_NAME}"
  30. sh 'tar -zcvf ' + "${env.APP_NAME}" + '/'+ "${env.APP_NAME}" + '.tar.gz ' + "${env.APP_NAME}" + '/dist/'
  31. archiveArtifacts "${env.APP_NAME}" + '/'+ "${env.APP_NAME}" + '.tar.gz'
  32. //TODO 考虑刷新缓存的问题
  33. }
  34. }
  35. }
  36. }