60 lines
1.7 KiB
Groovy
60 lines
1.7 KiB
Groovy
pipeline {
|
|
agent any
|
|
|
|
stages {
|
|
stage('Checkout SCM') {
|
|
steps {
|
|
checkout([$class: 'GitSCM', branches: [[name: '**']],
|
|
doGenerateSubmoduleConfigurations: false,
|
|
extensions: [],
|
|
userRemoteConfigs: [[url: 'http://192.168.10.95:3002/Ismail/nodeMap', credentialsId: 'gmail2']]])
|
|
}
|
|
}
|
|
stage('Check Node.js Version') {
|
|
steps {
|
|
script {
|
|
def nodeVersion = sh(script: 'node --version', returnStdout: true).trim()
|
|
echo "Node.js version: ${nodeVersion}"
|
|
}
|
|
}
|
|
}
|
|
stage('Install Dependencies') {
|
|
steps {
|
|
sh 'npm install'
|
|
}
|
|
}
|
|
stage('Run Unit Tests') {
|
|
steps {
|
|
sh 'npm test'
|
|
}
|
|
}
|
|
}
|
|
|
|
post {
|
|
success {
|
|
emailext(
|
|
subject: "Build Success: ${JOB_NAME} #${BUILD_NUMBER}",
|
|
body: """
|
|
Build Successful! Details:
|
|
- Job Name: ${JOB_NAME}
|
|
- Build Number: ${BUILD_NUMBER}
|
|
- Build URL: ${BUILD_URL}
|
|
""",
|
|
to: "ismailali1553@gmail.com"
|
|
)
|
|
}
|
|
failure {
|
|
emailext(
|
|
subject: "Build Failed: ${JOB_NAME} #${BUILD_NUMBER}",
|
|
body: """
|
|
Build Failed! Details:
|
|
- Job Name: ${JOB_NAME}
|
|
- Build Number: ${BUILD_NUMBER}
|
|
- Build URL: ${BUILD_URL}
|
|
""",
|
|
to: "ismailali1553@gmail.com"
|
|
)
|
|
}
|
|
}
|
|
}
|