소스 검색

Merge pull request #200 from thomaslarsen/master

Support for downloading formulas from multiple baseurls into same environment
master
Forrest 9 년 전
부모
커밋
b47fec3564
3개의 변경된 파일13개의 추가작업 그리고 11개의 파일을 삭제
  1. +7
    -8
      pillar.example
  2. +3
    -1
      salt/formulas.jinja
  3. +3
    -2
      salt/formulas.sls

+ 7
- 8
pillar.example 파일 보기

@@ -135,9 +135,6 @@ salt_formulas:
# environment, if an option is missing in a given environment, the
# value from "default" is used instead.
default:
# URL where the formulas git repositories are downloaded from
# it will be suffixed with <formula-name>.git
baseurl: https://github.com/saltstack-formulas
# Directory where Git repositories are downloaded
basedir: /srv/formulas
# Update the git repository to the latest version (False by default)
@@ -160,9 +157,11 @@ salt_formulas:
# List of formulas to enable in each environment
list:
base:
- salt-formula
- postfix-formula
https://github.com/saltstack-formulas:
- salt-formula
- postfix-formula
dev:
- salt-formula
- postfix-formula
- openssh-formula
https://github.com/saltstack-formulas:
- salt-formula
- postfix-formula
- openssh-formula

+ 3
- 1
salt/formulas.jinja 파일 보기

@@ -16,10 +16,12 @@

{%- macro formulas_roots(env) -%}
{%- set value = [] -%}
{%- for dir in formulas.get(env, []) -%}
{%- for repo,f_name in formulas.get(env, {}).items() -%}
{%- for dir in f_name -%}
{%- set basedir = formulas_git_opt(env, 'basedir')|load_yaml -%}
{%- do value.append('{0}/{1}'.format(basedir, dir)) -%}
{%- endfor -%}
{%- endfor -%}
{{ value|yaml }}
{%- endmacro -%}


+ 3
- 2
salt/formulas.sls 파일 보기

@@ -4,7 +4,8 @@
{% from "salt/formulas.jinja" import formulas_git_opt with context %}

# Loop over all formulas listed in pillar data
{% for env, entries in salt['pillar.get']('salt_formulas:list', {}).items() %}
{% for env, elements in salt['pillar.get']('salt_formulas:list', {}).items() %}
{% for baseurl, entries in elements.items() %}
{% for entry in entries %}

{% set basedir = formulas_git_opt(env, 'basedir')|load_yaml %}
@@ -26,7 +27,6 @@
{% if gitdir not in processed_gitdirs %}
{% do processed_gitdirs.append(gitdir) %}
{% set options = formulas_git_opt(env, 'options')|load_yaml %}
{% set baseurl = formulas_git_opt(env, 'baseurl')|load_yaml %}
{{ gitdir }}:
git.latest:
- name: {{ baseurl }}/{{ entry }}.git
@@ -43,3 +43,4 @@

{% endfor %}
{% endfor %}
{% endfor %}

Loading…
취소
저장