【问题标题】:How to update version number of package.json file automatically如何自动更新 package.json 文件的版本号
【发布时间】:2021-12-17 14:20:09
【问题描述】:

我需要通过 jenkins 自动升级package.json 版本。我们有将通过 Jenkins 构建的节点项目,一切都很好,但是当我们想要升级 version 中的 package.json 时,每次我们需要手动更改 package.json,然后通过 GitLab 推送到 Jenkins。

有没有办法自动化这一步??

这是 Jenkins 文件

  pipeline {
  agent any
 stages {
    stage('Build') {
      steps {
         checkout([$class: 'GitSCM', branches: [[name: 'master']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'ID', url: 'https://gitlab.com/company/website.git']]])
             sh "pwd"
             sh "npm install"
             sh "npm run build"  
          }
       }
        stage('deploy') {
          steps {
                 sh "scp -v -o StrictHostKeyChecking=no -r /var/lib/jenkins/workspace/project/build/* ubuntu@prod:/var/www/project/"
         }
       }       
     }      
   }

这是 package.json 文件

  "name": "my-project",
  "version": "1.1.24",
  "description": "web application",
  "main": "index.js",
  "repository": "https://gitlab.com/",
  "private": true,

【问题讨论】:

    标签: node.js jenkins


    【解决方案1】:

    问题已通过 linux 中的 awk 命令行工具解决

    #!/usr/bin/awk
    
    awk -F'["]' -v OFS='"'  '/"version":/{split($4,a,".");$4=a[1]+1"."a[2]"."a[3]+1};1' ./package.json > ./package2.json && mv ./package2.json ./package.json
    

    【讨论】:

      猜你喜欢
      • 2012-10-15
      • 2010-09-05
      • 2017-02-21
      • 2022-01-12
      • 2020-05-10
      • 2016-04-27
      • 2022-06-10
      • 2020-01-18
      • 2021-09-30
      相关资源
      最近更新 更多