+---
############################################
# dovetail upload artifacts job
############################################
project: 'dovetail'
jobs:
- - 'dovetail-{image}-artifacts-upload-{stream}'
+ - 'dovetail-{image}-artifacts-upload-{stream}'
stream:
- - master:
- branch: '{stream}'
- gs-pathname: ''
- disabled: false
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
image:
- - 'dovetail'
- - 'functest'
- - 'yardstick'
+ - 'dovetail'
+ - 'functest'
+ - 'yardstick'
+ - 'testapi'
+ - 'mongo'
#############################################
# job template
concurrent: true
properties:
- - logrotate-default
- - throttle:
- enabled: true
- max-total: 1
- max-per-node: 1
- option: 'project'
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+ option: 'project'
parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: '{branch}'
- - 'opnfv-build-ubuntu-defaults'
- - dovetail-parameter:
- gs-pathname: '{gs-pathname}'
- image: '{image}'
- branch: '{branch}'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - 'opnfv-build-ubuntu-defaults'
+ - dovetail-parameter:
+ gs-pathname: '{gs-pathname}'
+ image: '{image}'
+ branch: '{branch}'
scm:
- - git-scm
+ - git-scm
builders:
- - 'dovetail-builder-artifacts-upload'
- - 'dovetail-workspace-cleanup'
+ - 'dovetail-builder-artifacts-upload'
+ - 'dovetail-upload-artifacts-cache-cleanup'
+ - 'dovetail-images-cleanup'
####################
# parameter macros
- parameter:
name: dovetail-parameter
parameters:
- - string:
- name: CACHE_DIR
- default: $WORKSPACE/cache{gs-pathname}
- description: "the cache to store packages downloaded"
- - string:
- name: STORE_URL
- default: gs://artifacts.opnfv.org/dovetail{gs-pathname}
- description: "LF artifacts url for storage of dovetail packages"
- - string:
- name: DOCKER_REPO_NAME
- default: opnfv/{image}
- description: "docker repo name"
- - string:
- name: DOCKER_TAG
- default: latest
- description: "docker image tag of which will be uploaded to artifacts"
- - string:
- name: STORE_FILE_NAME
- default: image_{image}_{branch}_$BUILD_ID.docker
- description: "stored file name"
+ - string:
+ name: CACHE_DIR
+ default: $WORKSPACE/cache{gs-pathname}
+ description: "the cache to store packages downloaded"
+ - string:
+ name: STORE_URL
+ default: gs://artifacts.opnfv.org/dovetail{gs-pathname}
+ description: "LF artifacts url for storage of dovetail packages"
+ - string:
+ name: DOCKER_REPO_NAME
+ default: opnfv/{image}
+ description: "docker repo name"
+ - string:
+ name: DOCKER_TAG
+ default: latest
+ description: "docker image tag of which will be uploaded to artifacts"
+ - string:
+ name: STORE_FILE_NAME
+ default: image_{image}_{branch}_$BUILD_ID.docker
+ description: "stored file name"
####################################
-#builders for dovetail project
+# builders for dovetail project
####################################
- builder:
name: dovetail-builder-artifacts-upload
builders:
- - shell:
- !include-raw: ./dovetail-artifacts-upload.sh
+ - shell:
+ !include-raw: ./dovetail-artifacts-upload.sh
- builder:
- name: dovetail-workspace-cleanup
+ name: dovetail-upload-artifacts-cache-cleanup
builders:
- - shell: |
- #!/bin/bash
- set -o errexit
-
- echo "Dovetail: cleanup cache used for storage downloaded packages"
-
- /bin/rm -rf $CACHE_DIR
-
- # Remove previous running containers if exist
- if [[ -n "$(docker ps -a | grep $DOCKER_REPO_NAME)" ]]; then
- echo "Removing existing $DOCKER_REPO_NAME containers..."
- docker ps -a | grep $DOCKER_REPO_NAME | awk '{print $1}' | xargs docker rm -f
- t=60
- # Wait max 60 sec for containers to be removed
- while [[ $t -gt 0 ]] && [[ -n "$(docker ps| grep $DOCKER_REPO_NAME)" ]]; do
- sleep 1
- let t=t-1
- done
- fi
-
- # Remove existing images if exist
- if [[ -n "$(docker images | grep $DOCKER_REPO_NAME)" ]]; then
- echo "Docker images to remove:"
- docker images | head -1 && docker images | grep $DOCKER_REPO_NAME
- image_tags=($(docker images | grep $DOCKER_REPO_NAME | awk '{print $2}'))
- for tag in "${image_tags[@]}"; do
- if [[ -n "$(docker images|grep $DOCKER_REPO_NAME|grep $tag)" ]]; then
- echo "Removing docker image $DOCKER_REPO_NAME:$tag..."
- docker rmi -f $DOCKER_REPO_NAME:$tag
- fi
- done
- fi
+ - shell: |
+ #!/bin/bash
+ set -o errexit
+
+ echo "Dovetail: cleanup cache used for storage downloaded packages"
+
+ /bin/rm -rf $CACHE_DIR
+
+- builder:
+ name: dovetail-images-cleanup
+ builders:
+ - shell:
+ !include-raw: ./dovetail-cleanup.sh