2.1 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			2.1 KiB
		
	
	
	
	
	
	
	
Using semantic-release with Jenkins CI
Environment variables
The Authentication environment variables can be configured in Jenkins Project Settings..
Alternatively, the default NPM_TOKEN and GH_TOKEN can be easily setup with semantic-release-cli.
Node.js project configuration
Jenkinsfile (Declarative Pipeline) configuration for a Node.js job
Note: The publish pipeline must run a Node >= 10.18 version.
This example is a minimal configuration for semantic-release with a build running Node 10.18. See Jenkins documentation for additional configuration options.
Thesemantic-release execution command varies depending if you are using a local or global semantic-release installation.
// The release stage in the pipeline will run only if the test stage in the pipeline is successful
pipeline {
    agent any 
    environment {
        GH_TOKEN  = credentials('some-id')
    }
    stages {
        stage('Test') {
            steps {
                sh '''
                # Configure your test steps here (checkout, npm install, tests etc)
                npm install
                npm test
                '''
                }
        }
        stage('Release') {
            tools {
            nodejs "node 10.18"
            }
            steps {
                sh '''
                # Run optional required steps before releasing
                npx semantic-release
                '''
            }            
        }
    }
}
package.json configuration for a Node job
A package.json is required only for local semantic-release installation.
{
  "devDependencies": {
    "semantic-release": "^15.0.0"
  }
}