Add bionic based build jobs to Zuul build configuraton

This patch adds bionic based build jobs to Zuul config
to create loci images based on Bionic.

Change-Id: I8f691908b8f7aa482e716559e9e1422f2d4d5d6c
This commit is contained in:
erihban 2019-06-13 11:50:56 +02:00
parent 0f959439f0
commit 070f3b694a
3 changed files with 162 additions and 6 deletions

24
openstack/loci/build-stein.sh Executable file
View File

@ -0,0 +1,24 @@
#!/bin/bash
SCRIPT=`realpath $0`
SCRIPT_DIR=`dirname ${SCRIPT}`
## Only build from main folder
# Replace with Registry URI with your registry like your
# dockerhub user. Example: "docker.io/openstackhelm"
VERSION=${VERSION:-"latest"}
OPENSTACK_VERSION="stable/stein"
#pycrypto was dropped after queens so we need to override the defaults
keystone_pip_packages=${keystone_pip_packages:-"'python-openstackclient'"}
heat_pip_packages=${heat_pip_packages:-"''"}
barbican_pip_packages=${barbican_pip_packages:-"''"}
glance_pip_packages=${glance_pip_packages:-"'python-swiftclient'"}
cinder_pip_packages=${cinder_pip_packages:-"'python-swiftclient'"}
neutron_pip_packages=${neutron_pip_packages:-"''"}
nova_pip_packages=${nova_pip_packages:-"''"}
horizon_pip_packages=${horizon_pip_packages:-"''"}
senlin_pip_packages=${senlin_pip_packages:-"''"}
congress_pip_packages=${congress_pip_packages:-"'python-congressclient'"}
magnum_pip_packages=${magnum_pip_packages:-"''"}
ironic_pip_packages=${ironic_pip_packages:-"''"}
neutron_sriov_pip_packages=${neutron_sriov_pip_packages:-"''"}
source ${SCRIPT_DIR}/build.sh

View File

@ -169,6 +169,8 @@ REGISTRY_URI=${REGISTRY_URI:-"172.17.0.1:5000/openstackhelm/"}
VERSION=${VERSION:-"latest"}
# The openstack branch to build, if no per project branch is given.
OPENSTACK_VERSION=${OPENSTACK_VERSION:-"master"}
# Sepcify OS distribution
DISTRO=${DISTRO:-"ubuntu_xenial"}
# extra build arguments for the base image. See loci's dockerfiles for
# arguments that could be used for example.
base_extra_build_args=${base_extra_build_args:-"--force-rm --pull --no-cache"}
@ -177,7 +179,7 @@ default_project_extra_build_args=${default_project_extra_build_args:-"--force-rm
#Log location
LOG_PREFIX="/tmp/loci-log-"
#Defaults for projects
keystone_profiles=${keystone_profiles:-"'fluent apache ldap'"}
keystone_profiles=${keystone_profiles:-"'fluent apache python-ldap'"}
keystone_pip_packages=${keystone_pip_packages:-"'pycrypto python-openstackclient'"}
heat_profiles=${heat_profiles:-"'fluent apache'"}
heat_pip_packages=${heat_pip_packages:-"pycrypto"}
@ -232,7 +234,7 @@ case ${BASE_IMAGE} in
#Mark the need to build image from LOCI Dockerfiles
BUILD_IMAGE="yes"
#Makes sure the name of the distro is consistent with other OSH-images.
DISTRO="ubuntu_xenial"
DISTRO="ubuntu_bionic"
;;
leap15)
BUILD_IMAGE="yes"
@ -248,7 +250,7 @@ case ${BASE_IMAGE} in
;;
*)
BUILD_IMAGE="no"
DISTRO="ubuntu_xenial"
DISTRO="${DISTRO}"
;;
esac

View File

