zoukankan      html  css  js  c++  java
  • pipeline+sonar

    前提需要在项目根目录下新建sonar-project.properties文件,内容如下:

    # must be unique in a given SonarQube instance
    sonar.projectKey=cynomys:0.0.1
    # this is the name and version displayed in the SonarQube UI. Was mandatory prior to SonarQube 6.1.
    sonar.projectName=cynomys
    sonar.projectVersion=0.0.1
    
    # Path is relative to the sonar-project.properties file. Replace "" by "/" on Windows.
    # This property is optional if sonar.modules is set.
    sonar.sources=.
    sonar.exclusions=**/test/**,**/target/**
    
    sonar.java.source=1.8
    sonar.java.target=1.8
    
    # Encoding of the source code. Default is default system encoding
    sonar.sourceEncoding=UTF-8
    # 项目的class文件地址 sonar.java.binaries=/root/.jenkins/workspace/e-content/e-content-controller/target/classes

    pipeline脚本

    node {
        maven_home='/usr/local/apache-maven-3.5.4'
    
        stage('Pull Code'){
            
            git branch: 'master', credentialsId: 'gitlab_account', url: 'http://******.git'
            
        }
        
       stage('Code Check') {
                echo "代码检查!"
             }
             
         stage('SonarQube analysis') { 
            // SonarQubeServer为系统配置的SonarQube servers的名称
            withSonarQubeEnv('SonarQubeServer') { 
              sh '/usr/local/sonar-scanner-3.2.0.1227-linux/bin/sonar-scanner'
              
            }
        }
    
       stage('Unit Test') {
             echo "单元测试 !"
          }
         
    
       stage('Compile') {
            echo '编译开始'
            // 暂时打包报错
            sh "'$maven_home'/bin/mvn install"
       }
    
       stage('Build Images') {
            echo '敬请期待!'
          
        }
    
        stage('Backup'){
            echo '旧版本软件包已经备份'
        }
        
        stage('Delete Old war'){
            echo "删除老的包"
        }
        
    
        stage('Deploy'){
           echo '部署!'
           sh 'echo hello'
        //   sh 'scp /root/.jenkins/workspace/e-trade/e-trade-mapper/target/e-trade-mapper-1.0-SNAPSHOT.jar  root@10.132.131.51:/home/guchen_test'
         
        }
    
        stage('Integration Testing') {
              echo "敬请期待!"
           }
    
        stage('UI Automated Testing') {
              echo "敬请期待!"
           }
    
        stage('Send Testing Report') {
              echo "敬请期待!"
           }
    
    }
  • 相关阅读:
    laravel的workflow流程插件
    [php]laravel框架容器管理的一些要点
    laravel 自带消息notification通知
    laravel5.5的定时任务详解(demo)
    Laravel核心代码学习
    laravel 加载指定版本的mongodb
    Linux安装Composer
    composer全量镜像使用方法
    laravel在github地址
    node anyproxy ssi简易支持
  • 原文地址:https://www.cnblogs.com/gcgc/p/10240283.html
Copyright © 2011-2022 走看看