Skip to main content

A Textual-based Wizard for OpenStack-Ansible.

Project description

OpenStack-Ansible Wizard TUI

drawing

A user-friendly Textual-based configuration manager for OpenStack-Ansible.

Features

  • Interactive TUI: A modern terminal interface for managing your OpenStack-Ansible deployment, from initial setup to detailed configuration.

  • Guided Setup: Automatically checks for your OpenStack-Ansible repository and configuration directories, guiding you through the first steps.

  • Guided Bootstrapping:

    drawing

    • Fetches available OpenStack releases and corresponding OpenStack-Ansible versions directly from OpenDev.
    • Clones the exact version of the OpenStack-Ansible repository you need.
    • Runs the bootstrap-ansible.sh script and displays live log output.
  • Inventory Management:

    drawing

    • Visually manage your inventory hosts and groups in an interactive table.
    • Easily add, edit, and assign hosts to groups through intuitive forms.
    • Saves changes back to your configuration files, automatically organizing groups into standardized files under conf.d/.
  • Network Configuration:

    drawing

    • Create, edit and delete CIDR definitions together with used subnets
    • Manage provider networks definitions
  • Services Configuration: Manage most common settings and scenarios in (almost) intuitive way

    drawing

    • Configure Public/Private endpoint names
    • Define details for issued self-signed Certificate Authority
    • Configure HAProxy and Keepalived details
    • More to come soon!
  • Built-in Configuration Editor:

    drawing

    • A powerful side-by-side file browser and YAML editor for direct manipulation of all configuration files.
    • Supports creating, deleting, and editing files and directories within your configuration path.
  • Web TUI Mode: Serve the entire application as a web-based TUI, accessible from any modern browser.

    drawing

  • Can be used with existing deployments: At your own risk, of course! We are trying our best to have compatibility and do not break existing environments, but this is not always guaranteed.

Installation

  1. Create a Python Virtual Environment (Recommended)

    python3 -m venv .venv
    source .venv/bin/activate
    
  2. Install the Package

    Install the application and its dependencies using pip.

    # For standard TUI usage
    pip install openstack-ansible-wizard
    
    # To include web server capabilities
    pip install openstack-ansible-wizard[serve]
    

    You can also run the application without installation, which might be convenient during development:

    # Install requirements manually
    pip install -r requirements.txt
    # Run application
    python3 run.py
    

Usage

Once installed, you can run the application using the console script created during installation:

openstack-ansible-wizard

Environment Variables

The application uses the following environment variables to determine default paths. You can set them to point to your existing setup before running the app.

  • OSA_CLONE_DIR: The path to your openstack-ansible repository. (Default: /opt/openstack-ansible)
  • OSA_CONFIG_DIR: The path to your OpenStack-Ansible configuration directory. (Default: /etc/openstack_deploy)

Example:

export OSA_CONFIG_DIR=~/openstack-configs
openstack-ansible-wizard

Web TUI Mode

The application can also be served as a web-based TUI that you can access from your browser. This is useful for running the wizard on a remote server.

First, ensure you have installed the application with the serve extras (see Installation section).

Then, run the serve command:

openstack-ansible-wizard serve --host localhost --port 8080

You can then access the application by navigating to http://localhost:8080 in your web browser.

License

This project is licensed under the Apache License 2.0. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openstack_ansible_wizard-0.1.0.tar.gz (50.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openstack_ansible_wizard-0.1.0-py3-none-any.whl (62.7 kB view details)

Uploaded Python 3

File details

Details for the file openstack_ansible_wizard-0.1.0.tar.gz.

File metadata

  • Download URL: openstack_ansible_wizard-0.1.0.tar.gz
  • Upload date:
  • Size: 50.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for openstack_ansible_wizard-0.1.0.tar.gz
Algorithm Hash digest
SHA256 82433aa02610ca389e8686238420342c7be628ba1544c352cd6c8fb9c6b42802
MD5 f13a7513c176283c5125db2df9dff2c8
BLAKE2b-256 61e3232da92cf5a80bc6809a79f621cbffb967b81d29129bb52322a92698dda6

See more details on using hashes here.

Provenance

The following attestation bundles were made for openstack_ansible_wizard-0.1.0.tar.gz:

Publisher: publish.yml on adriacloud/openstack-ansible-wizard

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file openstack_ansible_wizard-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for openstack_ansible_wizard-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 74789966f8d1027b4cbd913a3108be17c97628f5d27c9ffee927e7c1d354cd1c
MD5 8c4a04e3311add659ec438231e26e5d6
BLAKE2b-256 011978887a9d7f841afe58cf1cd67b68fe001ab4290f53fd973360e23268555e

See more details on using hashes here.

Provenance

The following attestation bundles were made for openstack_ansible_wizard-0.1.0-py3-none-any.whl:

Publisher: publish.yml on adriacloud/openstack-ansible-wizard

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page