
{%- load_yaml as common_defaults %}
Debian:
  pkgs:
  - ceph-common
  container_mode: False
  prefix_dir: ''
  services: []
{%- endload %}
{% set common = salt['grains.filter_by'](common_defaults, merge=salt['pillar.get']('ceph:common')) %}

{%- load_yaml as mon_defaults %}
Debian:
  pkgs:
  - ceph-mon
  services:
  - ceph
{%- endload %}
{% set  mon = salt['grains.filter_by'](mon_defaults, merge=salt['pillar.get']('ceph:mon')) %}

{%- load_yaml as mgr_defaults %}
Debian:
  pkgs:
  - ceph-mgr
  services:
  - ceph-mgr
{%- endload %}
{% set  mgr = salt['grains.filter_by'](mgr_defaults, merge=salt['pillar.get']('ceph:mgr')) %}

{%- load_yaml as osd_defaults %}
Debian:
  pkgs:
  - ceph-osd
  - ceph-common
  services: []
{%- endload %}
{% set osd = salt['grains.filter_by'](osd_defaults, merge=salt['pillar.get']('ceph:osd')) %}

{%- load_yaml as radosgw_defaults %}
Debian:
  pkgs:
  - radosgw
  - ceph-common
  - python-rados
  - librados2
  services:
  {%- if grains.get('init', None) == 'systemd' %}
  - ceph-radosgw@rgw.{{ grains.host }}
  {%- else %}
  - radosgw-all
  {%- endif %}
  threads: 50
  bind:
    port: 8080
  identity:
    engine: none
RedHat:
  pkgs:
  - radosgw
  - ceph-common
  services:
  - radosgw-all
  threads: 50
  bind:
    port: 8080
  identity:
    engine: none
{%- endload %}
{% set radosgw = salt['grains.filter_by'](radosgw_defaults, merge=salt['pillar.get']('ceph:radosgw')) %}

{%- load_yaml as client_defaults %}
Debian:
  pkgs:
  - ceph-common
  container_mode: False
  prefix_dir: ''
{%- endload %}
{% set client = salt['grains.filter_by'](client_defaults, merge=salt['pillar.get']('ceph:client')) %}

{%- load_yaml as setup_defaults %}
Debian:
  crushmap: {}
{%- endload %}
{% set setup = salt['grains.filter_by'](setup_defaults, merge=salt['pillar.get']('ceph:setup')) %}

{%- load_yaml as monitoring_defaults %}
default:
  cluster_stats: {}
  node_stats: {}
  osd_pgnum_warning: 200
  osd_pgnum_critical: 300
{%- endload %}

{% set monitoring = salt['grains.filter_by'](monitoring_defaults, merge=salt['pillar.get']('ceph:monitoring')) %}

{%- load_yaml as backup_defaults %}

backup:
  Debian:
    pkgs:
    - rsync
    backup_dir: '/var/backups/ceph'
    cron: True
    restrict_clients: True
  RedHat:
    pkgs:
    - rsync
    backup_dir: '/var/backups/ceph'
    cron: True
    restrict_clients: True

{%- endload %}

{% set backup  = salt['grains.filter_by'](backup_defaults['backup'], merge=salt['pillar.get']('ceph:backup', {})) %}

{#- vim:ft=sls
-#}
