This example is a minimal configuration for semantic-release with a build running a version of Node labelled as "node LTS". Since versions of Node are manually downloaded and labelled, we recommend keeping the version used for the release steps up-to-date with the latest LTS version. See the Jenkins documentation for additional configuration options.
1
// The release stage in the pipeline will run only if the test stage in the pipeline is successful
2
pipeline {
3
agent any
4
environment {
5
GH_TOKEN = credentials('some-id')
6
}
7
stages {
8
stage('Test') {
9
steps {
10
sh '''
11
# Configure your test steps here (checkout, npm install, tests etc)
12
npm install
13
npm test
14
'''
15
}
16
}
17
stage('Release') {
18
tools {
19
nodejs "node LTS"
20
}
21
steps {
22
sh '''
23
# Run optional required steps before releasing
24
npx semantic-release
25
'''
26
}
27
}
28
}
29
}
Copied!
package.json configuration for a Node job
A package.json is required only for localsemantic-release installation.