Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mallozup/suseforma
generic framework inspired from sumaform
https://github.com/mallozup/suseforma
ci cloud continuous-delivery continuous-deployment continuous-integration debian generic-framework hcl libvirt multiple-machines opensuse salt suse terraform
Last synced: about 1 month ago
JSON representation
generic framework inspired from sumaform
- Host: GitHub
- URL: https://github.com/mallozup/suseforma
- Owner: MalloZup
- Created: 2016-11-16T16:39:14.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2017-06-03T13:41:34.000Z (over 7 years ago)
- Last Synced: 2024-10-30T08:48:16.673Z (3 months ago)
- Topics: ci, cloud, continuous-delivery, continuous-deployment, continuous-integration, debian, generic-framework, hcl, libvirt, multiple-machines, opensuse, salt, suse, terraform
- Language: HCL
- Homepage:
- Size: 121 KB
- Stars: 3
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# suseforma
generic framework inspired from sumaform https://github.com/moio/sumaform
Suseforma is a simplified generic sumaform version. (salt + terraform (libvirt-plugin), and should help you to learn create a template for your projecthttps://github.com/dmacvicar/terraform-provider-libvirt
## Install prereq:
https://github.com/moio/sumaform/#installation
## Run the example:
* modify the prefiy in main.tf.example with a unique value string of your choice:https://github.com/MalloZup/suseforma/blob/master/main.tf.example#L11
* make sure you have libvirt running and the network you use on main.tf exists```console
vi main.tf.example
cp main.tf.example main.tf
terraform get
terraform apply
```## How to use suseforma:
Baiscally, terraform create disks and networks etc (main.tf file)
Salt run after matching the roles (grains), and execute the states assigned.#### roles
On the top.sls file
https://github.com/MalloZup/suseforma/blob/master/salt/top.sls**creating new role**
Example:
*frankzappa:*
* 1 we define the role on main
https://github.com/MalloZup/suseforma/blob/master/main.tf.example#L28
* 2 we create role defintion on grain
https://github.com/MalloZup/suseforma/blob/master/salt/top.sls
* 3 we create the dir on salt and put init.sls with some operation salt.
The control-node, has the grain definiton **"hidden"** in terraform
https://github.com/MalloZup/suseforma/blob/master/modules/libvirt/control_node/main.tf#L8
_____Suseforma is basically terraform, libvirtd (https://github.com/dmacvicar/terraform-provider-libvirt) with salt.
This is for learning purpose.The control-node machine, is a concept to orchestrate machines, in complex scenario.
In spacewalk-testsuite(https://github.com/SUSE/spacewalk-testsuite-base), we run cucumber code inside the control-node that orchestrate the multiples-machines.For getting more in touch, take inspiration from sumaform.