Jenkinsfile 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. // 所有脚本命令包含在pipeline{}中
  2. pipeline {
  3. // 指定任务在哪个节点执行(Jenkins支持分布式)
  4. agent any
  5. // 配置全局环境,指定变量名=变量值信息
  6. environment{
  7. host = '172.17.1.22'
  8. }
  9. // 存放所有任务的合集
  10. stages {
  11. // 单个任务
  12. // stage('拉取Git代码') {
  13. // // 实现任务的具体流程
  14. // steps {
  15. // git branch: '${BRANCH_NAME}', credentialsId: 'b4978113-0120-47f8-b809-ba6916afc6e0', url: 'http://192.168.32.253:3000/Software/android-cloud-H5.git'
  16. // }
  17. // }
  18. // 单个任务
  19. stage('初始化构建环境') {
  20. // 实现任务的具体流程
  21. steps {
  22. nodejs('v16') {
  23. // sh '. /usr/local/src/.nvm/nvm.sh'
  24. // sh 'nvm install v16'
  25. // sh 'nvm use v16'
  26. sh '''
  27. node -v
  28. npm -v
  29. npm install
  30. '''
  31. }
  32. }
  33. }
  34. stage('构建项目') {
  35. steps {
  36. script {
  37. if ( '${BRANCH_NAME}' === 'master' ) {
  38. nodejs('v16') {
  39. sh 'npm run build:prod'
  40. }
  41. } else if ( '${BRANCH_NAME}' === 'uat' ){
  42. nodejs('v16') {
  43. sh 'npm run build:uat'
  44. }
  45. } else {
  46. nodejs('v16') {
  47. sh 'npm run build:test'
  48. }
  49. }
  50. }
  51. }
  52. // parallel {
  53. // stage("build prod") {
  54. // when { branch 'master' }
  55. // steps {
  56. // script {
  57. // if () {}
  58. // }
  59. // nodejs('v16') {
  60. // sh 'npm run build:prod'
  61. // }
  62. // }
  63. // }
  64. // stage("build uat") {
  65. // when { branch 'uat' }
  66. // steps {
  67. // nodejs('v16') {
  68. // sh 'npm run build:uat'
  69. // }
  70. // }
  71. // }
  72. // stage("build test") {
  73. // when { branch 'feature/jenkinsfile' }
  74. // steps {
  75. // nodejs('v16') {
  76. // sh 'npm run build:test'
  77. // }
  78. // }
  79. // }
  80. // }
  81. }
  82. }
  83. }