Build container images

We need to mark several things in the bindep file with the compile
tag so that we don't install them into the final image. Also, clean
up some of the extra things in the bindep file that are almost
certainly not needed.

Change-Id: I6e42d0191fd1db8482a4a0fbe208b669ef33bfee
This commit is contained in:
Monty Taylor 2018-10-16 16:13:06 -05:00
parent dfea84b566
commit 605da70d6d
3 changed files with 139 additions and 34 deletions

View File

@ -6,6 +6,72 @@
vars:
tox_envlist: sqlite
- secret:
name: storyboard-opendev-dockerhub
data:
username: opendevzuul
password: !encrypted/pkcs1-oaep
- TLIOKBC/P2pYpJc/UKFBxJx+Q11yrVKrT99pqwMM5IbUgPGIu1ssA90QUn1DAo8My+m/V
975X1roqtSvnab/gvR7YDmb3GPv6KMgM2K35kFFhFCy5RdOaEuOTJxM/Y8edXjvObkOj1
O6j1Fo0jJ07dVcJ/dFBIPXpN2yQl4s3SLbHLTL6c1KpngUz+lYPBLWTJXaXuFyeT4ZmRT
iRq3e9Tt4RYjda4Gjra/6dDBSRHbEuTf+HLX4mCnvHvrYUsM//oRJs3FVvQ8oRZu+qrvl
Gc+tDW+cJn430BRN1LYwLwkG+8R/raF+aPYNtQRUfjOd83MFY7+G8kU3Gt+O8lgzgj9TU
pMzAF0z4Cy9j47Dt/QeeybJeecKpa5d2qEkVnWF76ru+gMoSt0jRhhu9MQWhmtcKc0G+B
oIUjfnkyOq/t/+qF1SEjGbw5evAFQ1F90JhsdDI34lTHTNWBkVa1vxNI+MObn/t6cvEKX
PWfo5jhc/CYn7gIp4PJNMBTX3lB8qCczTX07zpSYFfwK1Bh2ih8jmID9iOwkMGppX2qBP
l5LDMnbDOmgg4XYbGDOz92pbxcWHxPxS1JAV6SXqWZQCbOHUfItfw4ZQ1DbQmD/yQG4YS
rnytd/TRKBTVUaLxrzkOMQVIgReuE8U8pkyCYktWryGIjFI2PF45wtVCA5XGZA=
- job:
name: storyboard-build-opendev-image
parent: opendev-build-docker-image
dependencies: opendev-buildset-registry
description: Build OpenDev Docker images for storyboard
vars: &storyboard_opendev_image_vars
zuul_work_dir: src/opendev.org/opendev/storyboard
docker_images:
- context: .
repository: opendevorg/storyboard
target: storyboard
- context: .
repository: opendevorg/storyboard-api
target: storyboard-api
- context: .
repository: opendevorg/storyboard-subscriber
target: storyboard-subscriber
- context: .
repository: opendevorg/storyboard-worker-daemon
target: storyboard-worker-daemon
- context: .
repository: opendevorg/storyboard-db-manage
target: storyboard-db-manage
- context: .
repository: opendevorg/storyboard-migrate
target: storyboard-migrate
- context: .
repository: opendevorg/storyboard-cron
target: storyboard-cron
- job:
name: storyboard-upload-opendev-image
parent: opendev-upload-docker-image
description: Build OpenDev storyboard Docker images and upload to Docker Hub.
vars: *storyboard_opendev_image_vars
secrets:
- name: docker_credentials
secret: storyboard-opendev-dockerhub
pass-to-parent: true
- job:
name: storyboard-promote-opendev-image
parent: opendev-promote-docker-image
description: Promote previously uploaded storyboard Docker images.
vars: *storyboard_opendev_image_vars
secrets:
- name: docker_credentials
secret: storyboard-opendev-dockerhub
pass-to-parent: true
- project:
name: opendev/storyboard
check:
@ -18,6 +84,8 @@
timeout: 6000
- tox-py36:
timeout: 6000
- opendev-buildset-registry
- storyboard-build-opendev-image
gate:
jobs:
- storyboard-tox-sqlite
@ -26,6 +94,11 @@
timeout: 6000
- tox-py36:
timeout: 6000
- opendev-buildset-registry
- storyboard-upload-opendev-image
post:
jobs:
- publish-openstack-python-branch-tarball
promote:
jobs:
- storyboard-promote-opendev-image

