mirror of
https://github.com/saltstack-formulas/sudoers-formula.git
synced 2026-09-19 11:24:43 +02:00
start of sudoers formula
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
{% set sudoers = pillar.get('sudoers', {}) %}
|
||||
{% set defaults = sudoers.get('defaults', []) %}
|
||||
{% set aliases = sudoers.get('aliases', {}) %}
|
||||
{% set host_aliases = aliases.get('host', []) %}
|
||||
{% set user_aliases = aliases.get('user', []) %}
|
||||
{% set cmnd_aliases = aliases.get('commands', []) %}
|
||||
{% set runas_aliases = aliases.get('runas', []) %}
|
||||
{% set users = sudoers.get('users', {}) %}
|
||||
{% set groups = sudoers.get('groups', {}) %}
|
||||
{% set includedir = sudoers.get('includedir', None) %}
|
||||
#
|
||||
# This file is managed by salt
|
||||
#
|
||||
|
||||
{% for default in defaults -%}
|
||||
Defaults {{ default }}
|
||||
{%- endfor %}
|
||||
|
||||
# Host alias specification
|
||||
{% for default in defaults -%}
|
||||
Defaults {{ default }}
|
||||
{%- endfor %}
|
||||
|
||||
# User alias specification
|
||||
{{ user_aliases }}
|
||||
|
||||
# Cmnd alias specification
|
||||
{{ cmnd_aliases }}
|
||||
|
||||
# Runas alias specification
|
||||
{{ runas_aliases }}
|
||||
|
||||
# User privilege specification
|
||||
{{ users }}
|
||||
|
||||
# Group privilege specification
|
||||
{{ groups }}
|
||||
|
||||
{% if includes %}
|
||||
includedir {{ includedir }}
|
||||
{% else %}
|
||||
#includedir /etc/sudoers.d
|
||||
{% endif %}
|
||||
@@ -0,0 +1,15 @@
|
||||
{% from "sudoers/package-map.jinja" import pkgs with context %}
|
||||
|
||||
sudo:
|
||||
pkg.installed:
|
||||
- name: {{ pkg.sudo }}
|
||||
|
||||
/etc/sudoers
|
||||
file.managed:
|
||||
- user: root
|
||||
- group: root
|
||||
- mode: 440
|
||||
- template: jinja
|
||||
- source: salt://sudoers/files/sudoers
|
||||
- require:
|
||||
- pkg: sudo
|
||||
@@ -0,0 +1,14 @@
|
||||
{% set package_table = {
|
||||
'Debian': {'sudo': 'sudo'},
|
||||
'Ubuntu': {'sudo': 'sudo'},
|
||||
'CentOS': {'sudo': 'sudo'},
|
||||
'Fedora': {'sudo': 'sudo'},
|
||||
'RedHat': {'sudo': 'sudo'},
|
||||
'Gentoo': {'sudo': 'app-admin/sudo'}
|
||||
} %}
|
||||
|
||||
{% if 'package_table' in pillar %}
|
||||
{% set pkgs = pillar['package_table'] %}
|
||||
{% elif grains['os'] in package_table %}
|
||||
{% set pkgs = package_table[grains['os']] %}
|
||||
{% endif %}
|
||||
Reference in New Issue
Block a user