Commit Graph

85 Commits

Author SHA1 Message Date
Dmitriy Rabotyagov 7cd77a7b92 Add support for deploying Horizon with Skyline
We change a default value of `horizon_webroot` to reflect the usecase
where both Horizon and Skyline are deployed. When it is the case,
horizon webroot URL will be changed to `/horizon`.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/859446
Change-Id: Ia38311a6fde88292c090cf6289bf5b6c6279c479
2024-03-15 19:38:48 +00:00
Dmitriy Rabotyagov 552fcac122 Reflect horizon_webroot setting in Apache vhost configuration
Changing only horizon_webroot is not sufficient without adjustments
to horizon Apache vhost.

Change-Id: I25707600c2b05a7f816a7c4ea38c8985717df2d3
2024-03-15 20:36:16 +01:00
Damian Dabrowski db7110d297 Add PKI support to horizon backends
Replace legacy SSL support with ansible-role-pki.
It is used to generate required TLS certificates if needed.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/879085

Change-Id: Id2f9d6f911cee6e58c261c1a68c34a37ab9ced4f
2023-04-29 18:37:24 +02:00
Damian Dabrowski 4686326650 Rename horizon_enable_ssl to horizon_backend_ssl
To standarize variable name across roles, this change renames
`horizon_enable_ssl` to `horizon_backend_ssl`.
All other roles use `<service>_backend_ssl` format.
It also better describes what it does. With `horizon_enable_ssl` it's
unclear whether it is about frontend or backend.

Backward compatibility will be kept until 2024.1.

Change-Id: I218d45b7be667732e4204316b8d18fa3e136962b
2023-04-11 19:35:19 +02:00
Damian Dabrowski 9c07e79890 Change default value for horizon_enable_ssl
`horizon_enable_ssl` is responsible for enabling TLS on horizon backend.
It defaults to `haproxy_ssl` which is generally used to enable TLS on
haproxy frontends.
It is more reasonable to disable it by default as it's done for other
services.
This patch does not change current behavior in gating as backend TLS
works only with horizon_external_ssl=False(while it's set to True by
default).
It also does not affect behavior of horizon's haproxy frontend
encryption.

Change-Id: I8f207426c9dc5bcefdec42c0bfc0f5f0376509a3
2023-04-08 00:01:54 +00:00
OpenStack Release Bot 56f670c41a Update master for stable/zed
Add file to the reno documentation build to show release notes for
stable/zed.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.

Sem-Ver: feature
Change-Id: I52bd5d4b4e35317397242168c2f910d3ae4230ff
2022-12-13 13:15:05 +00:00
Kevin Carter 8f8a84f15c Add uwsgi option to horizon
This change provides the horizon role the ability to deploy its services
using uWSGI instead of apache. This feature produces a minimal horizon
deployment which is perfectly functional in cases where capabilities
like federation and SSL terminated all the way through are not needed.

Change-Id: I457a111511543731746d868ae7f7184743e5703b
Signed-off-by: Kevin Carter <kevin@cloudnull.com>
2022-09-21 01:18:34 +00:00
Kevin Carter 10126daa9c Add the ability to define CSRF_TRUSTED_ORIGINS
This change adds the ability within horizon to define a list of domains
which are trusted through the CSRF functions of django.

Change-Id: Ib92480e6caa74e050a99b36a54b2032714efb509
Signed-off-by: Kevin Carter <kevin@cloudnull.com>
2022-09-08 00:02:00 -05:00
Andrew Bonney 32e332b329 Adjust default configuration to support TLS v1.3
This adds a new variable to manage TLS v1.3 cipher suites.

The old variable for TLS v1.2 and below ciphers is renamed for
consistency, but is still supported as a default where overridden
by deployments.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/823943
Change-Id: Ib43d465c8fa24ec7d14174ecc17bce0b3e8bd7a4
2022-01-10 13:47:50 +00:00
Dmitriy Rabotyagov 2447deec62 Add option to override horizon policies
In case policies are overriden for services,
horizon maintain and ship it's own set of policies that should be
separatelly overriden.

Depends-On: https://review.opendev.org/754382
Change-Id: I7099a5b11390d3296c7b4bb74d69670c7fe64f58
2021-08-20 11:16:04 +00:00
Dmitriy Rabotyagov 3b0abcbcd3 Implement WEBSSO redirect
This patch adds ability to configure horizon auto redirections when
WEBSSO is used.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/785800
Change-Id: I2a1beddaed3a31d1c01d1310dc8b739c9c93d9dd
Closes-Bug: #1922687
2021-04-19 14:44:33 +00:00
Marc Gariepy 8e3570e002 Add ability to configure ALLOWED_HOSTS for horizon.
This patch add the ability to configure the ALLOWED_HOSTS in
horizon_local_settings.py.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-repo_server/+/766257
Change-Id: I9712dc1e9a41757cf71d3d0704e9885493ce1583
2020-12-09 13:37:16 -05:00
Andreas Jaeger bcef65191d Use newer openstackdocstheme and reno versions
The sync from https://review.opendev.org/733244 updated to
openstackdocstheme 2.2.1 and reno 3.1.0 versions.