42
Dockerfile Normal file
View File

@ -0,0 +1,42 @@
# Copyright (c) 2019 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
FROM opendevorg/python-builder as builder
COPY . /tmp/src
RUN assemble
FROM opendevorg/python-base as storyboard
COPY --from=builder /output/ /output
RUN /output/install-from-bindep
FROM storyboard as storyboard-api
CMD ["/usr/local/bin/storyboard-api"]
FROM storyboard as storyboard-subscriber
CMD ["/usr/local/bin/storyboard-subscriber"]
FROM storyboard as storyboard-worker-daemon
CMD ["/usr/local/bin/storyboard-worker-daemon"]
FROM storyboard as storyboard-db-manage
CMD ["/usr/local/bin/storyboard-db-manage"]
FROM storyboard as storyboard-migrate
CMD ["/usr/local/bin/storyboard-migrate"]
FROM storyboard as storyboard-cron
CMD ["/usr/local/bin/storyboard-cron"]

View File

@ -2,51 +2,41 @@
# see http://docs.openstack.org/infra/bindep/ for additional information.
apt-transport-https [platform:dpkg test]
build-essential [platform:dpkg]
build-essential [platform:dpkg compile test]
chromium-browser [platform:dpkg test]
curl
cyrus-sasl-devel [platform:rpm]
dbus
firefox [!platform:debian test]
gawk
gettext [test]
iceweasel [platform:debian test]
language-pack-en [platform:ubuntu]
libcurl-devel [platform:rpm]
libcurl4-gnutls-dev [platform:dpkg]
libffi-dev [platform:dpkg]
libcurl4-gnutls-dev [platform:dpkg compile]
libffi-dev [platform:dpkg compile]
libffi-devel [platform:rpm]
libmysqlclient-dev [platform:dpkg]
libpq-dev [platform:dpkg]
libmysqlclient-dev [platform:ubuntu compile]
default-libmysqlclient-dev [platform:debian compile]
libpq-dev [platform:dpkg compile]
locales [platform:debian]
lsb-release [test]
mariadb [platform:rpm]
mariadb-devel [platform:rpm]
mariadb-server [platform:rpm]
mysql-client [platform:dpkg]
mysql-server [platform:dpkg]
mariadb [platform:rpm test]
mariadb-devel [platform:rpm test]
mariadb-server [test platform:rpm]
mysql-client [platform:dpkg test]
mysql-server [platform:dpkg test]
openldap-devel [platform:rpm]
pkg-config [platform:dpkg]
pkg-config [platform:dpkg compile]
pkgconfig [platform:rpm]
postgresql
postgresql-client [platform:dpkg]
postgresql-devel [platform:rpm]
postgresql-server [platform:rpm]
python-dev [platform:dpkg]
python-devel [platform:rpm]
python-lxml
python-zmq
python3-all-dev [platform:ubuntu !platform:ubuntu-precise]
python3-dev [platform:dpkg]
python3-devel [platform:fedora]
python3.4 [platform:ubuntu-trusty]
python3.5 [platform:ubuntu-xenial]
python34-devel [platform:centos]
sqlite [platform:rpm]
sqlite-devel [platform:rpm]
sqlite3 [platform:dpkg]
uuid-dev [platform:dpkg]
postgresql [test]
postgresql-client [platform:dpkg test]
postgresql-devel [platform:rpm test]
postgresql-server [platform:rpm test]
python-dev [compile test platform:dpkg]
python-devel [compile test platform:rpm]
python3-devel [compile test platform:rpm]
sqlite [test platform:rpm]
sqlite-devel [test platform:rpm]
sqlite3 [test platform:dpkg]
uuid-dev [platform:dpkg compile]
xorg-x11-server-Xvfb [platform:rpm test]
xvfb [platform:dpkg test]
zlib-devel [platform:rpm]
zlib1g-dev [platform:dpkg]
zlib1g-dev [platform:dpkg compile]