> file_roots:
> base:
> - /srv/salt
> webserver:
> - /srv/web
>
> Just trying to understand how to get and if the following set up in just moving the above to a git repo will work?
>
> ...
> I moved it into a git repo:
https://github.com/mduttaroy-devops/configs-provisioner-saltstack
> and put the roots in a directory in the repo called: roots.set.A/{pillar,salt,web} - same structure as previously served from /srv/{pillar,salt,web}
I think this is where you're running into trouble. I inspected that repo and it looks like you're trying to put multiple environments plus your pillar data into a single branch in GitFS, but this isn't how GitFS works.
GitFS assumes that each branch is its own environment, and that the `master` branch is the `base` environment. So to set it up the same way you had it with `file_roots`, you should have a `master` branch with just the contents of your `base` environment, and a `webserver` branch with just the contents of your `webserver` environment.
Pillar must be managed completely separately, in a different repo. Look at the documentation for external pillars and `git_pillar` for information there.
>
> I extended the above master config as:
>
> file_roots:
> base:
> - /salt
> webserver:
> - /web
When you're using `git` as your only fileserver_backend, the `file_roots` configuration no longer matters, `file_roots` is only used when you're using the `roots` backend.
To show an example from above, if you wanted to get your `base` environment working with your current config, just change gitfs_mountpoint like this:
gitfs_mountpoint: salt://roots.set.A/salt
However, now your webserver stuff won't work at all. That needs to go in a separate `webserver` branch.
Hopefully this is helpful!
--
Colton Myers
Platform Engineer, SaltStack
@basepi on Github/Twitter/IRC