Skip to content

Commit 16871c4

Browse files
committed
feat(init): top level meta state apply states based on configuration
Minion should only have the proper configuration set and running `state.apply moosefs` will apply only enabled components. BREAKING CHANGE: you must set `master:enabled`, `metalogger:enabled`, `chunkserver:enabled`, `cgiserv:enabled`, `client:enabled`, `cli:enabled` and `netdump:enabled` to install each component with the top level state
1 parent b79bd6e commit 16871c4

File tree

2 files changed

+42
-19
lines changed

2 files changed

+42
-19
lines changed

moosefs/cleaned.sls

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# -*- mode: salt; coding: utf-8 -*-
2+
# vim: ft=sls
3+
4+
{%- set includes = [] %}
5+
{%- set components = [
6+
"netdump",
7+
"cli",
8+
"client",
9+
"cgiserv",
10+
"cgi",
11+
"chunkserver",
12+
"metalogger",
13+
"master",
14+
] %}
15+
16+
{%- for component in components %}
17+
{%- do includes.append("." ~ component ~ ".cleaned") %}
18+
{%- endfor %}
19+
20+
include: {{ includes }}

moosefs/init.sls

+22-19
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,26 @@
1-
{% from "moosefs/map.jinja" import moosefs with context %}
1+
# -*- mode: salt; coding: utf-8 -*-
2+
# vim: ft=sls
23

4+
{#- Get the `tplroot` from `tpldir` #}
5+
{%- set tplroot = tpldir.split("/")[0] %}
6+
{%- from tplroot ~ "/libs/map.jinja" import mapdata as moosefs without context %}
37
4-
build_essestial:
5-
pkg.installed:
6-
- pkgs:
7-
{% for required_pkg in moosefs.required_pkgs %}
8-
- {{ required_pkg }}
9-
{% endfor %}
8+
{%- set includes = [] %}
9+
{%- set components = [
10+
"master",
11+
"metalogger",
12+
"chunkserver",
13+
"cgi",
14+
"cgiserv",
15+
"client",
16+
"cli",
17+
"netdump",
18+
] %}
1019
11-
mfs-group:
12-
group.present:
13-
- name: mfs
14-
- system: True
20+
{%- for component in components %}
21+
{%- if moosefs | traverse(component ~ ":enabled", False) %}
22+
{%- do includes.append("." ~ component) %}
23+
{%- endif %}
24+
{%- endfor %}
1525
16-
mfs:
17-
user.present:
18-
- name: mfs
19-
- fullname: MooseFS
20-
- home: /home/mfs
21-
- createhome: True
22-
- groups:
23-
- mfs
26+
include: {{ includes }}

0 commit comments

Comments
 (0)