소스 검색

Create all chains before any rules

If some rules references other chains that are not yet present
state fails. Make sure all chains are created before any rules by
configuring requirement constraint.

Change-Id: Iaf506919f330ff962891baab8132c3b46c49a47c
Closes-Bug: PROD-18821
master
Sergio Lystopad 6 년 전
부모
커밋
d22315fbb9
2개의 변경된 파일6개의 추가작업 그리고 1개의 파일을 삭제
  1. +5
    -1
      iptables/_rule.sls
  2. +1
    -0
      iptables/rules.sls

+ 5
- 1
iptables/_rule.sls 파일 보기

@@ -4,9 +4,13 @@ iptables_{{ chain_name }}_{{ rule_name }}:
- position: {{ rule.position }}
{%- else %}
iptables.append:
{%- if loop.index != 1 %}
- require:
{%- if loop.index != 1 %}
- iptables: iptables_{{ chain_name }}_{% if service_name is defined %}{{ service_name }}_{% endif %}{{ loop.index - 1 }}
{%- else %}
{%- for chain in chains %}
- iptables: iptables_{{ chain }}
{%- endfor %}
{%- endif %}
{%- endif %}
- table: {{ rule.get('table', 'filter') }}

+ 1
- 0
iptables/rules.sls 파일 보기

@@ -1,6 +1,7 @@
{% from "iptables/map.jinja" import service with context %}
{%- if grains.get('virtual_subtype', None) not in ['Docker', 'LXC'] %}

{%- set chains = service.get('chain', {}).keys() %}
{%- for chain_name, chain in service.get('chain', {}).iteritems() %}

iptables_{{ chain_name }}:

Loading…
취소
저장