Set openstackdocs_pdf_link to link to PDF file. Note that
the link to the published document only works on docs.openstack.org
where the PDF file is placed in the top-level html directory. The
site-preview places the PDF in a pdf directory.

openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.

See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html

Change-Id: Ic87ff263a9d3db82db1eda6e87beddb1ce64e38a
2020-06-03 19:14:36 +02:00
OpenStack Release Bot 4776e66ff3 Update master for stable/ussuri
Add file to the reno documentation build to show release notes for
stable/ussuri.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/ussuri.

Change-Id: I64637066af26f453978c4b2f4087e1d118bde8fb
Sem-Ver: feature
2020-06-01 13:14:41 +00:00
Andreas Jaeger de2bd3f94f Update docstheme for style
New version of openstackdocstheme (Victoria+) respects pygments_style.
Since this repo is using now Victoria (master) requirements but has
not branched for Ussuri yet, it uses the new version.

Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.

Change-Id: I36d8c2f46c02ff343ec3a304b7ca347428ad01cf
2020-05-20 18:48:55 +02:00
Dmitriy Rabotyagov 61caabf325 Add murano-dashboard
This patch adds deployement of murano-dashboard to horizon,
once `horizon_enable_murano_ui` variable is set to True.

Depends-On: https://review.opendev.org/710773
Change-Id: I9a2f1920611ca8ad2b2f2cdb625281132b968ec2
2020-03-25 20:06:28 +00:00
Dmitriy Rabotyagov 9c3c776c7a Switch SESSION_ENGINE to memcached
Previously we were using cached_db session backend by default.
However with django version update, it requires more recent
mysqlclient module which is not part of requirements.
Moreover usage of cached_db makes us to carry and maintain
extra stuff, which can be dropped with memcached backend.

Change-Id: I8df7ee967d8dcbeb09a42fd568f98acc3e88adad
2019-12-18 19:52:38 +02:00
Marc Gariepy 10aa884a16 Add new config to disable openrc_v2 in horizon
it's now possible to remove the openstack rc file v2 from horizon download list.

Change-Id: I7aa8d7a911585e00d8ede92bf909492cf70cba6e
2019-10-28 15:48:54 -04:00
OpenStack Release Bot b08e3b2203 Update master for stable/train
Add file to the reno documentation build to show release notes for
stable/train.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.

Change-Id: I640c918b071887574e885534d29e4218d5c60774
Sem-Ver: feature
2019-10-22 18:58:52 +00:00
Dmitriy Rabotyagov 9f9b66a985 Allow to configure horizon bind address
Added variable horizon_bind_address which allows to define address
on which horizon will be listening.

horizon_listen_ports variable was converted to dict()
and used in apache vhost template.

As an addition metal jobs were added for horizon CI.

Depends-On: https://review.opendev.org/681722
Change-Id: I11c3edec6d58e39da8de5e214fab9731eb5df9e2
2019-09-19 09:32:09 +00:00
Dmitriy Rabotyagov a2280e2e90 Retire neutron-lbaas UI plugin
Because of global retirement process of neutron-lbaas  we stop providing
neutron-lbaas-ui plugin installation for horizon.

Change-Id: Ic39a4d1cc03df72a4080abd6513bf8f4036da456
2019-09-13 13:37:54 +03:00
OpenStack Release Bot 18f7117016 Update master for stable/stein
Add file to the reno documentation build to show release notes for
stable/stein.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/stein.

Change-Id: Ia4fbc015dea3a7b4c9292baf97669b576933a35c
Sem-Ver: feature
2019-04-08 09:18:46 +00:00
Zuul b2b4f95c6b Merge "remove useless whitespaces" 2018-12-22 18:18:32 +00:00
Matthew Thode 1a9184e9c5
Force force-tlsv12 only
Secure by default

