Saltstack Official OpenSSH Formula
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

feat(map): use targeting like syntax for configuration The `config_get_lookup` and `config_get` sources lack flexibility. It's not easy to query several pillars and/or grains keys with the actual system. And the query method is forced to `config.get` without being configurable by the user. We define a mechanism to select `map.jinja` sources with similar notation as the salt targeting system. The `map.jinja` file uses several sources where to lookup parameter values. The list of sources can be modified by two files: 1. a global salt://parameters/map_jinja.yaml 2. a per formula salt://{{ tplroot }}/parameters/map_jinja.yaml. Each source definition has the form `<TYPE>:<OPTION>@<KEY>` where `<TYPE>` can be one of: - `Y` to load values from YAML files, this is the default when no type is defined - `C` to lookup values with `config.get` - `G` to lookup values with `grains.get` - `I` to lookup values with `pillar.get` The YAML type option can define the query method to lookup the key value to build the file name: - `C` to query with `config.get`, this is the default when to query method is defined - `G` to query with `grains.get` - `I` to query with `pillar.get` The `C`, `G` or `I` types can define the `SUB` option to store values in the sub key `mapdata.<key>` instead of directly in `mapdata`. Finally, the `<KEY>` describe what to lookup to either build the YAML filename or gather values using one of the query method. BREAKING CHANGE: the configuration `map_jinja:sources` is only configurable with `salt://parameters/map_jinja.yaml` and `salt://{{ tplroot }}/parameters/map_jinja.yaml` BREAKING CHANGE: the `map_jinja:config_get_roots` is replaced by compound like `map_jinja:sources` BREAKING CHANGE: the two `config_get_lookup` and `config_get` are replaced by `C@<tplroot>:lookup` and `C@<tplroot>` sources
4 yıl önce
123456789101112131415161718192021
  1. # -*- coding: utf-8 -*-
  2. # vim: ft=yaml
  3. ---
  4. values:
  5. sources:
  6. - "Y:G@osarch"
  7. - "Y:G@os_family"
  8. - "Y:G@os"
  9. - "Y:G@osfinger"
  10. # Merge values from `config.get` under `mapdata.<key>` to keep
  11. # compatibility with user pillars.
  12. # The `<key>` and `<key>:lookup` are merged together
  13. - "C:SUB@openssh:lookup"
  14. - "C:SUB@openssh"
  15. - "C:SUB@sshd_config:lookup"
  16. - "C:SUB@sshd_config"
  17. - "C:SUB@ssh_config:lookup"
  18. - "C:SUB@ssh_config"
  19. - "Y:G@id"