Order of operation

Organisation & Workflow

  • makina-states primarely use salt to deploy on the targeted environment.
  • Our salt states are thought to be used in a special order,
    and specially when you call salt via the sls: makina-states.top.
    • We apply first the nodetype configuration.
    • Then, we will apply the controllers configuration.
    • Then, we will apply localsettings states
    • After all of the previous steps, we may configure services like sshd, crond, or databases. If we are on the scratch mode, no services are configured by default.
    • Eventually, we may by able to install projects via mc_project.
      A project is just a classical code repository which has a “.salt” and/or ansible playbooks/roles folder commited with enougth information on how to deploy it.


  • The configuration of any of the formulas (nodetypes, controllers, localsettings, services) is handled via Makina-States registries.


  • Makina-States was first using the salt HighState principle of configuring everything.
  • was based at fist on nodetypes presets that were preselected collections of salt states to apply to the system
  • This is from where the highstate will start to run.
  • Recently we cutted off this behavior, and now you must apply them explicitly.
    • highstate tend to grow and when you decide to reapply it you may accidentaly deliver things you forgotten of.
    • It’s long, very long to wait to reapply everything for small changes.
Last Updated: 2017-03-15