Skip to content

Hac1es/single-entry-cloud

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cloud Provisioning Playbook

Provision AWS EC2 or OpenStack Nova instances with one simple Ansible command and consistent inputs.

Overview

  • Inputs: platform (aws|openstack) and flavor (small|medium|large).
  • Defaults live in group_vars/all.yml (images, flavors, network, security groups, keys).
  • Single entrypoint: site.yml selects the right role per platform.

Install

python -m venv .venv
. .venv/bin/activate
pip install ansible
ansible-galaxy collection install -r requirements.yml

Configure

  • AWS: set env vars or aws configure (optionally AWS_PROFILE).
  • OpenStack: source ./admin-openrc.sh (WSL/Git Bash on Windows recommended).

Run

  • AWS (small):

    ansible-playbook site.yml -i localhost, -c local -e "platform=aws flavor=small"
  • OpenStack (medium):

    source ./admin-openrc.sh
    ansible-playbook site.yml -i localhost, -c local -e "platform=openstack flavor=medium"
  • Overrides & verbosity:

    ansible-playbook site.yml -i localhost, -c local -e "platform=aws flavor=large aws.region=us-west-2" -vvv
    
    ansible-playbook site.yml -i localhost, -c local -e "platform=openstack flavor=small openstack.key_name=mykey"

Folder Structure

Provisioning_Playbook/
├─ admin-openrc.sh
├─ ansible.cfg
├─ requirements.yml
├─ site.yml
├─ group_vars/
│  └─ all.yml
└─ roles/
   ├─ ec2.yml
   └─ nova.yml

About

A PoC provisioning playbook for Multi/Hybrid-Cloud

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors