Not just another infrastructure management tool


Keywords
ansible, celery, infrastructure-management, multithreading
License
MIT
Install
pip install ultron==0.0.1

Documentation

ultron

PyPI version Build Status Join the chat at https://gitter.im/rapidstack/ultron

Dependencies

Only Linux platform with systemd supports this.

Configuration

Parameter Environment variable Default (if not set)
Default port ULTRON_PORT 5050
Base URL ULTRON_BASE_URL Local server's https://FQDN:PORT. e.g. https://localhost:5050
SSL key file ULTRON_SSL_KEY_FILE '~/.ultron_key.pem'
SSL certification file ULTRON_SSL_CERT_FILE '~/.ultron_cert.pem'
Application secret ULTRON_SECRET Random string
Authenntication method ULTRON_AUTH_METHOD 'pam_auth'
Auth token validity ULTRON_TOKEN_TIMEOUT 3600
mongoDB host ULTRON_DB_HOST 'localhost:27017'
mongoDB username ULTRON_DB_USER None
mongoDB password ULTRON_DB_PASS None
mongoDB data path ULTRON_DB_PATH '~/.ultron_data'
Celery backend ULTRON_CELERY_BACKEND 'rpc://'
Celery broker ULTRON_CELERY_BROKER 'redis://localhost:6379/'
Auto scaling (max,min) concurrency ULTRON_AUTOSCALE '100,3'
Plugins path ULTRON_PLUGINS_PATH '~/python_modules'

Installation

First make sure your default python interpreter is python 3+

  • Install dependencies
# Ubuntu / Debian
sudo apt-get install -y tmux build-essential libssl-dev libffi-dev python3-dev sshpass openssl
sudo pip install virtualenv

# RHEL / CentOS / Fedora
sudo yum install -y tmux gcc libffi-devel python3-devel openssl-devel sshpass openssl
sudo pip install virtualenv

Also install MongoDB and redis from their official site

  • It is optional but recommended to use virtual python3 environment
# Activate virtual environment
virtualenv -p python3 ~/.venv
source ~/.venv/bin/activate
  • Install
pip install ultron
  • Generate SSL certificate and key file
openssl req -x509 -newkey rsa:4096 -nodes -out ~/.ultron_cert.pem -keyout ~/.ultron_key.pem -days 365
  • Run application
# Run app
ultron-run

Command-line interface to interact with API

For more info about ultron CLI, click here: ultron-cli

Plugins

For more info about plugin tasks, click here: ultron-plugins