--- /dev/null
+- job:
+ name: 'promote-staging-image'
+ description: "Delete actual image and cut '-staging' from image name"
+
+ concurrent: false
+ node: 'jenkins-master'
+
+ parameters:
+ - string:
+ name: IMAGE_NAME
+ description: "Name of image WITHOUT 'staging' - used for glance"
+ default: ""
+
+ scm:
+ - git:
+ url: 'https://review.fuel-infra.org/tools/sustaining/'
+ branches:
+ - origin/master
+
+ wrappers:
+ - timestamps
+ - openstack-creds
+ - credentials-binding:
+ - username-password-separated:
+ credential-id: maintenance-ci-robot-password
+ username: JJB_USER
+ password: JJB_PASS
+
+ - timeout:
+ fail: true
+ timeout: 30
+
+ builders:
+ - shell:
+ !include-raw: common/scripts/promote_staging_image.sh
--- /dev/null
+#!/bin/bash
+
+set -ex
+
+pushd maintenance-ci
+
+STAGING_IMAGE_NAME="${IMAGE_NAME?}-staging"
+GLANCE_IMAGE_NAME="${IMAGE_NAME?}"
+
+set +x
+source "${OPENRC_FILE?}"
+OPENSTACK_CLIENTS_VENV="${OPENSTACK_CLIENTS_VENV:-/home/jenkins/venv-openstack-clients}"
+if [[ ! -d "${OPENSTACK_CLIENTS_VENV}" ]] ; then
+ pip install virtualenv
+ virtualenv "${OPENSTACK_CLIENTS_VENV}"
+ source "${OPENSTACK_CLIENTS_VENV}"/bin/activate
+ pip install openstackclient
+ deactivate
+fi
+source "${OPENSTACK_CLIENTS_VENV}"/bin/activate
+
+set -x
+openstack image show "${STAGING_IMAGE_NAME}"
+openstack image delete "${GLANCE_IMAGE_NAME}" || true
+openstack image set --name "${GLANCE_IMAGE_NAME}" "${STAGING_IMAGE_NAME}"
+deactivate
\ No newline at end of file