Change-Id: I61aaa82ac705a4cf6a082a149d78db85e0365706
2018-12-17 10:56:46 -06:00
jacky06 f32909cb7f Add watcher dashboard into horizon
Co-Authored-By: zhulingjie <easyzlj@gmail.com>
Change-Id: I2b2739bf1f0d746e0ef9582078f0720300354b06
Closes-Bug: #1792951
2018-12-08 17:02:43 +00:00
chengebj5238 c90eb0b8f1 remove useless whitespaces
Change-Id: Icadd62b0da9206ee0069cb9af81b128a79f86a27
2018-11-24 10:33:29 +08:00
Dmitriy Rabotjagov 9a25d2507b Implements masakari-dashboard to be installed in horizon
Added masakari dashboard to horizon installation.
As for now it's installation is available only from source.

Change-Id: I07937e2d97080ec5f4aece61a6bf032cd8790f5f
Implements: blueprint masakari-ansible-plugin
2018-11-21 11:51:54 +00:00
Damian Cikowski 09b8a7d9e1 Add Neutron VPNaaS Dashboard to Horizon
This patch brings back VPNaaS Dashboard after its split out
into a separate project.

Change-Id: Iefa92fdb348df6d07bc557749e1f96dd47c68e30
2018-11-14 09:37:09 +01:00
Amy Marrich (spotz) 4283200534 Add ability for HTTP access to horizon
Horizon has, since OSA's inception, been deployed with HTTPS
access enabled, and has had no way to turn it off. Some use-cases
may want to access via HTTP instead, so this patch enables
the following:

1. Listen via HTTPS on a load balancer, but via HTTP on the
   horizon host and have the load balancer forward the correct
   headers. It will do this by default in the integrated build
   due to the presence of the load balancer, so the current
   behaviour is retained.

2. Enable HTTPS on the horizon host without a load balancer.
   This is the role's default behaviour which matches what it
   always has been.

