Slackbot
02/14/2022, 5:43 PMtony
02/14/2022, 6:21 PMJake Gage
02/14/2022, 6:58 PMJake Gage
02/14/2022, 6:58 PMapply plugin: 'org.owasp.dependencycheck'
dependencyCheck {
    failOnError = false
    suppressionFile = new File("${projectDir}/config/owasp/suppressions.xml")
    scanConfigurations = [ 'runtimeClasspath' ]
    format = 'ALL'
    outputDirectory = "${projectDir}/build/reports/owasp"
}Jake Gage
02/14/2022, 6:58 PMpipeline {
  options {
    disableConcurrentBuilds()
    timeout(time: 10, unit: 'MINUTES')
    buildDiscarder(logRotator(artifactNumToKeepStr: '1'))
  }
  agent {
    docker {
      image 'adoptopenjdk/openjdk8'
      args '-u root:root'
    }
  }Jake Gage
02/14/2022, 6:59 PMstage('security audit') {
      steps {
        sh './gradlew dependencyCheckAnalyze'
        dependencyCheckPublisher pattern: 'build/reports/owasp/dependency-check-report.xml'
        publishHTML target: [ reportName: 'OWASP', reportDir: 'build/reports', reportFiles: 'owasp/dependency-check-report.html' ]
      }
    }Jake Gage
02/14/2022, 7:00 PMdependencyCheckAnalyze stage takes 3-5 minutes every time… but that’s because it seems to be downloading CVEs and creating the database.Jake Gage
02/14/2022, 7:01 PM.gradle and the cache dot directory for OWASP as mounts in the Docker container… aaand the build used them… but it didn’t seem to make anything any faster.Jake Gage
02/14/2022, 7:01 PMdependencyCheckAnalyze in a shell only takes a long time if you burn the cache directories… but are seconds-fast when you don’t.Eug
02/15/2022, 6:01 PMEug
02/15/2022, 6:03 PMJake Gage
02/15/2022, 6:05 PMJake Gage
02/15/2022, 6:06 PMEug
02/15/2022, 6:07 PMEug
02/15/2022, 6:09 PM