X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fbottlenecks%2Fbottlenecks.yml;h=828fd214b7a916948e7b6b040d1b430931ef9d38;hb=906ad9f4c9eb0ae29776c5780f41058b6251cab3;hp=b2d74eba774e755bef4757c09962cc54045a8402;hpb=74810a83844602e82d4e5d70ac866b53fbdf5d3d;p=releng.git diff --git a/jjb/bottlenecks/bottlenecks.yml b/jjb/bottlenecks/bottlenecks.yml index b2d74eba7..828fd214b 100644 --- a/jjb/bottlenecks/bottlenecks.yml +++ b/jjb/bottlenecks/bottlenecks.yml @@ -4,13 +4,9 @@ - project: name: bottlenecks jobs: - - 'bottlenecks-test' - - 'bottlenecks-verify' - - 'bottlenecks-merge' - - 'bottlenecks-daily-{installer}-{pod}-{stream}' - - # stream: branch with - in place of / (eg. stable-arno) - # branch: branch (eg. stable/arno) + - 'bottlenecks-verify-{stream}' + - 'bottlenecks-daily-{installer}-{suite}-{pod}-{stream}' + - 'bottlenecks-{suite}-upload-artifacts-{stream}' pod: - lf: node: 'opnfv-jump-2' @@ -18,45 +14,35 @@ installer_ip: '10.20.0.2' installer: - -fuel + - 'fuel' + + suite: + - 'rubbos' + - 'vstf' +# only master branch is enabled at the moment to keep no of jobs sane stream: - master: - branch: 'master' + branch: '{stream}' + gs-pathname: '' +# - brahmaputra: +# branch: 'stable/{stream}' +# gs-pathname: '/{stream}' project: 'bottlenecks' - somevar: 'foo' ############################### # Job templates ############################## - job-template: - name: 'bottlenecks-test' - - logrotate: - daysToKeep: 30 - numToKeep: 10 - artifactDaysToKeep: -1 - artifactNumToKeep: -1 - - builders: - - shell: | - echo "Hello world from bottlenecks" - -- job-template: - - name: 'bottlenecks-verify' - - logrotate: - daysToKeep: 30 - numToKeep: 10 - artifactDaysToKeep: -1 - artifactNumToKeep: -1 + name: 'bottlenecks-verify-{stream}' parameters: - project-parameter: project: '{project}' - gerrit-parameter: - branch: 'master' + branch: '{branch}' + - 'opnfv-build-defaults' + scm: - gerrit-trigger-scm: credentials-id: '{ssh-credentials}' @@ -80,56 +66,48 @@ project-pattern: '{project}' branches: - branch-compare-type: 'ANT' - branch-pattern: '**/master' + branch-pattern: '**/{branch}' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**|.gitignore' builders: - shell: | - echo "hello world" + echo "Nothing to verify!" - job-template: - name: 'bottlenecks-merge' + name: 'bottlenecks-{suite}-upload-artifacts-{stream}' - # builder-merge job to run JJB update - # - # This job's purpose is to update all the JJB + node: ericsson-build - logrotate: - daysToKeep: 30 - numToKeep: 40 - artifactDaysToKeep: -1 - artifactNumToKeep: 5 + concurrent: true + + properties: + - throttle: + enabled: true + max-total: 1 + max-per-node: 1 parameters: - project-parameter: project: '{project}' - - gerrit-parameter: - branch: 'master' + - 'ericsson-ca-build-1-defaults' + - bottlenecks-parameter: + gs-pathname: '{gs-pathname}' + suite: '{suite}' scm: - - gerrit-trigger-scm: + - git-scm: credentials-id: '{ssh-credentials}' refspec: '' - choosing-strategy: 'default' - - triggers: - - gerrit: - trigger-on: - - change-merged-event - - comment-added-contains-event: - comment-contains-value: 'remerge' - projects: - - project-compare-type: 'ANT' - project-pattern: 'bottlenecks' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/master' + branch: '{branch}' builders: - - shell: | - echo "hello world" + - 'bottlenecks-builder-upload-artifact' + - 'bottlenecks-workspace-cleanup' - job-template: - name: 'bottlenecks-daily-{installer}-{pod}-{stream}' + name: 'bottlenecks-daily-{installer}-{suite}-{pod}-{stream}' disabled: false @@ -138,7 +116,7 @@ parameters: - project-parameter: project: '{project}' - - '{pod}-parameters' + - 'opnfv-jump-2-defaults' - string: name: POD_NAME default: '{pod}' @@ -151,6 +129,10 @@ name: INSTALLER_IP default: '{installer_ip}' description: "Installer IP." + - string: + name: GERRIT_REFSPEC_DEBUG + default: '' + description: "Gerrit refspec for debug." scm: - git-scm: @@ -158,24 +140,40 @@ refspec: '' branch: '{branch}' - logrotate: - daysToKeep: 30 - numToKeep: 10 - artifactDaysToKeep: -1 - artifactNumToKeep: -1 + wrappers: + - timeout: + timeout: 120 + fail: true triggers: - 'bottlenecks-trigger-{pod}' builders: - 'bottlenecks-fetch-os-creds' - - 'run-rubbos-env-preparation' - - 'run-rubbos-tools-installation' - - 'rubbos-exec' + - 'bottlenecks-run-{suite}' publishers: - email: - recipients: hongbo.tianhongbo@huawei.com matthew.lijun@huawei.com + recipients: hongbo.tianhongbo@huawei.com matthew.lijun@huawei.com liangqi1@huawei.com liyiting@huawei.com + +#################### +# parameter macros +#################### +- parameter: + name: bottlenecks-parameter + parameters: + - string: + name: CACHE_DIR + default: $WORKSPACE/cache/{suite} + description: "the cache to store packages downloaded from public IP" + - string: + name: SUITE_URL + default: gs://artifacts.opnfv.org/bottlenecks/{suite}{gs-pathname} + description: "LF artifacts url for storage of bottlenecks packages" + - string: + name: PACKAGE_URL + default: http://205.177.226.237:9999/bottlenecks/{suite}/ + description: "the url where we store the packages used for bottlenecks rubbos" ################################### #builders for bottlenecks project @@ -187,43 +185,57 @@ !include-raw ../../utils/fetch_os_creds.sh - builder: - name: run-rubbos-env-preparation + name: bottlenecks-run-rubbos builders: - shell: | #!/bin/bash set -o errexit - echo "Bottlenecks: export openstack parameters before rubbos running" - + echo "Bottlenecks: rubbos running now..." cd $WORKSPACE - ./rubbos/rubbos_scripts/1-1-1/scripts/env_preparation.sh + ./ci/run.sh $GERRIT_REFSPEC_DEBUG - builder: - name: run-rubbos-tools-installation + name: bottlenecks-run-vstf builders: - shell: | #!/bin/bash set -o errexit - echo "Bottlenecks: to install tools to run rubbos" - + echo "Bottlenecks: vstf running now..." cd $WORKSPACE - ./rubbos/rubbos_scripts/1-1-1/scripts/run.sh + ./ci/vstf_run.sh $GERRIT_REFSPEC_DEBUG +- builder: + name: bottlenecks-builder-upload-artifact + builders: + - shell: | + #!/bin/bash + set -o errexit + + echo "Bottlenecks: upload to artifacts from the public IP" + + [[ -d $CACHE_DIR ]] || mkdir -p $CACHE_DIR + + for file in $(curl -s $PACKAGE_URL | + grep href | + sed 's/.*href="//' | + sed 's/".*//' | + grep '^[a-zA-Z].*'); do + curl --connect-timeout 10 -o $CACHE_DIR/$file $PACKAGE_URL$file -v + echo "bottlenecks: copy file $CACHE_DIR/$file to $SUITE_URL" + gsutil cp $CACHE_DIR/$file $SUITE_URL + done - builder: - name: rubbos-exec + name: bottlenecks-workspace-cleanup builders: - shell: | #!/bin/bash set -o errexit - echo "Bottlenecks: rubbos execution" + echo "Bottlenecks: cleanup cache used for storage downloaded packages" - cd $WORKSPACE - cd ./rubbos/rubbos_scripts/1-1-1 - source set_bottlenecks_rubbos_env.sh - ssh $CONTROL_HOST - ./tmp/CONTROL_rubbos_exec.sh + /bin/rm -rf $CACHE_DIR ####################### #trigger macros @@ -231,4 +243,24 @@ - trigger: name: 'bottlenecks-trigger-lf' triggers: - - timed: '@midnight' + - timed: '0 6 * * *' + - gerrit: + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: 'recheck' + - comment-added-contains-event: + comment-contains-value: 'reverify' + projects: + - project-compare-type: 'ANT' + project-pattern: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + forbidden-file-paths: + - compare-type: ANT + pattern: 'docs/**|.gitignore'