A Comprehensive Tool for Setting Up Virtual Machines.
Project description
🚀 VM Setup Tool
PyPI • GitHub • Contributing • License
A modern, user-friendly solution for automating and managing virtual machine (VM) setup and configuration using Ansible.
✨ Features
- Automated VM setup with Docker & Docker Compose
- Cloud VM provisioning via SSH
- SSH key management and configuration
- Simple Python API for integration
- One-command version check:
vm_tool --version
⚡️ Installation
Install the latest version from PyPI:
pip install vm-tool
🛠️ Usage Examples
Automated Local VM Setup
from vm_tool.runner import SetupRunner, SetupRunnerConfig
config = SetupRunnerConfig(
github_username='your_github_username',
github_token='your_github_token',
github_project_url='your_github_project_url',
github_branch='your_branch_name',
docker_compose_file_path='path_to_your_docker_compose_file',
dockerhub_username='your_dockerhub_username',
dockerhub_password='your_dockerhub_password'
)
runner = SetupRunner(config)
runner.run_setup()
Cloud VM Setup (via SSH)
from vm_tool.runner import SetupRunner, SetupRunnerConfig, SSHConfig
config = SetupRunnerConfig(
github_username='your_github_username',
github_token='your_github_token',
github_project_url='your_github_project_url',
github_branch='your_branch_name',
docker_compose_file_path='path_to_your_docker_compose_file',
dockerhub_username='your_dockerhub_username',
dockerhub_password='your_dockerhub_password'
)
runner = SetupRunner(config)
ssh_configs = [
SSHConfig(
ssh_username='your_ssh_username',
ssh_password='your_ssh_password',
ssh_hostname='your_ssh_hostname',
ssh_identity_file='/path/to/your/ssh_key' # Optional
)
]
runner.run_cloud_setup(ssh_configs)
SSH Key Management
from vm_tool.ssh import SSHSetup
ssh_setup = SSHSetup(
hostname='your_vm_hostname',
username='your_vm_username',
password='your_vm_password',
email='your_email_for_ssh_key'
)
ssh_setup.setup()
🖥️ Command Line Version Check
Check your installed version at any time:
vm_tool --version
⚙️ Configuration Options
github_username: GitHub username (for private repos)github_token: GitHub token (for private repos)github_project_url: GitHub repository URLgithub_branch: Branch to use (default: main)docker_compose_file_path: Path to Docker Compose file (default: docker-compose.yml)dockerhub_username: Docker Hub username (if login needed)dockerhub_password: Docker Hub password (if login needed)
📚 Learn More
See the PyPI page for more details, or visit the GitHub repository for full documentation, issues, and contributions.
Empower your infrastructure automation with VM Setup Tool – fast, reliable, and developer-friendly!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
vm_tool-1.0.29.tar.gz
(11.7 kB
view details)
File details
Details for the file vm_tool-1.0.29.tar.gz.
File metadata
- Download URL: vm_tool-1.0.29.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
594257c222ad4fe14f3eedad21e853a278e2953a76beda2309a4a2bd9aaff9c4
|
|
| MD5 |
8214e2c865f7b068b3b614608db0921c
|
|
| BLAKE2b-256 |
3d6c4c081b5e4113809b6cf399e07676fa4a7ad003d9f73c4a6506c0fcfb34b4
|