Commit Graph

128 Commits

Author SHA1 Message Date
Michal Arbet fde9264e66 Rework horizon image to support local_settings.d
The local_settings.py config is rendered by kolla-ansible
orchestration, which is not a good approach because upstream
local_settings.py can be changed anytime and that can be a problem,
as it was shown recently with the new version of horizon.

Fortunately, horizon supports local_settings overrides in
local_settings.d directory and moreover it's preffered
way how to configure horizon as per doc [1].

This patch just change the structure of files to support it.

[1] https://docs.openstack.org/horizon/latest/configuration/settings.html

Change-Id: Ib0c060adffe5287d786ba9247c6b962732cdb5e0
2024-02-05 12:30:48 +01:00
Marcin Juszkiewicz 19e40f1608 docker: implement macros to alter upper-constraints.txt
upper_constraints_remove() macro allows to remove line
upper_constraints_version_change() allows to change versions

This way we have cleaner way to alter u-c in those images which need it.

Change-Id: I8fc354b8aa4d03fcd3ecfb9cbfe75de67492a0e3
2023-04-21 14:13:24 +02:00
Radosław Piliszek 2daf4331a6 Fix writable rootwrap/privsep config
Fixes a hypothetical security issue related to privilege escalation via
rootwrap/privsep. A potential vulnerable service could previously allow
writes to its rootwrap/privsep config and thus allow for more commands
to be run with root privileges via rootwrap/privsep. For a succesful
attack, this would also require the service to allow to run arbitrary
commands via rootwrap/privsep. Thus far, no such vulnerabilities have
been reported and thus this fix is simply strengthening the container
images against such an issue in the future.

Change-Id: I92c81c77e6a16570a108cde8031f7977930fb02a
Closes-Bug: #1874298
2022-10-10 15:06:05 +00:00
Marcin Juszkiewicz 878b00013b Move to CentOS Stream 9
OpenStack 'zed' requires Python 3.8+ so RHEL 8 family has to go.

This changeset moves to CentOS Stream 9 while move to RockyLinux 9 is
planned as final solution.

CI moved to CentOS Stream 9 nodes.

Depends-on: https://review.opendev.org/c/openstack/kolla-ansible/+/839715

Change-Id: I113b9984294cf8663d3fc0c8840320e1d40ea731
2022-09-27 07:40:06 +00:00
Marcin Juszkiewicz e21aeb5ae9 flatten images a bit
As we have one type of images now some RUN calls could be merged so we
will have less layers in resulting images.

Change-Id: I5178c58fbd8c65efe825dc249c0f1368ef0fe8e0
2022-04-21 18:53:14 +00:00
Tim Shearer 1d96a2bbe1 Adjust permissions on _extend_start files.
Explicitly set the permissions on the kolla-toolbox kolla_extend_start
file. Also, since all extend_start files are sourced rather than
executed, the executable bits are now cleared throughout the project.

Change-Id: I5c2deb4a2e33575d57c852089f856a9acc6818d0
2022-04-11 17:22:24 +02:00
Marcin Juszkiewicz 1749da2fbf docker: drop binary parts
Big patch drops all mentions of binary images support. Suggestions are
welcome how to split it into parts or handle better.

Change-Id: I5d5a46c6ce7734ceb8b844e17b43e359d7cac6e3
2022-04-09 17:44:26 +02:00
Mark Goddard 3479eb7814 horizon: add various dashboard plugins for ubuntu/binary
These were added for Debian/binary, but not Ubuntu/binary.

Change-Id: I74bfa6326d8a72f9bba409e6a725fdb55b48c6b1
Closes-Bug: #1931075
2021-11-23 12:35:33 +01:00
Zuul f95ba3d8a3 Merge "Add missing default policy files for debian-binary-horizon" 2021-07-29 10:47:42 +00:00
Michal Arbet 4c2990a99f Add masakari-dashboard to debian binary horizon image
This patch is adding python3-masakari-dashboard
to debian binary image as we added masakari-dashboard
to debian in wallaby cycle.