@ -17,35 +17,47 @@
check:
jobs:
- openstack-helm-images-build-openstack-loci-master-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-master-ubuntu_bionic
- openstack-helm-images-build-openstack-loci-ocata-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-pike-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-queens-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-rocky-opensuse_15
- openstack-helm-images-build-openstack-loci-rocky-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-rocky-ubuntu_bionic
- openstack-helm-images-build-openstack-loci-stein-ubuntu_bionic
gate:
jobs:
- openstack-helm-images-upload-openstack-loci-master-ubuntu_xenial
- openstack-helm-images-upload-openstack-loci-master-ubuntu_bionic
- openstack-helm-images-upload-openstack-loci-ocata-ubuntu_xenial
- openstack-helm-images-upload-openstack-loci-pike-ubuntu_xenial
- openstack-helm-images-upload-openstack-loci-queens-ubuntu_xenial
- openstack-helm-images-upload-openstack-loci-rocky-opensuse_15
- openstack-helm-images-upload-openstack-loci-rocky-ubuntu_xenial
- openstack-helm-images-upload-openstack-loci-rocky-ubuntu_bionic
- openstack-helm-images-upload-openstack-loci-stein-ubuntu_bionic
promote:
jobs:
- openstack-helm-images-promote-openstack-loci-master-ubuntu_xenial
- openstack-helm-images-promote-openstack-loci-master-ubuntu_bionic
- openstack-helm-images-promote-openstack-loci-ocata-ubuntu_xenial
- openstack-helm-images-promote-openstack-loci-pike-ubuntu_xenial
- openstack-helm-images-promote-openstack-loci-queens-ubuntu_xenial
- openstack-helm-images-promote-openstack-loci-rocky-opensuse_15
- openstack-helm-images-promote-openstack-loci-rocky-ubuntu_xenial
- openstack-helm-images-promote-openstack-loci-rocky-ubuntu_bionic
- openstack-helm-images-promote-openstack-loci-stein-ubuntu_bionic
periodic:
jobs:
- openstack-helm-images-build-openstack-loci-master-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-master-ubuntu_bionic
- openstack-helm-images-build-openstack-loci-ocata-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-pike-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-queens-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-rocky-opensuse_15
- openstack-helm-images-build-openstack-loci-rocky-ubuntu_xenial
- openstack-helm-images-build-openstack-loci-rocky-ubuntu_bionic
- openstack-helm-images-build-openstack-loci-stein-ubuntu_bionic
- job:
name: openstack-helm-images-build-openstack-loci-master-ubuntu_xenial
@ -260,7 +272,125 @@
vars: *build_master_xenial_images
files: *loci-files
# Bionic
- job:
name: openstack-helm-images-build-openstack-loci-master-ubuntu_bionic
# Inherits secrets and vars
parent: openstack-helm-images-build
description: Build master LOCI images for bionic
# Increase timeout due to many images to build
timeout: 5400
# This enables depends-on to work by using local repos
required-projects:
- openstack/loci
# Fork of standard playbook to build prep images first (reusing
# role) with a different zuul_role_dir, publish wheels on http server.
# zuul_work_dir: "src/opendev.org/openstack/loci"
run: zuul.d/playbooks/build-loci.yml
vars: &build_master_bionic_images
branchname: "master"
shortbranchname: "master"
distroname: "ubuntu_bionic"
from: "docker.io/ubuntu:18.04"
python3: "yes"
#172.17.0.1 is default docker0 ip.
wheels_location: "http://172.17.0.1:8080/wheels.tar.gz"
prep_docker_images:
- context: "."
repository: openstackhelm/requirements
build_args:
- "FROM='{{ from }}'"
- "PYTHON3={{ python3 }}"
- "PROJECT='requirements'"
- "PROJECT_REF={{ branchname }}"
- <<: *requirements_project
# For keystone replace ldap by python-ldap
docker_images:
- context: "."
repository: openstackhelm/keystone
build_args:
- "FROM='{{ from }}'"
- "PYTHON3={{ python3 }}"
- "PROJECT='keystone'"
- "PROJECT_REF={{ branchname }}"
- "PROFILES='fluent apache python-ldap {{ shortbranchname }}'"
- "PIP_PACKAGES='python-openstackclient'"
- "WHEELS='{{ wheels_location }}'"
tags: *imagetag
- <<: *glance_project
- <<: *cinder_project
- <<: *nova_project
- <<: *neutron_project
- <<: *horizon_project
- <<: *heat_project
- <<: *barbican_project
- job:
name: openstack-helm-images-upload-openstack-loci-master-ubuntu_bionic
description: Build and upload master LOCI images for bionic
# Inherits secrets and vars
parent: openstack-helm-images-upload
# Increase timeout due to many images to build
timeout: 5400
# This enables depends-on to work by using local repos
required-projects:
- openstack/loci
run: zuul.d/playbooks/build-loci.yml
vars: *build_master_bionic_images
files: *loci-files
- job:
name: openstack-helm-images-promote-openstack-loci-master-ubuntu_bionic
parent: openstack-helm-images-promote
description: Promote previously published loci bionic master images
vars: *build_master_bionic_images
files: *loci-files
# Rocky-bionic
- job:
name: openstack-helm-images-build-openstack-loci-rocky-ubuntu_bionic
parent: openstack-helm-images-build-openstack-loci-master-ubuntu_bionic
description: Build rocky LOCI images for bionic
vars: &build_rocky_bionic_images
<<: *build_master_bionic_images
branchname: "stable/rocky"
shortbranchname: "rocky"
- job:
name: openstack-helm-images-upload-openstack-loci-rocky-ubuntu_bionic
parent: openstack-helm-images-upload-openstack-loci-master-ubuntu_bionic
description: Build and upload rocky LOCI images for bionic
vars: *build_rocky_bionic_images
- job:
name: openstack-helm-images-promote-openstack-loci-rocky-ubuntu_bionic
parent: openstack-helm-images-promote-openstack-loci-master-ubuntu_bionic
description: Promote previously published loci bionic rocky images
vars: *build_rocky_bionic_images
# Stein-bionic
- job:
name: openstack-helm-images-build-openstack-loci-stein-ubuntu_bionic
parent: openstack-helm-images-build-openstack-loci-master-ubuntu_bionic
description: Build stein LOCI images for bionic
vars: &build_stein_bionic_images
<<: *build_master_bionic_images
branchname: "stable/stein"
shortbranchname: "stein"
- job:
name: openstack-helm-images-upload-openstack-loci-stein-ubuntu_bionic
parent: openstack-helm-images-upload-openstack-loci-master-ubuntu_bionic
description: Build and upload stein LOCI images for bionic
vars: *build_stein_bionic_images
- job:
name: openstack-helm-images-promote-openstack-loci-stein-ubuntu_bionic
parent: openstack-helm-images-promote-openstack-loci-master-ubuntu_bionic
description: Promote previously published loci bionic stein images
vars: *build_stein_bionic_images
# Rocky-xenial
- job:
name: openstack-helm-images-build-openstack-loci-rocky-ubuntu_xenial
parent: openstack-helm-images-build-openstack-loci-master-ubuntu_xenial
@ -332,7 +462,7 @@
description: "Promote previously published loci leap 15 rocky images"
vars: *build_rocky_leap15_images
# Queens
# Queens-xenial
- job:
name: openstack-helm-images-build-openstack-loci-queens-ubuntu_xenial
parent: openstack-helm-images-build-openstack-loci-master-ubuntu_xenial
@ -354,7 +484,7 @@
description: Promote a previously published loci xenial queens images
vars: *build_queens_xenial_images
# Pike
# Pike-xenial
- job:
name: openstack-helm-images-build-openstack-loci-pike-ubuntu_xenial
parent: openstack-helm-images-build-openstack-loci-master-ubuntu_xenial
@ -376,7 +506,7 @@
description: Promote a previously published loci xenial pike images
vars: *build_pike_xenial_images
# Ocata
# Ocata-xenial
# Ocata requires pycrypto installed for keystonemiddleware memcache support,
# so we can't reuse Master profile.
- job: