AllSpark
Bringing infrastructure to life whilst avoiding lock-in!
Prerequisites
AllSpark depends on the following software being installed
Install
Older pip versions have issues with some of the dependencies, upgrading is optional.
pip install --upgrade pip
pip install allspark
Upgrade
pip install allspark -U
Usage
Create a new Allspark project and move to its root directory. Open the terraform variables file and add the credentials for your cloud provider.
allspark init <project_name>
cd <project_name>
nano infrastructure/terraform.tfvars
List the installed sparks and then see what sparks are available for your cloud provider.
allspark sparks list
allspark sparks available
Add a spark to your project, you'll be prompted for a name (and eventually any addition configurations it requires). Running list should now show you've added a spark.
allspark sparks add <spark_name>
allspark sparks list
Apply your configuration, optionally use -f to force packages to update from source (by default terraform and ansible modules will be cached otherwise).
allspark update [-f]
Modify your configuration in the allspark.json file at the root of the project. This stores the state of the packages you've added and any random username / passwords generated.
Developer Setup
Developer setup will install the Python module in editable mode.
git clone "https://github.com/broomyocymru/allspark"
./install.sh