Change-Id: Ie3f357eaae5d1378ada32451dbd74f01f5cd2ba2
2021-07-03 11:22:43 +02:00
Michal Arbet 01d02be25e Add missing default policy files for debian-binary-horizon
The debian-binary-horizon image is missing the default policies files
which should be in /etc/openstack-dashboard/default_policies. By copying
everything from /etc/openstack-dashboard/policy
into /etc/openstack-dashboard, we get the default policy files, as well
as commented out policy files (e.g. cinder_policy.yaml) and the
nova_policy.d directory containing api-extensions.yaml.

Change was merged for ubuntu in [1] but unfortunatelly
not for debian, this trivial patch fixes it also
for debian.

[1] https://review.opendev.org/c/openstack/kolla/+/794589

Closes-Bug: #1933759
Change-Id: I822d640a251e6ed9f71c76a922513e23e4218418
2021-07-01 12:18:27 +02:00
Pierre Riteau 740448a658 Add missing default policy files for ubuntu-binary-horizon
The ubuntu-binary-horizon image is missing the default policies files
which should be in /etc/openstack-dashboard/default_policies. By copying
everything from /usr/share/openstack-dashboard/openstack_dashboard/conf
into /etc/openstack-dashboard, we get the default policy files, as well
as commented out policy files (e.g. cinder_policy.yaml) and the
nova_policy.d directory containing api-extensions.yaml.

Change-Id: I3c6fdcb9b7dd7443a7755599f7e4ee59f67e0a91
Closes-Bug: #1930586
2021-06-03 15:37:45 +02:00
Marcin Juszkiewicz 5c0c2d2448 centos: enable PowerTools repo in images which needs it
We moved to CentOS Stream 8. Just no one noticed that binary target was
failing to build.

This change sorts out all failing images.

Change-Id: Ia7768caabfe214a629339d50973d0d9873fc65d5
2021-03-22 14:47:38 +01:00
Christian Berendt 0028073ebb Remove zaqar image and related plugins
Signed-off-by: Christian Berendt <berendt@betacloud-solutions.de>
Change-Id: Id3187b2b95e9b9bd3d9233a498f7c45e66c604c7
2021-01-25 16:10:21 +01:00
Zuul fd60c65710 Merge "Refactor httpd install to base image" 2020-08-10 17:52:00 +00:00
James Kirsch 5bdf514645 Refactor httpd install to base image
Refactor installing and initial setup of httpd and mod wsgi from
individual services to base image.

Change-Id: I651a55a9ebe258ef403d33de010a4dfb368a4021
2020-08-10 09:51:07 +00:00
Michal Arbet cf2322322e Add missing horizon plugins for debian based OS
Change-Id: I220fb14a1c5a2bd1fdbc0fa4e5316da41a70c788
2020-08-05 13:40:58 +02:00
Zuul 12905b5fc1 Merge "Remove deployment of FWaaS" 2020-06-30 08:50:43 +00:00
Michal Arbet 46f8eed88a Fix horizon debian binary docker image
Debian packages are different from ubuntu packages.
Differencies in /etc/openstack-dashboard:
  - Symlinking {{ python_path }}/openstack_dashboard/local/enabled/ -> /etc/openstack-dashboard/enabled
  - Symlinking {{ python_path }}/openstack_dashboard/local_settings.d/ -> /etc/openstack-dashboard/local_settings.d
  - Symlinking {{ python_path }}/openstack_dashboard/conf/ -> /etc/openstack-dashboard/policy

Every dashboard-plugin debian package is copying his policy files, local_settings, enabled to above locations.
Every dashboard-plugin is triggering dpkg and collect-static, compress is done by openstack-dashboard package.
Kolla has to remove all these debian package's configs and provide kolla configs.
Move also /etc/openstack-dashboard/policy to standard location and delete symlink as kolla-ansible is overriding
default policy files path to /etc/openstack-dashboard/.

Change-Id: Ieca15bdb315d52e9547d798df11641ef36485b26
Depends-On: https://review.opendev.org/733612
2020-06-21 01:35:18 +02:00
Alfredo Moralejo d3742fb9d8 Remove deployment of FWaaS
FWaaS is being retired upstream [1][2] in V cycle.

[1] https://review.opendev.org/#/c/735838/

