Update CLM job to use Nexus Policy Evaluation 16/12016/13
authorJessica Wagantall <jwagantall@linuxfoundation.org>
Fri, 27 Jul 2018 03:54:00 +0000 (20:54 -0700)
committerJessica Wagantall <jwagantall@linuxfoundation.org>
Wed, 1 Aug 2018 00:20:20 +0000 (00:20 +0000)
Depends on JJB plugin support:
https://review.openstack.org/584581

Change-Id: I9b790183545f64c2d535163ae0eed9ed1ad5cc1e
Issue-ID: RELENG-1086
Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org>
docs/jjb/lf-macros.rst
docs/jjb/lf-maven-jobs.rst
jjb/lf-macros.yaml
jjb/lf-maven-jobs.yaml

index 8a4fb0c..58ec793 100644 (file)
@@ -228,6 +228,12 @@ Forcibly removes all of the docker images.
 Parameters
 ==========
 
+lf-clm-parameters
+-------------------
+
+Provides the policy evaluation stage to run against Nexus IQ Server.
+Valid values include: 'build', 'stage-release', 'operate'.
+
 lf-cmake-parameters
 -------------------
 
index 9835e66..ccd4165 100644 (file)
@@ -131,6 +131,8 @@ Produces a CLM scan of the code into Nexus IQ Server.
     :mvn-opts: Sets MAVEN_OPTS. (default: '')
     :mvn-params: Additional mvn parameters to pass to the cli. (default: '')
     :mvn-version: Version of maven to use. (default: mvn35)
+    :nexus-iq-stage: Stage the policy evaluation will be run against on
+        the Nexus IQ Server. (default: 'build')
     :stream: Keyword that can be used to represent a release code-name.
         Often the same as the branch. (default: master)
     :submodule-recursive: Whether to checkout submodules recursively.
index 801cf97..bc1ce58 100644 (file)
 # PARAMETERS #
 ##############
 
+- parameter:
+    name: lf-clm-parameters
+    parameters:
+      - string:
+          name: NEXUS_IQ_STAGE
+          default: '{nexus-iq-stage}'
+          description: |
+              Stage the policy evaluation will be run against on the Nexus IQ Server.
+
 - parameter:
     name: lf-cmake-parameters
     # Parameters useful in CMake builds.
index 0d77755..6112f91 100644 (file)
     mvn-opts: ''
     mvn-params: ''
     mvn-version: mvn35
+    nexus-iq-stage: 'build'
     staging-profile-id: ''  # Unused in this job
     stream: master
     submodule-recursive: true
 
+    nexus-iq-scan-patterns:
+      - '**/*.ear'
+      - '**/*.jar'
+      - '**/*.tar.gz'
+      - '**/*.war'
+      - '**/*.zip'
+
     gerrit_clm_triggers:
       - comment-added-contains-event:
           comment-contains-value: run-clm$
 
+    parameters:
+      - lf-infra-parameters:
+          project: '{project}'
+          branch: '{branch}'
+          stream: '{stream}'
+          lftools-version: '{lftools-version}'
+      - lf-infra-maven-parameters:
+          mvn-opts: '{mvn-opts}'
+          mvn-params: '{mvn-params}'
+          mvn-version: '{mvn-version}'
+          # Staging repos do not make sense for CLM jobs so set it blank.
+          staging-profile-id: '{staging-profile-id}'
+      - string:
+          name: ARCHIVE_ARTIFACTS
+          default: '{archive-artifacts}'
+          description: Artifacts to archive to the logs server.
+      - lf-clm-parameters:
+          nexus-iq-stage: '{nexus-iq-stage}'
+
     #####################
     # Job Configuration #
     #####################
           - ../shell/sonatype-clm.sh
       - lf-provide-maven-settings-cleanup
       - shell: 'find . -regex ".*karaf/target" | xargs rm -rf'
-      - sonatype-clm:
-          application-name: '{project-name}'
+      - nexus-iq-policy-evaluator:
+          stage: '{nexus-iq-stage}'
+          application-type: 'manual'
+          application-id: '{project-name}'
+          scan-patterns: '{nexus-iq-scan-patterns}'
+          fail-build-network-error: true
 
 - job-template:
     name: '{project-name}-maven-clm-{stream}'