Anuket Project

 

The barometer CI can be separated into a number of Jobs:

  1. Verify Job which runs when code is pushed to gerrit
  2. Daily job which runs on a nightly basis
  3. Installer Jobs which validate feature integration with Installers.

The YAML configuration for the first 2 jobs is located in the releng repo: https://gerrit.opnfv.org/gerrit/gitweb?p=releng.git;a=tree;f=jjb/barometer;hb=HEAD in the barometer.yaml file. The barometer team maintains these files.

The barometer jenkins jobs for the 1st 2 listed jobs can be found here: https://build.opnfv.org/ci/view/barometer/. The daily job should be checked on a weekly basis.

The 3rd job is maintained by the Apex project. The barometer project should ensure that the builds here are running as expected and the validation through functest and Yardstick is successful.

The 3rd job is essentially testing the 2 barometer scenarios, builds can be found at:

  1. https://build.opnfv.org/ci/job/apex-os-nosdn-bar-ha-baremetal-euphrates/
  2. https://build.opnfv.org/ci/job/apex-os-nosdn-bar-noha-baremetal-euphrates/

These jobs should be checked on a daily basis in the run up to release. Please note that you will need to check the console for the barometer specific test results

 

Please note: for the F release the CI daily job will be updated to generate the barometer container images.

Verify Job

Does a simple source build of the barometer repo (reference: https://gerrit.opnfv.org/gerrit/gitweb?p=releng.git;a=blob;f=jjb/barometer/barometer.yml;hb=HEAD)

26 - job-template:
27     name: 'barometer-verify-{stream}'
29     disabled: '{obj:disabled}'
31     parameters:
32       - project-parameter:
33           project: '{project}'
34           branch: '{branch}'
35       - 'opnfv-build-ubuntu-defaults'
37     scm:
38       - git-scm-gerrit
40     triggers:
41       - gerrit:
42           server-name: 'gerrit.opnfv.org'
43           trigger-on:
44             - patchset-created-event:
45                 exclude-drafts: 'false'
46                 exclude-trivial-rebase: 'false'
47                 exclude-no-code-change: 'false'
48             - draft-published-event
49             - comment-added-contains-event:
50                 comment-contains-value: 'recheck'
51             - comment-added-contains-event:
52                 comment-contains-value: 'reverify'
53           projects:
54             - project-compare-type: 'ANT'
55               project-pattern: '{project}'
56               branches:
57                 - branch-compare-type: 'ANT'
58                   branch-pattern: '**/{branch}'
59               disable-strict-forbidden-file-verification: 'true'
60               forbidden-file-paths:
61                 - compare-type: ANT
62                   pattern: 'docs/**|.gitignore'
64     builders:
65       - shell: |
66           pwd
67           cd src
68           make clobber
69           make

Daily job

This job builds and pushes collectd RPMs (with barometer plugins enabled) to artifacts.opnfv.org. These RPMs are used as part of the scenario deployment for the Apex daily jobs. The barometer.yml file invokes 2 script to complete the daily job:

barometer-build.sh

barometer-upload-artifact.sh

The two script above also live in the releng repo.

 

barometer-build.sh takes advantage of the ci directory in the barometer repo to build the required RPMs.

11 cd ci
12 ./install_dependencies.sh
13 ./build_rpm.sh
upon completion of the build it also generates a file called opnfv.properties --> this file will come into play when we upload the artifacts to http://artifacts.opnfv.org/barometer.html. An example of what this file contains is shown below:

 

OPNFV_ARTIFACT_VERSION=2017-06-30_02-14-02
OPNFV_ARTIFACT_URL=artifacts.opnfv.org/barometer/2017-06-30_02-14-02/

 

After opnfv.properties is generated - the barometer-upload-artifact.sh is invoked. This script will:

Daily job visualization: 


 

  • No labels