OpenStack Horizon plugin that supports ESI
Installation
Clone the repository:
git clone https://github.com/CCI-MOC/esi-ui.git
Copy all files under esi-ui’s enabled directory:
cp -r <esi-ui path>/esi_ui/enabled <horizon path>/openstack_dashboard/local
Next, install the package into the environment you use to run your server.
If you run Horizon using tox, edit your tox.ini file to include esi-ui as a dependency:
[testenv]
deps =
...
-r{toxinidir}/requirements.txt
-e <esi-ui path>
Then restart your server by running:
tox -e runserver_plus -- localhost:8000
Read how to install Horizon to use tox here: https://github.com/CCI-MOC/esi/issues/545#issuecomment-2143063522
If you run Horizon using Apache, pip install the esi-ui package:
python setup.py sdist pip install dist/<package>.tar.gz
Finally, restart your server using one of the commands based on your environment from here: https://docs.openstack.org/horizon/latest/install/,
Read more about general plugin installation: https://docs.openstack.org/horizon/latest/contributor/tutorials/plugin.html#installing-your-plugin
Structure
An example file structure looks like this:
esi_ui
├── api
│ ├── esi_api.py
│ ├── esi_rest_api.py
│ └── __init__.py
├── content
│ ├── esi
│ │ ├── __init__.py
│ │ ├── panel.py
│ │ ├── templates
│ │ │ └── esi
│ │ │ └── index.html
│ │ ├── urls.py
│ │ └── views.py
│ └── __init__.py
├── enabled
│ ├── _6000_esi_panel_group.py
│ └── _6010_project_nodes_panel.py
├── __init__.py
└── static
└── dashboard
└── project
└── esi
├── esi.controller.js
├── esi.html
├── esi.module.js
└── nodes.service.js
api
esi_rest_api.py contains api endpoints that becomes registered on the server. This file usually calls functions defined in esi_api.py which usually returns resources such as nodes, leases, offers, etc.
content
This directory holds subdirectories that contain the content required to display a panel.
enabled
This directory contains files that define settings for dashboards, panels, panel groups, and Django.
static
This directory and its contents will be copied to the Horizon root directory for Angularjs to see. To add to different dashboards, such as admin or identity, create a directory under dashboard and populate it with your Angularjs files.
Read more about the file structure: https://docs.openstack.org/horizon/latest/contributor/tutorials/plugin.html#file-structure
Metadata
Release files for esi-ui 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| esi_ui-0.1.0.tar.gz | 43.8 kB | Without provenance | Details for esi_ui-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| esi_ui-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for esi_ui-0.1.0-py3-none-any.whl |
Total release size: 115.8 kB
Release files / esi_ui-0.1.0.tar.gz
| Download URL | esi_ui-0.1.0.tar.gz |
|---|---|
| Size | 43.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9ed092f475a4a930c0eeb97ffc8ee18106dc7322cc17a45229764f8fa5ce39ba
|
|
BLAKE2b-256 checksum How to use checksums |
853cc3f55aa40b77a4e3e04b63c8382eca4e7f37a319635a0dc0d789b4213ffa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/2.0.0 pkginfo/1.5.0.1 requests/2.20.0 setuptools/39.2.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.8
|
Release files / esi_ui-0.1.0-py3-none-any.whl
| Download URL | esi_ui-0.1.0-py3-none-any.whl |
|---|---|
| Size | 72.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
deb68915ff373e80522db401a3b527e7f5c712dcb39204d1ff95c8b32e78abdb
|
|
BLAKE2b-256 checksum How to use checksums |
6cf68d07177e353a893ae473d03c21ed6d437c11b62edf2c916a5cb16b650f5d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/2.0.0 pkginfo/1.5.0.1 requests/2.20.0 setuptools/39.2.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.8
|
Security for esi-ui 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.