Functest: Introduce building image job for euphrates
[releng.git] / jjb / releng / opnfv-docker.yml
index 095ba41..3b506bb 100644 (file)
         stream: danube
         branch: 'stable/{stream}'
         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
         - 'qtip':
-            <<: *danube
-            <<: *other-receivers
-        - 'storperf':
-            <<: *danube
+            project: 'qtip'
+            <<: *euphrates
             <<: *other-receivers
         - 'yardstick':
+            project: 'yardstick'
             <<: *danube
             <<: *other-receivers
+        # projects with jobs for euphrates
+        - 'functest':
+            project: 'functest'
+            <<: *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
 
     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}'
 
             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: "Release version, e.g. 1.0, 2.0, 3.0"
         - string:
             name: DOCKERFILE
-            default: "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"
 
     scm:
         - git-scm
     publishers:
         - email:
             recipients: '{receivers}'
+        - email-jenkins-admins-on-failure
 
 - job-template:
     name: '{project}-docker-build-push-monitor-{stream}'