3. Disable HTTPS entirely by setting ``haproxy_ssl: no`` (which
   will also disable https on haproxy. This setting is inherited
   by the new ``horizon_enable_ssl`` variable by default. This
   is a new option.

Co-Authored-By: Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
Change-Id: I823f2f949258157e306dbf80570abe53373da0c3
Closes-Bug: 1794337
2018-10-17 11:56:26 +00:00
Zuul 89ed3ea27d Merge "Add cloudkitty dashboard" 2018-10-07 00:08:26 +00:00
jacky06 f40fdfd01f Add zun dashboard into horizon
Change-Id: Iba816088a8babb6f2f1975021ded84eefdfe2eee
Closes-Bug: #1792951
2018-10-05 13:51:04 +00:00
jacky06 c40b50dfc4 Add cloudkitty dashboard
Change-Id: Ia9edd43aecce88291053357f7184607486318868
Closes-Bug: #1792858
2018-10-05 13:50:51 +00:00
ZhijunWei 7c007fffa1 Add tacker dashboard into horizon
Co-Authored-By: jacky06 <zhang.min@99cloud.net>

Change-Id: I4f5fb39f1e7f9ba9dc3ca989317d2870d487ca2d
Closes-Bug: #1792951
2018-09-19 15:38:15 +00:00
jacky06 0aad898848 Add blazar dashboard into horizon
Change-Id: I1dfd7fa99a5422877b579caf9bae984fcd5c38a5
Closes-Bug: #1792951
2018-09-17 07:35:02 -04:00
Zuul d2b1e350f9 Merge "Implements custom theme distribution" 2018-08-16 17:13:00 +00:00
Dmitriy R acf7a29609 Implements custom theme distribution
Adds key ``theme_src_archive`` to ``horizon_custom_themes``,
which should point to archive with packed theme inside.
Archive should be placed on the deployment host and it
may be easily created by git-archive, or ansible git module.
Structure inside archive should be as a standard theme,
without any leading folders.

Unarchive is used instead of synchronize with flat files,
as synchronize establishes independent SSH connection
and doesn't use nspawn or any other methods from
custom ssh plugin and may case connection errors.
Recursive copy has limitations on number of files inside of the
directory. This limit is pretty high, but still it's a limit.

This method differs from uploading custom files, as themes may
have complex structure and include a lot of files.

As a result, if ``horizon_custom_themes`` contains
``theme_src_archive`` key, theme will be distributed by role.

Change-Id: Icbfff0793a703de94091cfdcdecf5a2c91bae4be
Related-Bug: 1778098
2018-08-14 18:35:55 +03:00
OpenStack Release Bot e30ea49418 Update reno for stable/rocky
Change-Id: I06fa81152de2b65ee38460f6aedbb11b5d7131af
2018-08-10 16:46:57 +00:00
Markos Chandras 2af1b7a6c4 Add support for using distribution packages for OpenStack services
Distributions provide packages for the OpenStack services so we add
support for using these instead of the pip ones.

Implements: blueprint openstack-distribution-packages
Change-Id: Ie6eeff541a319967715e619dcdc26177aec5be72
2018-07-23 17:29:14 +01:00
Jesse Pretorius 4ac6093e36 Execute service setup against a delegated host using Ansible built-in modules
In order to reduce the packages required to pip install on to the hosts,
we allow the service setup to be delegated to a specific host, defaulting
to the deploy host. We also switch as many tasks as possible to using the
built-in Ansible modules which make use of the shade library.

The 'virtualenv' package is now installed appropriately by the openstack_hosts
role, so there's no need to install it any more. The 'httplib2' package is a
legacy Ansible requirement for the get_url/get_uri module which is no longer
needed. The keystone client library is not required any more now that we're
using the upstream modules. As there are no required packages left, the task
to install them is also removed.

With the dependent patches, the openstack_openrc role is now executed once
on the designated host, so it is no longer required as a meta-dependency for
the role.

Depends-On: https://review.openstack.org/579233
Depends-On: https://review.openstack.org/579959
Depends-On: https://review.openstack.org/580156
Change-Id: Ic3c0bb31c12a83fe8fe475091e97e5d5537fab6f
2018-07-05 19:41:30 +00:00
OpenStack Release Bot 38083e469e Update reno for stable/queens
Change-Id: I712148a963ec6e554b86ecb0e2be36bf8f93764b
2018-02-14 15:48:41 +00:00
Guoqiang Ding 8aef684fdd Update the doc theme
Change-Id: I0ed5cf27ecd43b9374f0fe6970dfa0cf85ad3583
2017-11-24 05:03:58 +00:00
Andreas Jaeger 1cdb94db64 Remove setting of version/release from releasenotes
Release notes are version independent, so remove version/release
values. We've found that projects now require the service package
to be installed in order to build release notes, and this is entirely
due to the current convention of pulling in the version information.

Release notes should not need installation in order to build, so this
unnecessary version setting needs to be removed.

Also, use openstackdocstheme for releasenotes - like all other projects
do.

This is needed for new release notes publishing, see
I56909152975f731a9d2c21b2825b972195e48ee8 and the discussion starting
at
http://lists.openstack.org/pipermail/openstack-dev/2017-November/124480.html
.

Change-Id: I35cd51cf81ae6e1bafa7ab3370dc89787961f4bc
2017-11-17 08:20:01 +01:00
Guoqiang Ding 935b20deb4 Update the doc link
Change-Id: I688f0d54056ef94835b1e9ccf5ed98143863d442
2017-11-13 18:13:56 +08:00
Jesse Pretorius bf53e0b3ee Initial OSA zuul v3 role jobs
This patch implements an initial set of jobs intended to match
the current job execution method. It does not intend to improve
how the jobs are executed - only to replicate what is currently
in openstack-infra/openstack-zuul-jobs and provide the platform
to iterate on.

Change-Id: Ia99b5dd4197b6e8cf0d3bc13d5f121250142d452
2017-10-17 18:11:21 +01:00
OpenStack Release Bot 0c590735ac Update reno for stable/pike
Change-Id: I34335602df206c3cdc1d20340e29049d7bfcce16
2017-08-21 10:33:37 +01:00
Marc Gariepy 2d6664d3c5 Allow possibility to disable heatstack password
This allow the possibility to disable the heat stack password field.

Change-Id: I8dcf212398570c5d124bac769614b968d8b8cb12
2017-06-28 08:51:35 -04:00
Adrien Cunin cd604dac71 Added support for horizon_launch_instance_defaults
This variable allows customizing the default values for properties found
in the Launch Instance modal, using the LAUNCH_INSTANCE_DEFAULTS config
option.

Change-Id: I1a795b788b3fbc78e814c93f56fd996090c7463b
2017-06-20 11:59:06 +02:00
Andy McCrae 0fa5b59428 Add Translations update steps.
To facilitiate a translations check site this patch enables the ability
to perform a pull_catalog and compilemessages, which will update the
translations site. By default this won't run at all.

Change-Id: Ib9b527d60226d3133206675b394d83f1185631b2
2017-06-18 13:48:30 +00:00
Marc Gariepy e20f12cc3a Add IMAGES_ALLOW_LOCATION configuration option.
IMAGES_ALLOW_LOCATION is needed to be able to specify an external location
during image creation.

Change-Id: I102a14577415549ac12e6cf7d62bafd48d95c1bf
2017-06-02 15:27:09 +00:00
Ravi Gummadi 24f7d80fba Cap the number of worker threads
Users can configure the number of worker threads however when it's
not specified the calculated number of workers can get too large on
hosts with a large number of CPUs.

Change-Id: I09433117941dcd543775d5c347cb03912c21475c
2017-02-23 02:00:38 -05:00