From d47a0e4f5f7e995f301e03905a61c463b4de6ddf Mon Sep 17 00:00:00 2001 From: Raven Kaur Date: Mon, 22 Jun 2026 15:25:58 -0400 Subject: [PATCH] =?UTF-8?q?docs:=20add=20Horizon=E2=80=93Glance=20CORS=20r?= =?UTF-8?q?elation=20guidance=20for=20image=20uploads?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - multiregion: document consume/integrate horizon-cors-origin with glance - upgrades: add post-refresh steps for multi region setups - dashboard: browser must be able to reach glance public endpoint for uploads Signed-off-by: Raven Kaur --- how-to/misc/multiregion-deployments.rst | 3 +++ how-to/misc/using-the-openstack-dashboard.rst | 7 ++++++- how-to/operations/cluster-upgrades.rst | 21 +++++++++++++++++++ 3 files changed, 30 insertions(+), 1 deletion(-) diff --git a/how-to/misc/multiregion-deployments.rst b/how-to/misc/multiregion-deployments.rst index 18e50bf..204ea24 100644 --- a/how-to/misc/multiregion-deployments.rst +++ b/how-to/misc/multiregion-deployments.rst @@ -125,6 +125,7 @@ defined. juju consume $controller:$owner/openstack.keystone-endpoints juju consume $controller:$owner/openstack.keystone-ops juju consume $controller:$owner/openstack.cert-distributor + juju consume $controller:$owner/openstack.horizon-cors-origin juju integrate keystone-endpoints cinder:identity-service juju integrate keystone-endpoints glance:identity-service @@ -138,6 +139,8 @@ defined. juju integrate cert-distributor nova:receive-ca-cert juju integrate cert-distributor placement:receive-ca-cert + juju integrate horizon-cors-origin glance:cors-origin + # Run the following once Sunbeam reaches the following phase: # ⠸ Deploying OpenStack Hypervisor ... juju switch admin/openstack-machines diff --git a/how-to/misc/using-the-openstack-dashboard.rst b/how-to/misc/using-the-openstack-dashboard.rst index 504f694..c33ccfa 100644 --- a/how-to/misc/using-the-openstack-dashboard.rst +++ b/how-to/misc/using-the-openstack-dashboard.rst @@ -38,5 +38,10 @@ After a successful login, you should see the landing page: .. figure:: horizon-overview.png :alt: Horizon overview page -You can now start managing your OpenStack cloud (e.g. create additional +You can now start managing your OpenStack cloud (e.g. create additional users, launch server instances, etc.). + +.. important:: + Uploading images via the dashboard requires the browser to have direct + access to the Glance public endpoint. Ensure this endpoint is reachable + from any machine used to access the dashboard. diff --git a/how-to/operations/cluster-upgrades.rst b/how-to/operations/cluster-upgrades.rst index 4aac5c1..e288cdb 100644 --- a/how-to/operations/cluster-upgrades.rst +++ b/how-to/operations/cluster-upgrades.rst @@ -133,3 +133,24 @@ stored manifest: .. code:: text sunbeam cluster refresh --clear-manifest + +.. _refresh-multi-region: + +Multi-region deployments +----------------------------------------- + +In a multi-region deployment, run the following for each secondary region +after completing the cluster refresh. This adds the ``cors-origin`` relation +between Horizon on the region controller and Glance in the secondary region, +which is required for image uploads from the dashboard. + +:: + + controller="sunbeam-controller-region-controller" + # Usually the region controller fqdn + owner="$ownerFqdn" + + juju switch openstack + + juju consume $controller:$owner/openstack.horizon-cors-origin + juju integrate horizon-cors-origin glance:cors-origin