You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Had some issues with builds failing on our clusters due to helm chart issues. Made this addition to the jenkins file to make sure the linting blocks the jenkins file from completing. This is for a node-specific project but I think it could be useful to add for all jenkinsfile templates. what is the best way to go about doing this? Should I made a PR for each technology or is there a root file that is used?
pipeline {
agent {
label "jenkins-nodejs"
}
environment {
ORG = 'our-org'
APP_NAME = my-app'
CHARTMUSEUM_CREDS = credentials('jenkins-x-chartmuseum')
}
stages {
stage('CI Build and push snapshot') {
when {
branch 'PR-*'
}
environment {
PREVIEW_VERSION = "0.0.0-SNAPSHOT-$BRANCH_NAME-$BUILD_NUMBER"
PREVIEW_NAMESPACE = "$APP_NAME-$BRANCH_NAME".toLowerCase()
HELM_RELEASE = "$PREVIEW_NAMESPACE".toLowerCase()
}
steps {
container('nodejs') {
sh "helm lint ./charts/$APP_NAME"
sh "npm install"
sh "export VERSION=$PREVIEW_VERSION && skaffold build -f skaffold.yaml"
sh "jx step post build --image $DOCKER_REGISTRY/$ORG/$APP_NAME:$PREVIEW_VERSION"
dir('./charts/preview') {
sh "make preview"
sh "jx preview --app $APP_NAME --dir ../.."
}
}
}
}
stage('Build Release') {
when {
branch 'master'
}
steps {
container('nodejs') {
// ensure we're not on a detached head
sh "git checkout master"
sh "git config --global credential.helper store"
sh "jx step git credentials"
sh "helm lint ./charts/$APP_NAME"
// so we can retrieve the version in later steps
sh "echo \$(jx-release-version) > VERSION"
sh "jx step tag --version \$(cat VERSION)"
sh "npm install"
sh "export VERSION=`cat VERSION` && skaffold build -f skaffold.yaml"
sh "jx step post build --image $DOCKER_REGISTRY/$ORG/$APP_NAME:\$(cat VERSION)"
}
}
}
stage('Promote to Environments') {
when {
branch 'master'
}
steps {
container('nodejs') {
dir('./charts/$APP_NAME') {
sh "jx step changelog --batch-mode --version v\$(cat ../../VERSION)"
// release the helm chart
sh "jx step helm release"
// promote through all 'Auto' promotion Environments
sh "jx promote -b --all-auto --timeout 1h --version \$(cat ../../VERSION)"
}
}
}
}
}
post {
always {
cleanWs()
}
}
}
The text was updated successfully, but these errors were encountered:
Please view the helm lint command in the stages
Had some issues with builds failing on our clusters due to helm chart issues. Made this addition to the jenkins file to make sure the linting blocks the jenkins file from completing. This is for a node-specific project but I think it could be useful to add for all jenkinsfile templates. what is the best way to go about doing this? Should I made a PR for each technology or is there a root file that is used?
The text was updated successfully, but these errors were encountered: