Removed kolla related jobs

Change-Id: Iac8f2a8f97a2c3932a9b41bbea62f5f3cab06990
This commit is contained in:
Mateusz Matuszkowiak 2016-04-20 17:53:56 +02:00
parent 17cd76779a
commit 589f077b15
9 changed files with 3 additions and 771 deletions

View File

@ -1,7 +1,7 @@
[jenkins]
user=USER
password=APIKEY
url=https://ci.ng.mirantis.net
url=https://jenkins.ng.mirantis.net
query_plugins_info=False
[job_builder]

View File

@ -1,332 +0,0 @@
#!/bin/bash
#
# Script for deploying OpenStack Kolla on top of Apache Mesos/Marathon cluster
# in custom configurations.
#
# If run inside CI, this script assumes kolla-all-kolla & kolla-all-kolla-mesos
# directories that contain kolla & kolla-mesos repositories.
#
# (c) mzawadzki@mirantis.com
# config:
###############################################################################
## docker:
export LC_ALL=en_US.UTF-8
###############################################################################
PRIMARY_ETH_IP=`ifconfig ${PRIMARY_ETH} | grep 'inet addr:'| \
grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'`
START_PWD=`pwd`
[[ ${-/x} != $- ]] && BASH_OPTION_X="-x"
[[ ${-/e} != $- ]] && BASH_OPTION_E="-e"
# Functions:
###############################################################################
function system-check {
if [[ "`awk '/\/run / {print $7}' /proc/self/mountinfo`" =~ "shared*" ]]; then
echo "Ensure 'sudo mount --make-shared /run' was run on this machine."
echo "Aborting"
exit 1
fi
if [ -z "`docker --version`" ]; then
echo "No docker or no permissions."
echo "Aborting"
exit 1
fi
if ! `which pip > /dev/null 2>&1`; then
echo "pip is missing, aborting."
exit 1
fi
if ! `which virtualenv > /dev/null 2>&1`; then
echo "virtualenv is missing, aborting."
exit 1
fi
if [ -z "`pip list | grep docker-py`" ]; then
echo "docker-py missing, aborting."
exit 1
fi
if [ -z "`tox --version`" ]; then
echo "tox missing, aborting."
exit 1
fi
if [ -z "`ansible --version | grep 1.9`" ]; then
echo "ansible 1.9.* missing, aborting."
exit 1
fi
if [ -z "${JENKINS_HOME}" ] && [ -z "${GERRIT_USER}" ]; then
echo "Seems like script is run outside of CI and no gerrit username"
echo "was set (see --gerrit-user). Aborting."
exit 1
fi
if [ -z "${DOCKER_IMAGE_TAG}" ] || [ "${DOCKER_IMAGE_TAG}" == "_" ]; then
echo "Docker tag for images is not set (see --tag). Assuming 'latest'"
DOCKER_IMAGE_TAG="latest"
fi
}
function print-diagnostics {
echo "-----------------------------------------------------"
echo "Diagnostic info:"
hostname
date
lsb_release -a
uname -a
docker --version
env | sort
echo "Docker tag: "${DOCKER_IMAGE_TAG}
echo "Primary IP: "${PRIMARY_ETH_IP}
#git branch
#git rev-parse HEAD
#git status
#git diff HEAD^
pwd
ls -alh
echo "-----------------------------------------------------"
}
function docker-status {
echo "* current status of Docker:"
docker ps -a
docker volume ls
}
function full-cleanup {
echo "[WARNING] RUNNING CLEANUP:"
docker-status
echo "* stopping and removing mesos docker containers..."
docker stop mesos_slave chronos marathon mesos_master zookeeper mesos-dns
docker rm mesos_slave chronos marathon mesos_master zookeeper mesos-dns
echo "* stopping and removing all kolla docker containers..."
docker ps -a | grep kolla | awk '{system("docker stop -t 0 "$1)}'
docker ps -a | grep kolla | awk '{system("docker rm -f "$1)}'
echo "* removing kolla docker volumes..."
docker volume ls | grep -e mariadb_kolla -e zookeeper_data \
-e kolla_logs_kolla -e neutron_metadata_socket \
| awk '{system("docker volume rm "$2)}'
echo "* removing files in /tmp..."
rm -rf /tmp/.ansible*
#workaround to remove directories created by root
#in some containers
echo "* removing directories with root permissions "
msl=`docker images | grep mesos-slave`
sltag=`echo $msl | awk '{print $2}'`
slim=`echo $msl | awk '{print $1}'`
slave_image="$slim:$sltag"
echo $slave_image
docker run --rm -v /tmp:/tmp $slave_image rm -rf /tmp/mesos
docker run --rm -v /tmp:/tmp $slave_image rm -rf /tmp/kolla*
docker-status
}
function prepare-repos {
cd ${START_PWD}
if [ -z "${JENKINS_HOME}" ]; then
echo "Seems like we run outside of CI."
git clone ssh://${GERRIT_USER}@review.fuel-infra.org:29418/openstack/kolla kolla-all-kolla
cd kolla-all-kolla
git checkout mirantis
cd ..
git clone ssh://${GERRIT_USER}@review.fuel-infra.org:29418/openstack/kolla-mesos kolla-all-kolla-mesos
cd kolla-all-kolla-mesos
git checkout mirantis
cd ..
else
echo "Seems like we run inside CI."
if [ -z "${GERRIT_USER}" ]; then
GERRIT_USER="nextgen-ci"
fi
if [ -n "${GERRIT_BRANCH}" ]; then
echo "* seems like this is gerrit-triggered job, fetching the change."
GERRIT_PROJECT_NAME="`echo ${GERRIT_PROJECT} | sed 's/openstack\///'`"
cd kolla-all-${GERRIT_PROJECT_NAME}
git fetch ssh://${GERRIT_USER}@review.fuel-infra.org:29418/${GERRIT_PROJECT} ${GERRIT_REFSPEC} && git checkout FETCH_HEAD
cd ..
else
echo "* seems like this is manual-triggered job."
fi
fi
# TODO(mzawadzki): hack, to be removed after 17648
# (Use constraints only on multinode deployment) is merged.
# cd kolla-all-kolla-mesos
# git fetch ssh://${GERRIT_USER}@review.fuel-infra.org:29418/openstack/kolla-mesos refs/changes/48/17648/1 && git cherry-pick FETCH_HEAD
# cd ..
rm -rf repos
mkdir repos
cd repos
mkdir mesos openstack
cp -r ${START_PWD}/kolla-all-kolla mesos/kolla
cp -r ${START_PWD}/kolla-all-kolla-mesos mesos/kolla-mesos
cp -r ${START_PWD}/kolla-all-kolla openstack/kolla
cp -r ${START_PWD}/kolla-all-kolla-mesos openstack/kolla-mesos
}
function deploy-mesos {
cd ${START_PWD}/repos/mesos/kolla-mesos
# Configure & install kolla-mesos:
tox -e genconfig
sed -i "s/network_interface: \"eth2\"/network_interface: \"${PRIMARY_ETH}\"/g" etc/globals.yml
sed -i "s/docker_registry: \"operator.local:5000\"/docker_registry: \"${DOCKER_PRIVATE_REGISTRY}\"/g" etc/globals.yml
sed -i "s/docker_namespace: \"kollaglue\"/docker_namespace: \"${DOCKER_PRIVATE_REGISTRY_NAMESPACE}\"/g" etc/globals.yml
sed -i "s/openstack_release: \"2.0.0\"/openstack_release: \"${DOCKER_IMAGE_TAG}\"/g" etc/globals.yml
sed -i 's/kolla_base_distro: "centos"/kolla_base_distro: "ubuntu"/g' etc/globals.yml
sed -i 's/\/etc\/kolla/\/tmp\/kolla/g' ansible/group_vars/all.yml
# Hack:
#cp etc/passwords.yml /tmp
#sed -i "s/file_utils.find_config_file('passwords.yml')/'\/tmp\/passwords.yml'/g" kolla_mesos/cmd/deploy.py
PWD_ESCAPED="`pwd |sed -e 's:/:\\\/:g'`"
sed -i "s/\/usr\/local\/share\/kolla-mesos/${PWD_ESCAPED}/g" kolla_mesos/common/file_utils.py
virtualenv venv
source venv/bin/activate
pip install --upgrade .
# Deploy Mesos services in containers:
docker stop mesos_slave chronos marathon mesos_master zookeeper mesos-dns || true
docker rm mesos_slave chronos marathon mesos_master zookeeper mesos-dns || true
# note: ensure no DNS servers are running on your machine (e.g. dnsmasq)
# prior to mesos-dns:
if [ -n "`netstat -nlt | grep ':53'`" ]; then
echo "Port 53 is already in use, mesos-dns won't be able to start, aborting."
netstat -pnlt | grep 53
exit 1
fi
KOLLA_MESOS_ANSIBLE_EXTRA_OPTIONS=""
if ${AIO}; then
KOLLA_MESOS_ANSIBLE_EXTRA_OPTIONS="--aio"
fi
kolla-mesos-ansible deploy ${KOLLA_MESOS_ANSIBLE_EXTRA_OPTIONS} --config-dir etc/
docker ps | grep ${DOCKER_IMAGE_TAG} | grep -e mesos -e marathon -e zookeeper -e chronos
# verify web UIs for Mesos & Marathon are accessible & Mesos slave is connected:
# http://172.20.9.25:5050
# http://172.20.9.25:8080
deactivate
}
function configure-and-install-kolla-mesos {
cd ${START_PWD}/repos/openstack/kolla-mesos
# Configure & install kolla-mesos:
tox -e genconfig
# set these accordingly to repo, namespace and tag:
sed -i "s/docker_registry: \"operator.local:5000\"/docker_registry: \"${DOCKER_PRIVATE_REGISTRY}\"/g" etc/globals.yml
sed -i "s/docker_namespace: \"kollaglue\"/docker_namespace: \"${DOCKER_PRIVATE_REGISTRY_NAMESPACE}\"/g" etc/globals.yml
# use tag "latest" for latest images from mirantis branch
# or "mirantis_CR" (e.g. "mirantis_17317") for images built for change request
sed -i "s/openstack_release: \"2.0.0\"/openstack_release: \"${DOCKER_IMAGE_TAG}\"/g" etc/globals.yml
sed -i 's/kolla_base_distro: "centos"/kolla_base_distro: "ubuntu"/g' etc/globals.yml
# set this accordingly to primary public network interface:
sed -i "s/kolla_internal_address: \"10.10.10.254\"/kolla_internal_address: \"${PRIMARY_ETH_IP}\"/g" etc/globals.yml
sed -i "s/network_interface: \"eth2\"/network_interface: \"${PRIMARY_ETH}\"/g" etc/globals.yml
sed -i "s/neutron_external_interface: \"eth2\"/neutron_external_interface: \"${SECONDARY_ETH}\"/g" etc/globals.yml
sed -i 's/enable_horizon: "no"/enable_horizon: "yes"/g' etc/globals.yml
sed -i 's/enable_memcached: "no"/enable_memcached: "yes"/g' etc/globals.yml
cp etc/kolla-mesos.conf.sample etc/kolla-mesos.conf
# set this accordingly to primary public network interface:
sed -i -e "s/#host = http:\/\/127.0.0.1/host = http:\/\/${PRIMARY_ETH_IP}/g" -e "s/#host = 127.0.0.1/host = ${PRIMARY_ETH_IP}/g" etc/kolla-mesos.conf
sed -i -e "s/#private_interface = eth1/private_interface = ${PRIMARY_ETH}/g" -e "s/#public_interface = eth2/public_interface = ${PRIMARY_ETH}/g" etc/kolla-mesos.conf
# (verify manually that all entries got set correctly)
cat etc/globals.yml
grep host etc/kolla-mesos.conf
grep _interface etc/kolla-mesos.conf
# set resources:
sed -i "s/default('128')/default('1024')/g" config/keystone/defaults/main.yml
sed -i "s/default('0.3')/default('1.0')/g" config/keystone/defaults/main.yml
sed -i "s/default('128')/default('1024')/g" config/horizon/defaults/main.yml
sed -i "s/default('0.3')/default('1.0')/g" config/horizon/defaults/main.yml
sed -i "s/default('128')/default('1024')/g" config/mariadb/defaults/main.yml
sed -i "s/default('0.3')/default('1.0')/g" config/mariadb/defaults/main.yml
sed -i "s/default('128')/default('1024')/g" config/memcached/defaults/main.yml
sed -i "s/default('0.3')/default('1.0')/g" config/memcached/defaults/main.yml
sed -i "s/default('128')/default('1024')/g" config/rabbitmq/defaults/main.yml
sed -i "s/default('0.3')/default('1.0')/g" config/rabbitmq/defaults/main.yml
# set marathon_framework (autodetect doesn't work)
sed -i 's/# marathon_framework: "marathon"/marathon_framework: "marathon"/g' etc/globals.yml
# set correct mesos domain name:
sed -i 's/mesos_dns_domain: "kolla-team-env.local"/mesos_dns_domain: "mesos"/g' etc/globals.yml
#cp etc/passwords.yml /tmp
#sed -i "s/file_utils.find_config_file('passwords.yml')/'\/tmp\/passwords.yml'/g" kolla_mesos/cmd/deploy.py
#cp etc/globals.yml /tmp
#sed -i "s/file_utils.find_config_file('globals.yml')/'\/tmp\/globals.yml'/g" kolla_mesos/cmd/deploy.py
PWD_ESCAPED="`pwd |sed -e 's:/:\\\/:g'`"
sed -i "s/self.base_dir = os.path.abspath(file_utils.find_base_dir())/self.base_dir = '${PWD_ESCAPED}'/g" kolla_mesos/service.py
sed -i "s/\/usr\/local\/share\/kolla-mesos/${PWD_ESCAPED}/g" kolla_mesos/common/file_utils.py
sed -i "s/\/etc\/kolla-mesos/etc/g" kolla_mesos/common/file_utils.py
virtualenv venv
source venv/bin/activate
# make sure "nameserver 172.20.9.25" is the first nameserver entry in /etc/resolv.conf on your host
cat /etc/resolv.conf
pip install --upgrade .
cd ${START_PWD}/repos/openstack/kolla
pip install --upgrade .
which kolla-build
which kolla-mesos-cleanup
which kolla-mesos-deploy
}
function deploy-kolla-on-mesos {
cd ${START_PWD}/repos/openstack/kolla-mesos
# 2.4. Deploy Kolla OpenStack on Mesos:
docker rm $(docker ps -a | grep Exited | awk '{print $1}') || true
cd ${START_PWD}/repos/openstack/kolla-mesos
source venv/bin/activate
kolla-mesos --config-dir etc/ deployment cleanup
kolla-mesos --config-dir etc/ deployment run
sleep 10
while [ -n "`docker ps | grep -i toolbox`" ]; do
echo "Waiting for all toolbox containers to finish..."
sleep 5
done
# verify OpenStack is working:
pip install --upgrade pbr
pip install --upgrade python-openstackclient
which openstack
openstack --version
source ./openrc
openstack user list
# navigate to: http://172.20.9.25
deactivate
}
###############################################################################
# Run:
print-diagnostics
system-check
if ${FULL_CLEANUP}; then
full-cleanup || true
fi
prepare-repos
if ! ${OPENSTACK_ONLY}; then
if ${AIO}; then
echo "Preparing AIO Mesos cluster."
deploy-mesos
if ${INFRA_ONLY}; then
exit
fi
fi
fi
if ! ${INFRA_ONLY}; then
echo "Configuring and installing kolla-mesos:"
configure-and-install-kolla-mesos
echo "Deploying Kolla OpenStack on Mesos cluster:"
deploy-kolla-on-mesos
if ${OPENSTACK_ONLY}; then
exit
fi
fi

View File

@ -1,26 +0,0 @@
#!/bin/bash -x
# Quick & dirty cleanup script for AIO kolla/kolla-mesos environemnt.
# To be used if redepolyment fails on the same machine.
# Please use with care!
#
# (c) mzawadzki@mirantis.com
echo "Stopping and removing mesos docker containers..."
docker stop mesos_slave chronos marathon mesos_master zookeeper mesos-dns
docker rm mesos_slave chronos marathon mesos_master zookeeper mesos-dns
sleep 5
echo "Stopping and removing all kolla docker containers..."
docker ps -a | grep kolla | awk '{system("docker stop -t 0 "$1)}'
docker ps -a | grep kolla | awk '{system("docker rm -f "$1)}'
echo "Removing kolla docker volumes..."
docker volume ls | grep -e mariadb_kolla -e zookeeper_data \
-e kolla_logs_kolla -e neutron_metadata_socket \
| awk '{system("docker volume rm "$2)}'
#echo "Removing files in /tmp"
#rm -rf /tmp/.ansible*
#rm -rf /tmp/kolla*
#rm -rf /tmp/mesos

View File

@ -1,223 +0,0 @@
#!/bin/bash
#
# Script for building Kolla Docker images with Jenkins.
# arguments: --build-all (optional, build all images only, default: false)
#
# (c) mzawadzki@mirantis.com
set +x
###############################################################################
# config:
DOCKER_PRIVATE_REGISTRY_PRIMARY="registry01-scc.fuel-infra.org"
DOCKER_PRIVATE_REGISTRY_SECONDARY="registry01-bud.fuel-infra.org"
DOCKER_PRIVATE_REGISTRY_USERNAME="nextgen"
DOCKER_PRIVATE_REGISTRY_EMAIL="kolla@mirantis.com"
DOCKER_PRIVATE_REGISTRY_PASSWORD="ti5Eeng3"
DOCKER_PRIVATE_REGISTRY_USERNAME="nextgen"
DOCKER_PRIVATE_REGISTRY_NAMESPACE="nextgen"
DOCKER_IMAGE_TAG="${GERRIT_BRANCH}_${GERRIT_CHANGE_NUMBER}"
KOLLA_IMAGES_TO_BUILD="chronos,marathon,mesos-master,mesos-slave,\
mesos-dns,zookeeper,kolla-toolbox,glance,horizon,keystone,mariadb,\
memcached,neutron,nova,rabbitmq"
NUMBER_OF_THREADS=6
# TODO(mzawadzki): implement scenario where 1 OpenStack service
# has multiple Docker images.
COMMAND_TO_LIST_CHANGED_FILES="git diff-tree --no-commit-id --name-only \
-r HEAD"
# COMMAND_TO_LIST_CHANGED_FILES="echo -e docker/ironic/test\ndocker/nova/test\
# \ntest\ndocker/horizon/test2/test" #test
###############################################################################
# Functions:
function push_docker_images {
set -x
DOCKER_REGISTRY=$1
docker login -u ${DOCKER_PRIVATE_REGISTRY_USERNAME} \
-e ${DOCKER_PRIVATE_REGISTRY_EMAIL} \
-p ${DOCKER_PRIVATE_REGISTRY_PASSWORD} ${DOCKER_REGISTRY}
docker images | grep kollaglue | grep ${DOCKER_IMAGE_TAG} | \
awk -v reg=${DOCKER_REGISTRY} \
-v ns=${DOCKER_PRIVATE_REGISTRY_NAMESPACE} -v tag=${DOCKER_IMAGE_TAG} '
function basename(path) {
sub(".*/", "", path)
return path
}
{
print "* tagging "$3" to "reg"/"ns"/"basename($1)":"tag
system("docker tag "$3" "reg"/"ns"/"basename($1)":"tag);
system("docker push "reg"/"ns"/"basename($1)":"tag);
}
'
set +x
}
function print_diagnostics {
echo "-----------------------------------------------------"
echo "** Diagnostic info:"
set -x
hostname
date
lsb_release -a
uname -a
docker --version
env
git branch
git status
pwd
ls -alh
set +x
}
function install_and_configure_kolla {
echo "-----------------------------------------------------"
echo "** Setting up Kolla in virtual environment, "
echo "modyfing config and repos:"
set -x
sed -i "s/archive.ubuntu.com/us3.archive.ubuntu.com/g" \
docker/base/sources.list
grep 'archive.ubuntu.com' docker/base/sources.list
sed -i "s/mirror.fuel-infra.org/mirror.seed-us1.fuel-infra.org/g" \
docker/base/sources.list
grep 'fuel-infra.org' docker/base/sources.list
virtualenv kolla_venv
source kolla_venv/bin/activate
pip install tox
pip install .
hash -r
which kolla-build
tox --version
tox -e genconfig
sed -i "s/\#default =.*/default = ${KOLLA_IMAGES_TO_BUILD}/g" \
etc/kolla/kolla-build.conf
grep 'default =' etc/kolla/kolla-build.conf
set +x
}
function build_kolla {
echo "-----------------------------------------------------"
echo "** Building Kolla:"
set -x
# FIXME(mzawadzki): +e should not be used, it should be fixed properly,
# see # https://review.fuel-infra.org/#/c/16871/
set +e
kolla-build --profile default --config-dir etc/kolla/ \
-b ubuntu -t binary \
--tag ${DOCKER_IMAGE_TAG}
se -e
set +x
# commented out code for building just specific images:
# for f in `${COMMAND_TO_LIST_CHANGED_FILES} | \
# sed -nr 's/^docker\/([a-z]+).*/\1/p'`
# do
# echo "*"${f}":"
# set -x
# set +e
# kolla-build --registry ${DOCKER_PRIVATE_REGISTRY_PRIMARY} \
# --namespace ${DOCKER_PRIVATE_REGISTRY_NAMESPACE} \
# --tag ${DOCKER_IMAGE_TAG} \
# --push -b ubuntu -t binary ${f}
# set -e
# set +x
# done
}
function print_report {
echo "-----------------------------------------------------"
echo "** Local cache: all images for this change request:"
set -x
docker images | grep ${DOCKER_IMAGE_TAG}
set +x
echo -e "\n** Remote registry: all images for this change request:"
set -x
curl -s "http://${DOCKER_PRIVATE_REGISTRY_PRIMARY}:5002\
?name=${DOCKER_PRIVATE_REGISTRY_NAMESPACE}\
&tag=${DOCKER_IMAGE_TAG}&format=dictionary"
echo -e "\n"
curl -s "http://${DOCKER_PRIVATE_REGISTRY_SECONDARY}:5002\
?name=${DOCKER_PRIVATE_REGISTRY_NAMESPACE}\
&tag=${DOCKER_IMAGE_TAG}&format=dictionary"
set +x
cat <<EOM
-----------------------------------------------------
** Build finished.
How to use your images:
1) If you want to pull them with kolla-mesos-deploy:
Set these lines in kolla-mesos global.yaml:
docker_registry: "${DOCKER_PRIVATE_REGISTRY_PRIMARY}"
# or:
docker_registry: "${DOCKER_PRIVATE_REGISTRY_SECONDARY}"
docker_namespace: "${DOCKER_PRIVATE_REGISTRY_NAMESPACE}"
openstack_release: "${DOCKER_IMAGE_TAG}
kolla_base_distro: "ubuntu"
network_interface: "NAME" # (where NAME is e.g. eth0 or p1p1)
And run kolla-mesos-deploy.
2) If you want to pull them manually to local cache:
EOM
for DOCKER_PRIVATE_REGISTRY in ${DOCKER_PRIVATE_REGISTRY_PRIMARY} \
${DOCKER_PRIVATE_REGISTRY_SECONDARY}
do
printf "docker pull ${DOCKER_PRIVATE_REGISTRY}/" \
"${DOCKER_PRIVATE_REGISTRY_NAMESPACE}/" \
"NAME_OF_THE_IMAGE:${DOCKER_IMAGE_TAG}"
echo -e "\nin this case this will be:\n"
printf -v DOCKER_REGISTRY_QUERY "%s%s%s" \
"http://${DOCKER_PRIVATE_REGISTRY}:5002" \
"?name=${DOCKER_PRIVATE_REGISTRY_NAMESPACE}" \
"&tag=${DOCKER_IMAGE_TAG}&format=dictionary"
echo "--copy/paste--"
curl -s $DOCKER_REGISTRY_QUERY | \
sed -e 's/ //g' -e "s/u'//g" -e "s/[{}']//g" -e 's/\[//g' -e 's/\]//g' \
-e 's/,/\n/g' | \
awk -v reg=${DOCKER_PRIVATE_REGISTRY} \
-v ns=${DOCKER_PRIVATE_REGISTRY_NAMESPACE} \
-v tag=${DOCKER_IMAGE_TAG} -F\: '
function basename(path) {
sub(".*/", "", path)
return path
}
{
print "docker pull "reg"/"ns"/"basename($1)":"$2
}
'
echo "--copy/paste--"
echo -e "\n"
done
cat <<EOM
Note: for some builds (CI jobs) images are only pushed to 1 registry.
-----------------------------------------------------
EOM
}
###############################################################################
# Code:
print_diagnostics
install_and_configure_kolla
if [ ${BUILD_ALL} == "true" ]; then
DOCKER_IMAGE_TAG="latest"
else
echo -e "\nlist of file affected by change-request:"
${COMMAND_TO_LIST_CHANGED_FILES}
echo "-----------------------------------------------------"
echo "** Rebuilding Docker images for affected components:"
echo "** (rebuilding ALL in fact, to be optimized in the future...)"
fi
time build_kolla
echo "-----------------------------------------------------"
echo "** Pushing images to the primary & secondary Docker registry:"
time push_docker_images ${DOCKER_PRIVATE_REGISTRY_PRIMARY}
time push_docker_images ${DOCKER_PRIVATE_REGISTRY_SECONDARY}
print_report

View File

@ -49,7 +49,5 @@
- 'example-manual-job-{repo}'
- 'example-trigger-job-{repo}'
repo:
- 'kolla':
branch: 'mirantis'
- 'kolla-mesos':
branch: 'mirantis'
- 'nextgen-specs':
branch: 'master'

View File

@ -1,66 +0,0 @@
#
# Template for job executed manually
#
- job-template:
name: build-all-job-{repo}
description: |
Kolla build job executed manually or by merged event
node: standard
properties:
- inject:
properties-content: |
BUILD_ALL=true
builders:
- shell:
!include-raw-escape 'builders/kolla_docker_build.sh'
concurrent: true
wrappers:
- nextgen-ci-jenkins
scm:
- fuel-infra:
scm-basedir: ''
scm-branch: '{branch}'
scm-repo: 'openstack/{repo}'
triggers:
- fuel-infra-patchset-merged:
project-pattern: 'openstack/{repo}'
publishers:
- logs-private
#
# Templates for job triggered by gerrit events
#
- job-template:
name: build-changed-trigger-job-{repo}
description: |
Kolla build job executed by trigger
node: standard
properties:
- inject:
properties-content: |
BUILD_ALL=false
builders:
- shell:
!include-raw-escape 'builders/kolla_docker_build.sh'
concurrent: true
wrappers:
- nextgen-ci-jenkins
scm:
- fuel-infra_trigger:
scm-basedir: ''
scm-branch: '{branch}'
scm-repo: 'openstack/{repo}'
triggers:
- fuel-infra:
project-pattern: 'openstack/{repo}'
publishers:
- logs-private
- project:
name: kolla-build-jobs
jobs:
- 'build-all-job-{repo}'
- 'build-changed-trigger-job-{repo}'
repo:
- 'kolla':
branch: 'mirantis'

View File

@ -1,89 +0,0 @@
#
# Template for job executed manually
#
- job-template:
name: deploy-manual-job-{repo}
description: |
Kolla deploy job executed manually
node: rax
properties:
- inject:
properties-content: |
AIO=true
PRIMARY_ETH="p1p1.602"
SECONDARY_ETH="p1p1"
DOCKER_IMAGE_TAG="latest"
FULL_CLEANUP=true
DOCKER_PRIVATE_REGISTRY_PRIMARY="registry01-scc.fuel-infra.org"
DOCKER_PRIVATE_REGISTRY_SECONDARY="registry01-bud.fuel-infra.org"
DOCKER_PRIVATE_REGISTRY=${DOCKER_PRIVATE_REGISTRY_PRIMARY}
DOCKER_PRIVATE_REGISTRY_NAMESPACE="nextgen"
DOCKER_IMAGE_TAG="${GERRIT_BRANCH}_${GERRIT_CHANGE_NUMBER}"
GERRIT_USER=""
INFRA_ONLY=false
OPENSTACK_ONLY=false
builders:
- shell:
!include-raw-escape 'builders/kolla-deploy-custom.sh'
concurrent: false
wrappers:
- nextgen-ci-jenkins
scm:
- fuel-infra:
scm-basedir: ''
scm-branch: '{branch}'
scm-repo: 'openstack/{repo}'
- kolla-all
#
# Template for job triggered by gerrit event
#
- job-template:
name: deploy-trigger-job-{repo}
description: |
Kolla deploy job executed by trigger
node: rax
properties:
- inject:
properties-content: |
AIO=true
PRIMARY_ETH="p1p1.602"
SECONDARY_ETH="p1p1"
FULL_CLEANUP=true
DOCKER_PRIVATE_REGISTRY_PRIMARY="registry01-scc.fuel-infra.org"
DOCKER_PRIVATE_REGISTRY_SECONDARY="registry01-bud.fuel-infra.org"
DOCKER_PRIVATE_REGISTRY=${DOCKER_PRIVATE_REGISTRY_PRIMARY}
DOCKER_PRIVATE_REGISTRY_NAMESPACE="nextgen"
DOCKER_IMAGE_TAG="${GERRIT_BRANCH}_${GERRIT_CHANGE_NUMBER}"
GERRIT_USER=""
INFRA_ONLY=false
OPENSTACK_ONLY=false
builders:
- shell:
!include-raw-escape 'builders/kolla-deploy-custom.sh'
concurrent: false
wrappers:
- nextgen-ci-jenkins
scm:
- fuel-infra_trigger:
scm-basedir: ''
scm-branch: '{branch}'
scm-repo: 'openstack/{repo}'
- kolla-all
triggers:
- fuel-infra-no-vote:
project-pattern: 'openstack/{repo}'
publishers:
- logs-private
- project:
name: kolla-deploy-jobs
jobs:
- 'deploy-manual-job-{repo}'
- 'deploy-trigger-job-{repo}'
repo:
- 'kolla':
branch: 'mirantis'
- 'kolla-mesos':
branch: 'mirantis'

View File

@ -91,22 +91,6 @@
# Static repositories
#
# Kolla repos:
- scm:
name: kolla-all
scm:
- git:
url: 'ssh://nextgen-ci@review.fuel-infra.org:29418/openstack/kolla.git'
basedir: 'kolla-all-kolla'
skip-tag: true
branches:
- 'mirantis'
- git:
url: 'ssh://nextgen-ci@review.fuel-infra.org:29418/openstack/kolla-mesos.git'
basedir: 'kolla-all-kolla-mesos'
skip-tag: true
branches:
- 'mirantis'
#
# SSH credentials

View File

@ -1,14 +0,0 @@
- project:
name: verify-kolla-tox-tests
jobs:
- 'verify-tox-{tox-test}-{job-label}':
tox-test:
- pep8
- py27
job-label:
- 'kolla':
branch: 'mirantis'
repo: 'openstack/kolla'
- 'kolla-mesos':
branch: 'mirantis'
repo: 'openstack/kolla-mesos'