Automated deployment of the SMI software stack.
The roles in this collection can be used to deploy the following software to a remote target:
- Python 3.10
The site.yaml
playbook will deploy all configured software to the host(s) in the software_host
group of your inventory. This can be overridden through the target
variable e.g., ansible-playbook ... -e "target=localhost" site.yaml
.
Included in the repo are convenience scripts to execute this playbook without an inventory.
$ ./bin/deploy-as-user
will execute the playbook as the current user, with the install directory set to ~/smi
.
$ ./bin/deploy-as-root
will execute the playbook as the root, with the install directory set to /opt/smi
.
WIP
$ ./bin/build-docker-aio
will launch a docker image and execute the playbook against it. If the playbook
succeeds, the image will be saved and tagged as smi/aio:latest
.
Also included are scripts to start/stop containers with the services we depend on (e.g., MongoDB):
The default SQL database is PostgreSQL, however we also support MariaDB by setting SMI_DATABASE=mariadb
.
$ ./bin/start-docker-services
...
$ ./bin/stop-docker-services
Please see the CONTRIBUTING guide to get started.