Change-Id: I45679c8596844780565644e52034bd3de0915ff4
2020-06-18 22:12:05 +00:00
Marcin Juszkiewicz 53443c5c71 Remove support for CentOS 7
With the move to RHEL/CentOS 8 we no longer have Python 2 in our images
so there is no need for checking which Python version (2.x or 3.x) is
used inside of containers.

We also no longer have to support yum as a value for
distro_package_manager.

Partially-Implements: blueprint centos-rhel-8

Change-Id: Ie45cf3465fedddbde7856961527421883ba3d5c9
2020-04-15 09:32:06 +00:00
Christian Berendt 861f55fbfd Add block labels to all Dockerfiles
Change-Id: I9692dda817ef134d647247431565e1b58cf9da41
2020-03-01 17:25:58 +00:00
Marcin Juszkiewicz 8b7ec43536 horizon: fix build in stable branches
When [1] was committed, horizon stopped building for Train.
Analogous patch is proposed to other stable branches.

This patch removes horizon from upper-constraints.

Kolla master is affected directly because we build Train
for CentOS 7 atm.

[1] 3e54878f9c

Co-authored-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
Change-Id: I1bd5a40eeef9612d995c81426fe510e89f438725
2020-01-07 16:21:12 +00:00
Mark Goddard 0ff14f85e4 Revert "Introduce macro to remove Py3 only plugins on CentOS 7"
This reverts the following commits:
df987c9d3f
d866c63a32
6b40b655f1

These are no longer necessary as we are using stable/train branch for
source images until CentOS 8 / python 3 support is available and
working.

Change-Id: I5aedf1141862d51c5bb676a7393fc131c452c914
Related: blueprint centos-rhel-python-3
2019-12-06 15:41:32 +00:00
Marcin Juszkiewicz df987c9d3f Introduce macro to remove Py3 only plugins on CentOS 7
As CentOS 7 is Python 2 we need a way to remove plugins used in
OpenStack components once they switch to be Python 3 only.

'remove_py3_only_plugins_for_py2' macro does exactly that.

This change also disables networking-bgpvpn for python 2.

Change-Id: Ib90aabc485f1c831d3d41cc0f70052f8fffc3fe6
Related: blueprint drop-py2-support
2019-12-05 14:48:05 +01:00
Viktor Michalek 683f9c9178 Horizon: install vitrage dashboard on Debian
Change-Id: I4e60fcd767f15b7da90b0143008b1d6d794c76f2
2019-11-28 18:26:09 +00:00
Marcin Juszkiewicz d866c63a32 horizon: do not build neutron-vpnaas-dashboard for CentOS 7
This plugin moved to Python 3 only:

Change-Id: Ifa664ff2d65a7cbc969c4b1c279eae1ac21225d7
INFO:kolla.common.utils.horizon:[91mERROR: Package 'neutron-vpnaas-dashboard' requires a different Python: 2.7.5 not in '>=3.6'
2019-11-28 09:58:45 +01:00
Marcin Juszkiewicz 6b40b655f1 Disable Searchlight for CentOS 7/source
Searchlight is Python 3 while CentOS 7/source images are Python 2

Change-Id: I9d2e4f3630efad91b5cc94085ad1dd1f6680e017
2019-11-12 18:00:39 +01:00
Viktor Michalek 531255d8d9 Horizon: change location of policy files in Debian
Change-Id: I7f818141506adee67d568061a93e3c13c65f24db
2019-10-03 01:38:04 +02:00
Viktor Michalek 6f44a3282a Horizon: fix for Debian
Stein/Buster packages are enabling plugins by default at its
installation time, but we actually know what plugins should be enabled
just only at the deploy time.
Therefore we need to install all available plugins and disble them right
at the image build time.
Plugins will be enabled according to deployment (kolla-ansible)
configuration at deploy time.

Change-Id: I9604ebb4f2a5081fd1209b9841aa997a70a90a11
2019-10-01 03:15:23 +00:00
Dincer Celik 77e8285e89 [horizon] Install octavia dashboard on deb
Change-Id: Iec78660049085483b207f4bdcf48f572d845c600
2019-09-20 09:41:43 +00:00
Dincer Celik eb7c730e05 Fixes wrong local_setting.py file issue for Ubuntu binary deployment.
This bug both affects Rocky and Stein. local_setting.py was not
linked to local_settings under /etc/openstack-dashboard so Horizon
runs with default settings.

Change-Id: I818876619694695663c98d9edcb8c8514198e8fd
Closes-Bug: #1803029
2019-07-01 13:18:36 +03:00
Radosław Piliszek b9591bdec9 Speed up builds of horizon slowed down by recent upstream change
Builds of horizon needlessly ran many compilemessages iterations for
core horizon parts because of using horizon's manage.py in a loop.
The behavior was caused by recent upstream change ([1]).

It caused CentOS source builds to take too long time and time out in CI.

This patch switches to using django-admin.

[1] 4e911e2889

Change-Id: I737f80566dd263ed291e215968ec72a95ad41a5f
Signed-off-by: Radosław Piliszek <radoslaw.piliszek@gmail.com>
2019-06-26 17:45:22 +00:00
Zuul df47c06388 Merge "Remove Neutron LBaaS support" 2019-06-15 21:05:20 +00:00
Carlos Goncalves 43ecacaffb Remove Neutron LBaaS support
The project has been retired and there will be no Train release [1].
This patch removes Neutron LBaaS support in Kolla.

[1] https://review.opendev.org/#/c/658494/

Depends-On: https://review.opendev.org/#/c/663875/
Change-Id: I99484c48ed09f7e015e134bdff1f298c359c6905
2019-06-07 09:56:44 +00:00
Marcin Juszkiewicz d436001b43 Debian/Ubuntu: move to Python 3 for source images
Commit 43b74ccc15 enabled use of Python 3
based packages but not switched to use Python 3.

Some of images still contain Python 2. There are two reasons:

- Ceph (ceph-common depends on Py2)
- python3-ldappool on Ubuntu 18.04

In Ceph situation Py3 packages were added. For second one we can not do
anything - Py2 dependency got dropped in Ubuntu 18.10 version.

Removed neutron-server-plugin-networking-infoblox due to being not
maintained. Once https://review.opendev.org/#/c/657578/ get merged
someone may revert that part.

Implements: blueprint debian-ubuntu-python3

Depends-on: Ie2a1077f7def0743f1403341985e2109aa490026

Change-Id: Ibfe0c2b8be98db56c61f74fb0247488ab3749ef4
2019-06-06 11:59:03 +01:00
Mark Goddard cdcd5610e9 Fix lower-constraints and kolla CI jobs
Multiple fixes to fix multiple problems.

1. Bump setuptools requirement to 21.0.0

The 16.0.0 requirement breaks the lower-constraints job on Ubuntu
bionic. We see the following error:

AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader'

2. ubuntu-binary horizon image needs to use python3 for django
manage.py

3. ubuntu-binary nova-placement-api image needs to use python3 for
apache mod wsgi.

4. nova-libvirt needs exact qemu dependencies due to packaging change

5. OracleLinux repos definition was changed in official image.

6. Fetch InfluxDB gpg key for Ubuntu base image from influx server.

Change-Id: Ic797d41f53a5f146d112619f1683cbfbf3a85dc2
2019-03-15 12:01:25 +01:00
Alex Schultz 3e5d8e2653 Add python3 packages for RHEL systems
RDO is currently working on python3 support for the next version of
CentOS/RHEL based systems.  This package uses the distro_python3 flag
that was added as part of I4028991bad92c0e8e21066cc4173c06ce5eba393 to
use the python3 specific package names.  This change only adds python3
package names for RHEL systems.

Conflicts-With: https://review.openstack.org/#/c/636457/
Change-Id: Iad6b70b433a0dd1b0f8ae6790fd280594517661a
Related-Blueprint: python3-support
2019-03-12 17:48:18 +00:00
Marcin Juszkiewicz 8df6eb0118 replace 'distro_python3' variable with 'distro_python_version'
RHEL7 derived distros use Python 2.7
RHEL8 uses Python 3.6
Ubuntu 18.04 uses Python 3.6, but we haven't enabled it yet.
Debian:buster uses Python 3.7, but we haven't enabled it yet.

We have several places in code where "/lib/pythonX.Y/site-packages"
is used so we need to know value of X.Y rather than py2/py3 switch.

How to check for Python 2:

{% if distro_python_version == '2.7' %}

Breaks: Iad6b70b433a0dd1b0f8ae6790fd280594517661a
Change-Id: Ie24f109af19ae0438c21e0d43cb3cc947812b4ce
2019-03-12 17:13:46 +00:00
Marcin Juszkiewicz 43b74ccc15 debian/ubuntu: make use of Python3 based packages
Both Ubuntu Stein UCA and Debian 'buster' migrated their OpenStack
packages to Python 3.

Note that Debian 'buster' is not released yet and contains Rocky
packages. Stein ones will be available later.

Co-Authored-By: Lee Yarwood <lyarwood@redhat.com>
Co-Authored-By: Eduardo Gonzalez <dabarren@gmail.com>

Change-Id: I160f79cc57f54ec3eac857c5babd1a6e2656d228
2019-02-28 13:06:24 +01:00
Alex Schultz ae1322ec10 Use base_package_type
This change updates the docker files to use base_package_type instead
of doing specific distro checks for the rhel/deb generic cases. The
base_distro is still available and is used when a specific distro needs
a customization but if the differences are purely rpm vs deb, then the
base_package_type can be used.

Change-Id: I8d720bb185df65a0178061ccf20b1ab2265da2c5
2019-01-17 08:23:41 -07:00
Jeffrey Zhang 1cde66e4d7 Fix the ubuntu binary gate
1. openstack-dashboard package already configured the folders as
   expected.
2. UCA is not include python-vmware-nsx 13.0.0 package now.

Change-Id: I7cb0c4d3d872333dadd2eecd7071e8f08c21a44d
2018-08-21 00:01:39 +08:00
Martin André 3b9b69ac7b Stop manually copying sahara-dashboard config files
RDO review https://review.rdoproject.org/r/#/c/14081/ changed the
locaction of the config files for the openstack-sahara-ui and added the
symlinks to be more consistent with the other horizon plugins packages.
It's not necessary anymore to treat sahara-ui as a snowflake and the old
copy in horizon dockerfile must be removed.

Change-Id: Ib222809ee67d103469e9d467727e0e45eaac77e8
Closes-Bug: #1784233
2018-07-29 22:39:28 +02:00
chenxing 8ab4260418 Fix the horizon failed to start
Currently, Horzion container fails to start when enabled designate,
murano, magnum and so on. This patch is to fix it.

Change-Id: I32da6dc1a65d3bfcaa59b4c9136e389af1f9b551
Closes-Bug: #1744428
2018-05-28 22:20:42 +08:00
Zuul 887ed5310e Merge "Add octavia-dashboard to horizon image" 2018-04-01 16:48:29 +00:00
Zuul 22b5af34b6 Merge "Add designate-ui for horizon centos" 2018-03-29 14:47:32 +00:00
Carlos Goncalves c2960f73d2 Add octavia-dashboard to horizon image
Change-Id: Ic99e9e7b499e82a998386e13dceab4e67f23e989
2018-03-28 10:07:24 +03:00
Martin André 0c7b349620 Add heat dashboard for deb/ubuntu binary
The python-heat-dashboard was missing from Debian/Ubuntu binary horizon
images. This commit adds it since the deb package is now available in
the repositories.

Change-Id: Id0462419b97b8f1027a3ed9190b3ef57af8a7e3d
2018-03-27 17:51:26 +02:00
Kevin Tibi b298c8d8d6 Add designate-ui for horizon centos
Designate-dashboard has been release for RDO.

Change-Id: Ie69fad3025b8d295e025b459d87237c52550633a
Closes-bug: #1750757
2018-03-23 11:39:56 +01:00
Martin André b3390c97f2 Install heat-dashboard in rpm based distros
The heat-dashboard was recently packaged in RDO [1], let's add it to
the rpm based distros.

 [1] https://github.com/rdo-packages/heat-dashboard-distgit

Change-Id: I0652e172f3651b427805aa3673527677bd3429d8
Related-Bug: #1752132
2018-02-27 18:28:33 +01:00