SSH as a Service (Tatu) Horizon Plugin
Go to file
OpenDev Sysadmins c4f3110f74 OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:51:56 +00:00
doc/source Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
releasenotes Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
tatudashboard Use Tatu API v1 in passthrough.py 2018-03-12 20:35:20 +00:00
.gitignore Copy Designate-Dashboard to get started on Tatu dashboard. 2018-01-08 16:34:38 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:51:56 +00:00
CONTRIBUTING.rst Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
HACKING.rst Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
LICENSE Copy Designate-Dashboard to get started on Tatu dashboard. 2018-01-08 16:34:38 +00:00
README.rst Debugging SSH Hosts panel. 2018-01-09 15:19:09 -06:00
babel-django.cfg Copy Designate-Dashboard to get started on Tatu dashboard. 2018-01-08 16:34:38 +00:00
karma.conf.js Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
manage.py Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
openstack-common.conf Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
package.json Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
requirements.txt Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
setup.cfg Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00
setup.py Copy Designate-Dashboard to get started on Tatu dashboard. 2018-01-08 16:34:38 +00:00
test Copy Designate-Dashboard to get started on Tatu dashboard. 2018-01-08 16:34:38 +00:00
test-requirements.txt Copy Designate-Dashboard to get started on Tatu dashboard. 2018-01-08 16:34:38 +00:00
test-shim.js Copy Designate-Dashboard to get started on Tatu dashboard. 2018-01-08 16:34:38 +00:00
tox.ini Draft panel for SSH Hosts list. 2018-01-09 00:09:20 -06:00

README.rst

Team and repository tags

image

tatudashboard

Tatu Horizon UI bits

  • Free software: Apache license

Features

  • TODO

Howto

  1. Package the tatudashboard by running:

    python setup.py sdist

    This will create a python egg in the dist folder, which can be used to install on the horizon machine or within horizon's python virtual environment.

    -- or --

    Install directly from source by running "python setup.py --install"

    Note: On some systems python may throw an error like

    'Exception: Versioning for this project requires either an sdist tarball, or access

    to an upstream git repository'

    this seems to be a result of mismatched pbr versioning. A hacking workaround for development purposes is replacing the pbr call with a hard-coded version (e.g. '1.0.1') in tatudashboard/__init__.py.

  2. Copy panel plugin files into your Horizon config. These files can be found in tatudashboard/enabled and should be copied to /usr/share/openstack-dashboard/openstack_dashboard/local/enabled or the equivalent directory for your openstack-dashboard install.

  3. Make sure your keystone catalog contains endpoints for service type 'ssh'. If no such endpoints are found, the tatudashboard panels will not render.

  4. (Optional) Copy the tatu policy file into horizon's policy files folder, and add this config:

    'ssh': 'tatu_policy.json',
  5. (Optional) Within your horizon settings file(s) (either the local settings or the other settings.py), add the line below. This will make it so the record create/update screen uses a drop down of your floating ip addresses instead of a free form text field:

    TATU = { 'records_use_fips': True }

Test

  • How to run JS tests:

    • Install npm and nodejs=4.8.4

    $ sudo apt-get install npm $ curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - $ sudo apt-get install -y nodejs

    1. npm install (to create virtual environment and install all dependencies in package.json)
    2. npm run lint for eslint
    3. npm run test for JS unit tests