如何自动更新 package.json 文件的版本号
How to update version number of package.json file automatically
我有通过jenkins自动升级package.json
版本的需求。我们有将通过 Jenkins 构建的节点项目,一切都很好但是当我们想在 package.json
中升级 version
时,每次我们需要在 package.json 中手动进行更改,然后通过推送到 Jenkins GitLab.
有什么方法可以自动完成这一步吗??
这是 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,
问题已通过 linux
中的 awk 命令行工具解决
#!/usr/bin/awk
awk -F'["]' -v OFS='"' '/"version":/{split(,a,".");=a[1]+1"."a[2]"."a[3]+1};1' ./package.json > ./package2.json && mv ./package2.json ./package.json
我有通过jenkins自动升级package.json
版本的需求。我们有将通过 Jenkins 构建的节点项目,一切都很好但是当我们想在 package.json
中升级 version
时,每次我们需要在 package.json 中手动进行更改,然后通过推送到 Jenkins GitLab.
有什么方法可以自动完成这一步吗??
这是 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,
问题已通过 linux
中的 awk 命令行工具解决#!/usr/bin/awk
awk -F'["]' -v OFS='"' '/"version":/{split(,a,".");=a[1]+1"."a[2]"."a[3]+1};1' ./package.json > ./package2.json && mv ./package2.json ./package.json