mirror of
https://github.com/Security-Onion-Solutions/securityonion.git
synced 2026-05-31 15:35:26 +02:00
check features and allowed/states
This commit is contained in:
@@ -2,11 +2,18 @@
|
||||
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||
# Elastic License 2.0.
|
||||
#
|
||||
# Note: Per the Elastic License 2.0, the second limitation states:
|
||||
#
|
||||
# "You may not move, change, disable, or circumvent the license key functionality
|
||||
# in the software, and you may not remove or obscure any functionality in the
|
||||
# software that is protected by the license key."
|
||||
|
||||
{% from 'allowed_states.map.jinja' import allowed_states %}
|
||||
{% if sls in allowed_states %}
|
||||
{% from 'salt/map.jinja' import SALTVERSION %}
|
||||
{% set HYPERVISORS = salt['pillar.get']('hypervisor:nodes', {} ) %}
|
||||
{% if 'hvn' in salt['pillar.get']('features', []) %}
|
||||
{% from 'salt/map.jinja' import SALTVERSION %}
|
||||
{% set HYPERVISORS = salt['pillar.get']('hypervisor:nodes', {} ) %}
|
||||
|
||||
include:
|
||||
- libvirt.packages
|
||||
@@ -16,6 +23,7 @@ install_salt_cloud:
|
||||
- name: salt-cloud
|
||||
- version: {{SALTVERSION}}
|
||||
|
||||
{% if HYPERVISORS %}
|
||||
cloud_providers:
|
||||
file.managed:
|
||||
- name: /etc/salt/cloud.providers.d/libvirt.conf
|
||||
@@ -32,15 +40,26 @@ cloud_profiles:
|
||||
HYPERVISORS: {{HYPERVISORS}}
|
||||
- template: jinja
|
||||
|
||||
{% for role, hosts in HYPERVISORS.items() %}
|
||||
{% for host in hosts.keys() %}
|
||||
{% for role, hosts in HYPERVISORS.items() %}
|
||||
{% for host in hosts.keys() %}
|
||||
|
||||
hypervisor_{{host}}_{{role}}_pillar_dir:
|
||||
file.directory:
|
||||
- name: /opt/so/saltstack/local/pillar/hypervisor/{{host}}_{{role}}
|
||||
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
{% else %}
|
||||
{{sls}}_no_license_detected:
|
||||
test.fail_without_changes:
|
||||
- name: {{sls}}_no_license_detected
|
||||
- comment:
|
||||
- "Hypervisor nodes are a feature supported only for customers with a valid license.
|
||||
Contact Security Onion Solutions, LLC via our website at https://securityonionsolutions.com
|
||||
for more information about purchasing a license to enable this feature."
|
||||
{% endif %}
|
||||
|
||||
{% else %}
|
||||
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
# Copyright Security Onion Solutions LLC and/or licensed to Security Onion Solutions LLC under one
|
||||
# or more contributor license agreements. Licensed under the Elastic License 2.0 as shown at
|
||||
# https://securityonion.net/license; you may not use this file except in compliance with the
|
||||
# Elastic License 2.0.
|
||||
#
|
||||
# Note: Per the Elastic License 2.0, the second limitation states:
|
||||
#
|
||||
# "You may not move, change, disable, or circumvent the license key functionality
|
||||
# in the software, and you may not remove or obscure any functionality in the
|
||||
# software that is protected by the license key."
|
||||
|
||||
{% from 'allowed_states.map.jinja' import allowed_states %}
|
||||
{% if sls.split('.')[:2]|join('.') in allowed_states %}
|
||||
{% if 'hvn' in salt['pillar.get']('features', []) %}
|
||||
reactor_config_hypervisor:
|
||||
file.managed:
|
||||
- name: /etc/salt/master.d/reactor_hypervisor.conf
|
||||
- contents: |
|
||||
reactor:
|
||||
- 'salt/key':
|
||||
- salt://reactor/check_hypervisor.sls
|
||||
- 'salt/cloud/*/deploying':
|
||||
- /opt/so/saltstack/default/salt/reactor/createEmptyPillar.sls
|
||||
- 'setup/so-minion':
|
||||
- /opt/so/saltstack/default/salt/reactor/sominion_setup.sls
|
||||
- 'salt/cloud/*/destroyed':
|
||||
- /opt/so/saltstack/default/salt/reactor/virtReleaseHardware.sls
|
||||
- /opt/so/saltstack/default/salt/reactor/deleteKey.sls
|
||||
- user: root
|
||||
- group: root
|
||||
- mode: 644
|
||||
- makedirs: True
|
||||
- watch_in:
|
||||
- service: salt_master_service
|
||||
- order: last
|
||||
|
||||
{% else %}
|
||||
{{sls}}_no_license_detected:
|
||||
test.fail_without_changes:
|
||||
- name: {{sls}}_no_license_detected
|
||||
- comment:
|
||||
- "Hypervisor nodes are a feature supported only for customers with a valid license.
|
||||
Contact Security Onion Solutions, LLC via our website at https://securityonionsolutions.com
|
||||
for more information about purchasing a license to enable this feature."
|
||||
{% endif %}
|
||||
|
||||
{% else %}
|
||||
|
||||
{{sls}}_state_not_allowed:
|
||||
test.fail_without_changes:
|
||||
- name: {{sls}}_state_not_allowed
|
||||
|
||||
{% endif %}
|
||||
Reference in New Issue
Block a user