Make Cyborg buildable (again)

This is done by removing the dependency on OPAE SDK.

Additionally, cursive is no longer tried to be installed again
in the agent image as it is already installed in base via regular
requirements.

Details in reno and the referenced bug report.

Change-Id: Ib6a6f38efd9860851e558f13ee3bdedd8bb57903
Closes-bug: #1873744
(cherry picked from commit a170353b47)
This commit is contained in:
Radosław Piliszek 2020-05-21 10:09:10 +02:00
parent 98c342da5d
commit a08ed2adbf
6 changed files with 22 additions and 49 deletions

View File

@ -12,7 +12,7 @@ cloudkitty,C,C,N,C,N,C
collectd,C,C,C,C,N,C
congress,C,C,N,C,N,C
cron,C,C,C,C,N,C
cyborg,N,N,N,N,N,N
cyborg,N,C,N,C,N,C
designate,C,C,C,C,N,C
dnsmasq,C,C,C,C,N,C
ec2-api,C,C,C,C,N,C

1 Image,CentOS,,Ubuntu,,Debian
12 collectd,C,C,C,C,N,C
13 congress,C,C,N,C,N,C
14 cron,C,C,C,C,N,C
15 cyborg,N,N,N,N,N,N cyborg,N,C,N,C,N,C
16 designate,C,C,C,C,N,C
17 dnsmasq,C,C,C,C,N,C
18 ec2-api,C,C,C,C,N,C

View File

@ -12,8 +12,7 @@ cloudkitty,C,C,N,C,N,C
collectd,C,C,C,C,C,C
congress,C,C,N,C,C,C
cron,T,T,T,T,C,T
cyborg,N,C,N,N,N,N
cyborg-agent,N,N,N,N,N,N
cyborg,N,C,N,C,N,C
designate,C,C,C,C,C,C
dnsmasq,T,T,C,T,C,C
ec2-api,C,C,N,C,N,C

1 Image,CentOS,,Ubuntu,,Debian
12 collectd,C,C,C,C,C,C
13 congress,C,C,N,C,C,C
14 cron,T,T,T,T,C,T
15 cyborg,N,C,N,N,N,N cyborg,N,C,N,C,N,C
cyborg-agent,N,N,N,N,N,N
16 designate,C,C,C,C,C,C
17 dnsmasq,T,T,C,T,C,C
18 ec2-api,C,C,N,C,N,C

View File

@ -10,45 +10,15 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
'pciutils',
] %}
{% if install_type == 'binary' %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
&& /bin/false
{% elif install_type == 'source' %}
{% set cyborg_agent_pip_packages = [
'cursive'
] %}
{% endif %}
{{ macros.install_packages(cyborg_agent_packages | customizable("packages")) }}
{% if install_type == 'source' %}
{% set cyborg_agent_pip_packages = [ ] %}
RUN {{ macros.install_pip(cyborg_agent_pip_packages | customizable("pip_packages")) }}
{% if base_package_type == 'rpm' %}
ENV opae_libs_rpm_url=https://github.com/OPAE/opae-sdk/releases/download/1.1.0-2/opae-libs-1.1.0-2.x86_64.rpm
ENV opae_libs_rpm_sha1sum=3a10f80d64be46bb8d99ba88548646d0e368a06e
ENV opae_devel_rpm_url=https://github.com/OPAE/opae-sdk/releases/download/1.1.0-2/opae-devel-1.1.0-2.x86_64.rpm
ENV opae_devel_rpm_sha1sum=461356b987b41843f60123d66195620bf1e4e28e
RUN curl -sSL -o /tmp/opae-libs.rpm ${opae_libs_rpm_url} \
&& echo "${opae_libs_rpm_sha1sum} /tmp/opae-libs.rpm" | sha1sum -c \
&& curl -sSL -o /tmp/opae-devel.rpm ${opae_devel_rpm_url} \
&& echo "${opae_devel_rpm_sha1sum} /tmp/opae-devel.rpm" | sha1sum -c \
&& dnf -y install /tmp/opae-libs.rpm /tmp/opae-devel.rpm \
&& rm -f /tmp/opae-libs.rpm /tmp/opae-devel.rpm
# NOTE(Bai Yongjun) Required packages are only supported Ubuntu16.04
# Please check the details:https://github.com/OPAE/opae-sdk/releases/tag/1.1.0-2
{% elif base_package_type == 'deb' %}
RUN echo 'No supported packages' \
&& /bin/false
{% endif %}
{% block cyborg_agent_footer %}{% endblock %}
{% block footer %}{% endblock %}

View File

@ -80,7 +80,6 @@ STATUS_ERRORS = (STATUS_CONNECTION_ERROR, STATUS_PUSH_ERROR,
# is irrelevant. Otherwise all must match for skip to happen.
UNBUILDABLE_IMAGES = {
'aarch64': {
"cyborg-base", # no binary package
"monasca-grafana", # no phantomJS on aarch64
"opendaylight", # no binary package
"prometheus-mtail", # no aarch64 binary
@ -88,7 +87,6 @@ UNBUILDABLE_IMAGES = {
},
'ppc64le': {
"cyborg-base", # no binary package
"elasticsearch", # no binary package
"grafana", # no binary package
"monasca-grafana", # no phantomJS
@ -102,6 +100,7 @@ UNBUILDABLE_IMAGES = {
'source': {
"tripleoclient",
},
'binary': {
"bifrost-base",
"blazar-base",
@ -134,7 +133,6 @@ UNBUILDABLE_IMAGES = {
},
'centos': {
"cyborg-base", # package only for CentOS 7
"hacluster-pcs", # Missing crmsh package
"mongodb", # Missing mongodb and mongodb-server packages
"nova-spicehtml5proxy", # Missing spicehtml5 package
@ -144,14 +142,9 @@ UNBUILDABLE_IMAGES = {
"tgtd", # Not supported on CentOS 8
},
'centos+source': {
"cyborg-agent", # opae-sdk does not support CentOS 8
},
'debian': {
"bifrost-base", # tries to install 'mysql-server' which is not in
# Debian 'buster'
"cyborg-base",
"monasca-grafana", # FIXME(hrw): some ssl issues to fix
"mongodb",
"opendaylight", # no binary package
@ -159,8 +152,8 @@ UNBUILDABLE_IMAGES = {
"qdrouterd",
"sensu-base",
},
'ubuntu': {
"cyborg-base",
"qdrouterd", # There is no qdrouterd package for ubuntu bionic
},

View File

@ -0,0 +1,11 @@
---
fixes:
- |
Makes Cyborg buildable for all platforms by removing dependency on
OPAE SDK.
`LP#1873744 <https://launchpad.net/bugs/1873744>`__
upgrade:
- |
Cyborg Agent no longer includes OPAE SDK. The version was outdated
and currently supported platforms do not have ready-to-use binaries.
This change was required to make Cyborg buildable.

View File

@ -11,5 +11,5 @@ upgrade:
images, and provides a route for migration.
- |
The following images were supported by CentOS 7 but lack suitable packages
in CentOS 8, and are no longer supported for CentOS: ``cyborg-agent``,
``hacluster-pcs``, ``nova-spicehtml5proxy``.
in CentOS 8, and are no longer supported for CentOS: ``hacluster-pcs`` and
``nova-spicehtml5proxy``.