Skip to content
Snippets Groups Projects
Select Git revision
  • 4ff15a703e4d906a9666c2f246bf80b56c0cbc24
  • master default protected
  • devops
  • deeksha
4 results

Jenkinsfile

Blame
  • Jenkinsfile 3.33 KiB
    pipeline {
        agent any
    
        tools {
            gradle 'Gradle'
        }
        environment {
                 PROJECT_ID = "tech-rnd-project"
                 CLUSTER_NAME = "cluster"
                 LOCATION = "us-central1-a"
                 CREDENTIALS_ID = "kubernetes"
        }
    
        stages {
            stage('Scm Checkout') {
                steps {
                        checkout scm
                }
            }
    
            stage('Build') {
                steps {
                    sh 'chmod u+x gradlew'
                    sh './gradlew'
                    sh './gradlew build'
                }
            }
    
            stage('Test') {
                steps {
                    sh './gradlew test'
                }
            }
    
            stage('SonarQube analysis') {
                steps {
                    withSonarQubeEnv('java-sonarqube-server') {
                        sh "./gradlew sonarqube"
                    }
                }
            }
    
            stage('Build Docker Image') {
                steps {
                    sh 'whoami'
                    sh 'sudo chmod 777 /var/run/docker.sock'
                    sh 'sudo apt update'
                    sh 'sudo apt install software-properties-common'
                    sh 'sudo add-apt-repository ppa:cncf-buildpacks/pack-cli'
                    sh 'sudo  apt-get update'
                    sh 'sudo apt-get install pack-cli'
                    sh 'pack build java-postgress --builder gcr.io/buildpacks/google-22/builder@sha256:ffa092c09ffb147b2ce9658eb6590aa9af2caffb2d513ab8546bb510b74e0225'
                }
            }
    
            // stage('Image Scan') {
            //     steps {
            //         //add steps here
            //         echo 'image scanning'
            //         sh 'trivy image --no-progress --exit-code 1 --severity CRITICAL java-postgress'
            //     }
            // }
    
            stage('Push Docker Image') {
                steps {
                    script {
                        echo 'Push Docker Image'
                        sh 'docker tag java-postgress us-central1-docker.pkg.dev/tech-rnd-project/container-node/nodejs'
                        sh 'gcloud auth configure-docker us-central1-docker.pkg.dev'
                        sh 'docker push us-central1-docker.pkg.dev/tech-rnd-project/container-node/nodejs'