X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=jjb%2Flf-maven-jobs.yaml;h=b58eaff8b2d334b1d3eef150b4d1964d50e27376;hb=refs%2Fchanges%2F52%2F15452%2F3;hp=8ec5b34583148fe1ab931d4bf7d6d33c40aa48ea;hpb=b194e1056230c9004ca7d50cce07300d42875183;p=releng%2Fglobal-jjb.git diff --git a/jjb/lf-maven-jobs.yaml b/jjb/lf-maven-jobs.yaml index 8ec5b345..b58eaff8 100644 --- a/jjb/lf-maven-jobs.yaml +++ b/jjb/lf-maven-jobs.yaml @@ -21,13 +21,39 @@ - ../shell/common-variables.sh - ../shell/maven-deploy.sh +- builder: + name: lf-maven-versions-plugin + builders: + - conditional-step: + condition-kind: boolean-expression + condition-expression: '{maven-versions-plugin}' + steps: + - inject: + properties-file: version.properties + - maven-target: + maven-version: '{mvn-version}' + pom: '{mvn-pom}' + goals: 'versions:set versions:update-child-modules versions:commit -B' + properties: + - 'newVersion=${{release_version}}' + settings: '{mvn-settings}' + settings-type: cfp + global-settings: 'global-settings' + global-settings-type: cfp + - builder: name: lf-maven-stage builders: + - lf-provide-maven-settings: + global-settings-file: '{mvn-global-settings}' + settings-file: '{mvn-settings}' + - lf-infra-create-netrc: + server-id: '{mvn-staging-id}' # include-raw-escape fails due to JJB bug - - shell: !include-raw: + - shell: !include-raw-escape: - ../shell/common-variables.sh - ../shell/maven-stage.sh + - lf-provide-maven-settings-cleanup - builder: name: lf-update-java-alternatives @@ -665,6 +691,7 @@ git-url: '$GIT_URL/$PROJECT' github-url: 'https://github.com' java-version: openjdk8 + maven-versions-plugin: false mvn-central: false mvn-global-settings: global-settings mvn-goals: clean deploy @@ -672,7 +699,9 @@ mvn-params: '' mvn-version: mvn35 ossrh-profile-id: '' + mvn-pom: '' sign-artifacts: false + sign-mode: serial stream: master submodule-recursive: true submodule-timeout: 10 @@ -697,6 +726,10 @@ mvn-params: '{mvn-params}' mvn-version: '{mvn-version}' staging-profile-id: '{staging-profile-id}' + - bool: + name: MAVEN_VERSIONS_PLUGIN + default: '{maven-versions-plugin}' + description: Use maven-versions-plugin to update pom versions. - string: name: ARCHIVE_ARTIFACTS default: '{archive-artifacts}' @@ -716,17 +749,26 @@ - lf-provide-maven-settings: global-settings-file: '{mvn-global-settings}' settings-file: '{mvn-settings}' - - lf-infra-create-netrc: - server-id: '{mvn-staging-id}' + - lf-maven-versions-plugin: + maven-versions-plugin: '{maven-versions-plugin}' + mvn-version: '{mvn-version}' + mvn-pom: '{mvn-pom}' + mvn-settings: '{mvn-settings}' - shell: !include-raw-escape: ../shell/maven-patch-release.sh - lf-maven-build: mvn-goals: '{mvn-goals}' - lf-sigul-sign-dir: sign-artifacts: '{sign-artifacts}' sign-dir: '$WORKSPACE/m2repo' - - lf-maven-stage + sign-mode: '{sign-mode}' + - lf-maven-stage: + mvn-global-settings: '{mvn-global-settings}' + mvn-settings: '{mvn-settings}' + mvn-staging-id: '{mvn-staging-id}' - lf-maven-central: mvn-central: '{mvn-central}' + mvn-global-settings: '{mvn-global-settings}' + mvn-settings: '{mvn-settings}' ossrh-profile-id: '{ossrh-profile-id}' - lf-provide-maven-settings-cleanup @@ -817,6 +859,10 @@ mvn-params: '' mvn-version: mvn35 sonar-mvn-goal: 'sonar:sonar' + sonarcloud: false + sonarcloud-project-key: '' + sonarcloud-project-organization: '' + sonarcloud-api-token: '' stream: master submodule-recursive: true submodule-timeout: 10 @@ -871,10 +917,31 @@ builders: - lf-infra-pre-build - - lf-infra-maven-sonar: - java-version: '{java-version}' - mvn-settings: '{mvn-settings}' - mvn-version: '{mvn-version}' + # With SonarCloud + - conditional-step: + condition-kind: boolean-expression + condition-expression: '{sonarcloud}' + steps: + - shell: echo 'Using SonarCloud' + - lf-infra-maven-sonarcloud: + java-version: '{java-version}' + mvn-settings: '{mvn-settings}' + mvn-version: '{mvn-version}' + sonarcloud-project-key: '{sonarcloud-project-key}' + sonarcloud-project-organization: '{sonarcloud-project-organization}' + sonarcloud-api-token: '{sonarcloud-api-token}' + # With SonarQube + - conditional-step: + condition-kind: not + condition-operand: + condition-kind: boolean-expression + condition-expression: '{sonarcloud}' + steps: + - shell: echo 'Using SonarQube' + - lf-infra-maven-sonar: + java-version: '{java-version}' + mvn-settings: '{mvn-settings}' + mvn-version: '{mvn-version}' publishers: - lf-jacoco-report @@ -900,6 +967,29 @@ - ../shell/maven-sonar.sh - lf-provide-maven-settings-cleanup +- builder: + name: lf-infra-maven-sonarcloud + # Run a Sonar build with Maven + builders: + - lf-maven-install: + mvn-version: '{mvn-version}' + - lf-update-java-alternatives: + java-version: '{java-version}' + - inject: + # Switch this to the sonar wrapper when JJB 2.0 is available + properties-content: | + SONAR_HOST_URL=https://sonarcloud.io + PROJECT_KEY={sonarcloud-project-key} + PROJECT_ORGANIZATION={sonarcloud-project-organization} + API_TOKEN={sonarcloud-api-token} + - lf-provide-maven-settings: + global-settings-file: global-settings + settings-file: '{mvn-settings}' + - shell: !include-raw-escape: + - ../shell/common-variables.sh + - ../shell/maven-sonar.sh + - lf-provide-maven-settings-cleanup + - job-template: name: '{project-name}-sonar' id: gerrit-maven-sonar @@ -941,8 +1031,7 @@ jenkins-ssh-credential: '{jenkins-ssh-credential}' triggers: - # Build weekly on Saturdays - - timed: 'H H * * 6' + - timed: '{obj:cron}' - github-pull-request: trigger-phrase: '^run-sonar$' only-trigger-phrase: true @@ -977,7 +1066,7 @@ mvn-global-settings: global-settings mvn-goals: clean deploy mvn-opts: '' - mvn-params: '-Dstream=$STREAM' + mvn-params: '-Dstream=$STREAM -Dmaven.source.skip=true' mvn-version: mvn35 stream: master submodule-recursive: true