danube: &danube
stream: danube
branch: 'stable/{stream}'
- disabled: true
+ disabled: false
+ euphrates: &euphrates
+ stream: euphrates
+ branch: 'stable/{stream}'
+ disabled: false
functest-receivers: &functest-receivers
receivers: >
- jose.lausuch@ericsson.com morgan.richomme@orange.com
+ jalausuch@suse.com morgan.richomme@orange.com
cedric.ollivier@orange.com feng.xiaowei@zte.com.cn
- yaohelan@huawei.com helanyao@gmail.com
- juha.kosonen@nokia.com
+ juha.kosonen@nokia.com wangwulin@huawei.com
+ storperf-receivers: &storperf-receivers
+ receivers: >
+ mark.beierl@emc.com
other-receivers: &other-receivers
receivers: ''
- project:
+ dockerfile: "Dockerfile"
+ dockerdir: "docker"
+ arch_tag: ""
+
+ # This is the dockerhub repo the image will be pushed to as
+ # 'opnfv/{dockerrepo}. See: DOCKER_REPO_NAME parameter.
+ # 'project' is the OPNFV repo we expect to contain the Dockerfile
+ dockerrepo:
# projects with jobs for master
+ - 'releng-anteater':
+ project: 'releng-anteater'
+ <<: *master
+ <<: *other-receivers
- 'bottlenecks':
+ project: 'bottlenecks'
<<: *master
<<: *other-receivers
- 'cperf':
+ project: 'cperf'
<<: *master
<<: *other-receivers
- 'dovetail':
+ project: 'dovetail'
<<: *master
<<: *other-receivers
- 'functest':
+ project: 'functest'
<<: *master
<<: *functest-receivers
- - 'qtip':
+ - 'nfvbench':
+ project: 'nfvbench'
<<: *master
<<: *other-receivers
- - 'storperf':
+ - 'qtip':
+ project: 'qtip'
<<: *master
<<: *other-receivers
+ - 'storperf-master':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-master'
+ arch_tag: 'x86_64'
+ <<: *master
+ <<: *storperf-receivers
+ - 'storperf-graphite':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-graphite'
+ arch_tag: 'x86_64'
+ <<: *master
+ <<: *storperf-receivers
+ - 'storperf-httpfrontend':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-httpfrontend'
+ arch_tag: 'x86_64'
+ <<: *master
+ <<: *storperf-receivers
+ - 'storperf-reporting':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-reporting'
+ arch_tag: 'x86_64'
+ <<: *master
+ <<: *storperf-receivers
+ - 'storperf-swaggerui':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-swaggerui'
+ arch_tag: 'x86_64'
+ <<: *master
+ <<: *storperf-receivers
- 'yardstick':
+ project: 'yardstick'
<<: *master
<<: *other-receivers
- # projects with jobs for stable
+ # projects with jobs for Danube
- 'bottlenecks':
+ project: 'bottlenecks'
<<: *danube
<<: *other-receivers
- - 'functest':
- <<: *danube
- <<: *functest-receivers
- - 'storperf':
- <<: *danube
+ - 'qtip':
+ project: 'qtip'
+ <<: *euphrates
<<: *other-receivers
- 'yardstick':
+ project: 'yardstick'
<<: *danube
<<: *other-receivers
+ # projects with jobs for euphrates
+ - 'functest':
+ project: 'functest'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'functest-core':
+ project: 'functest'
+ dockerdir: 'docker/core'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'functest-healthcheck':
+ project: 'functest'
+ dockerdir: 'docker/healthcheck'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'functest-smoke':
+ project: 'functest'
+ dockerdir: 'docker/smoke'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'functest-features':
+ project: 'functest'
+ dockerdir: 'docker/features'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'functest-components':
+ project: 'functest'
+ dockerdir: 'docker/components'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'functest-vnf':
+ project: 'functest'
+ dockerdir: 'docker/vnf'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'functest-parser':
+ project: 'functest'
+ dockerdir: 'docker/parser'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'functest-restapi':
+ project: 'functest'
+ dockerdir: 'docker/restapi'
+ <<: *euphrates
+ <<: *functest-receivers
+ - 'storperf-master':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-master'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'storperf-graphite':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-graphite'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'storperf-httpfrontend':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-httpfrontend'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'storperf-reporting':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-reporting'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'storperf-swaggerui':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-swaggerui'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'nfvbench':
+ project: 'nfvbench'
+ <<: *euphrates
+ <<: *other-receivers
jobs:
- - '{project}-docker-build-push-{stream}'
+ - "{dockerrepo}-docker-build-push-{stream}"
- project:
name: opnfv-monitor-docker # projects which only monitor dedicated file or path
+ dockerfile: "Dockerfile"
+ dockerdir: "docker"
+ arch_tag: ""
+
project:
# projects with jobs for master
- 'daisy':
+ dockerrepo: 'daisy'
+ <<: *master
+ - 'escalator':
+ dockerrepo: 'escalator'
<<: *master
jobs:
# job templates
########################
- job-template:
- name: '{project}-docker-build-push-{stream}'
+ name: '{dockerrepo}-docker-build-push-{stream}'
disabled: '{obj:disabled}'
parameters: ¶meters
- project-parameter:
project: '{project}'
- - gerrit-parameter:
branch: '{branch}'
- 'opnfv-build-ubuntu-defaults'
- string:
description: "To enable/disable pushing the image to Dockerhub."
- string:
name: DOCKER_REPO_NAME
- default: "opnfv/{project}"
+ default: "opnfv/{dockerrepo}"
description: "Dockerhub repo to be pushed to."
+ - string:
+ name: DOCKER_DIR
+ default: "{dockerdir}"
+ description: "Directory containing files needed by the Dockerfile"
+ - string:
+ name: COMMIT_ID
+ default: ""
+ description: "commit id to make a snapshot docker image"
- string:
name: RELEASE_VERSION
default: ""
description: "Release version, e.g. 1.0, 2.0, 3.0"
+ - string:
+ name: DOCKERFILE
+ default: "{dockerfile}"
+ description: "Dockerfile to use for creating the image."
+ - string:
+ name: ARCH_TAG
+ default: "{arch_tag}"
+ description: "If set, this value will be added to the docker image tag as a prefix"
+
+ properties:
+ - throttle:
+ max-per-node: 1
+ option: 'project'
scm:
- git-scm
publishers:
- email:
recipients: '{receivers}'
+ - email-jenkins-admins-on-failure
- job-template:
name: '{project}-docker-build-push-monitor-{stream}'