2
0
Commit Graph

264 Commits

Author SHA1 Message Date
Brad Thurber
c4ef48c5e8 add new gitfs functionality 2016-04-19 12:51:17 -04:00
John Galt
e26b805279 Added version check for provider/driver backwards compatibility 2016-03-31 23:17:35 -07:00
John Galt
c4208bb661 Renamed "provider" to "driver" 2016-03-31 19:39:55 -07:00
Matthew X. Economou
abe9b91e66 Replace reference to slspath with the complete URL of the source file
Without this change, importing map.jinja in config files (as opposed to
SLS files) causes a rendering error because `slspath` isn't defined.
The `salt_settings.key_url` variable gets used only in
`salt/pkgrepo/debian/init.sls`.
2016-03-29 13:36:46 -04:00
Matthew X. Economou
001b034eb5 Replace absolute config pathname prefixes with the config_path variable 2016-03-29 13:28:47 -04:00
a.genus
e97822a0d5 Take mine_functions back 2016-03-25 16:58:06 +03:00
Seth Miller
c7552b6d0a Add Windows support to map.jinja
This adds some minimal support for Windows minions.
2016-03-22 20:15:44 -05:00
Imran Iqbal
7f36259614 Remove excessive blank lines rendered after "Miscellaneous settings" 2016-03-04 11:50:36 +00:00
Imran Iqbal
c4e116ee8f Provide Windows repo settings: 2015.8+ master used for pre-2015.8 minions 2016-03-04 11:50:33 +00:00
Imran Iqbal
7474d4239d Fix Windows repo settings using values from 2015.8 documentation 2016-03-04 11:50:26 +00:00
Niels Abspoel
a4c5b4f322 update 2015.8.7 version config for the minion 2016-02-20 23:25:06 +01:00
Niels Abspoel
bfcaca38a6 merge options from 2015.8.7 version in f_defaults.conf 2016-02-20 21:07:17 +01:00
Matthew X. Economou
e8021220b8 Revert PR
This restores the original structure/behavior of the
`salt_formulas` Pillar key.
2016-02-16 10:20:42 -05:00
Thomas Larsen
d1cbec3fe2 Added support for downloading formulas from multiple baseurls into the same environment. 2016-02-08 13:45:09 +00:00
Kevin Schmidt
ce6849247e add consul config support 2016-01-19 16:54:05 +00:00
Forrest
0fee3f58f2 Merge pull request from iamseth/master
Replace pkgrepo with offical Saltstack repo
2016-01-17 20:07:50 -08:00
Kevin Schmidt
41f2de74bd * add gitfs whitelist and blacklist 2016-01-13 11:48:27 +00:00
Niels Abspoel
adb0c7008d removing accidentally committed files 2016-01-09 21:45:23 +01:00
Niels Abspoel
cbe5763668 fix pillar and libvirt 2016-01-09 19:39:47 +01:00
Seth Miller
8f2191471b Replace pkgrepo with offical Saltstack repo
issue 
2016-01-08 11:21:22 -06:00
Mohammed Naser
3b8669cd67 dropped ppa and updated to official repos for ubuntu 2015-12-24 13:28:35 -05:00
Krzysztof Pawłowski
02be0b1367 add support for returner setting in minion configuration 2015-12-21 15:00:35 +01:00
James O'Neill
6d9683ca1f Add clean_file to wipe saltstack.list contents 2015-12-09 23:33:00 +13:00
James O'Neill
87f3e849d2 Make Debian use pkgrepo.managed and allow the repo name and key_url to be overridden via Pillar lookup. 2015-12-05 23:24:05 +13:00
risca
3a83533669 fixed ext_pillar according to https://docs.saltstack.com/en/latest/topics/development/external_pillars.html#configuration and master_tops according to https://docs.saltstack.com/en/latest/topics/master_tops/index.html 2015-11-18 19:59:16 +01:00
abednarik
8b39b37762 Replace deprecated iteritems() with items() 2015-11-16 22:05:36 -03:00
Forrest
5c960fd2d8 Merge pull request from blast-hardcheese/bugfix/178_master-configs-in-minion
Never fall back to `cfg_salt['master']` in minion config
2015-11-15 12:19:51 -08:00
Devon Stewart
d730d4f2b8 Using cfg_salt['master'] is never the right answer
- When it's iterable, the minion could be running on the master
- When it's a string, there's no advantage over just specifying
  `salt:minion:master`
2015-11-15 12:11:20 -08:00
Forrest
eeb7235ee0 Merge pull request from 0xf10e/master
use salt_settings.syndic_service so state works on FreeBSD, too
2015-11-04 12:26:06 -08:00
Forrest
8d1b382343 Merge pull request from babilen/dev-show-jid
Manage show_jid option in master configuration
2015-10-13 12:00:56 -07:00
Wolodja Wentland
0216d66527 Remove trailing whitespace from master config 2015-10-13 16:37:14 +02:00
root
d7382e2d1f use salt_settings.syndic_service so state works on FreeBSD, too 2015-10-13 15:41:41 +02:00
Wolodja Wentland
52893bc978 Manage show_jid in master configuration
This makes it easier for users to check the status of jobs that ran into
a timeout.
2015-10-13 14:56:51 +02:00
puneet kandhari
8d098484ed Merge pull request from genuss/sign_pubkey
Add master_type option
2015-09-29 09:44:14 -07:00
Matthew X. Economou
827ed47a25 Filter all calls to formulas_git_opt through load_yaml
Jinja macros are not actually functions.  The only thing they can return
is a string.  In order to return structured data, the callee must
serialize it, and the caller must deserialize it.  This state formula
uses YAML as the intermediary, hence the occurrence of both the
`|yaml` (callee) and `|load_yaml` (caller) filters in its code.

The post-render "mapping values are not allowed here" error in
*salt/formulas.sls* or the broken rendering of
*salt/files/master.d/f_defaults.conf* happens because invocations of the
`formulas_git_opt` macro in several Jinja `set` statements do not get
deserialized, resulting in the trailing newline followed by three dot
characters (`...`), which YAML uses to signal the end of a document.
Correcting these rendering errors requires adding the necessary
deserialization code at those locations (i.e., filtering the macro call
through `|load_yaml`).
2015-09-03 14:56:45 -04:00
Shane Poage
f0e691fa13 Fixed conflict with git-formula by allowing either inclusion of formula to install git dependency or specify a package name to install with a custom state ID. 2015-09-01 18:33:18 -05:00
Brian Jackson
9779609bc4 Remove mapping test
This test isn't available in certain popular versions of Jinja (namely the one
installed by default in CentOS 6).
2015-08-27 17:37:53 -05:00
Shane Poage
addc6d5a26 Added logic to properly install pygit2 on ubuntu systems and made the pygit2 installation more flexible in general. 2015-08-20 02:46:16 -05:00
Nitin Madhok
5db269e560 Merge pull request from irtnog/enable-salt-api-service
Configure the salt-api service to start at boot time
2015-08-09 07:58:04 -04:00
Simon Lloyd
02f7b279a1 Only watch salt-api package if install_packages=true
Also watch salt-api pkg instead of salt-master one.
2015-08-08 17:58:45 +02:00
jpic
825fd7cd77 Fixed pillar_roots generation for salt-master.
With a simple pillar like this::

    $ sudo salt-call --config-dir /srv/etc/bootstrap --pillar-root /srv/pillar pillar.get salt:pillar_roots
    local:
        ----------
        base:
            - /srv/pillar

This was generated in /etc/salt/master.d/f_defaults.conf::

    # highstate format, and is generally just key/value pairs.
    pillar_roots:base:- /srv/pillar
    #

Resulting in parse errors by salt::

    $ sudo salt '*' state.highstate
    [ERROR   ] Error parsing configuration file: /etc/salt/master.d/f_defaults.conf - while scanning a simple key
      in "<string>", line 531, column 1:
        pillar_roots:base:- /srv/pillar
        ^
    could not found expected ':'
      in "<string>", line 532, column 1:
        #
        ^
    [ERROR   ] Error parsing configuration file: /etc/salt/master.d/f_defaults.conf - while scanning a simple key
      in "<string>", line 531, column 1:
        pillar_roots:base:- /srv/pillar
        ^
    could not found expected ':'
      in "<string>", line 532, column 1:
        #
        ^

This patch will fix it as such::

          ID: salt-master
    Function: file.recurse
        Name: /etc/salt/master.d
      Result: True
     Comment: Recursively updated /etc/salt/master.d
     Started: 11:37:12.946823
    Duration: 6255.296 ms
     Changes:
              ----------
              /etc/salt/master.d/f_defaults.conf:
                  ----------
                  diff:
                      ---
                      +++
                      @@ -528,7 +528,9 @@
                       # Pillar is laid out in the same fashion as the file server, with environments,
                       # a top file and sls files. However, pillar data does not need to be in the
                       # highstate format, and is generally just key/value pairs.
                      -pillar_roots:base:- /srv/pillar
                      +pillar_roots:
                      +  base:
                      +    - /srv/pillar
                       #

Resulting in::

    # highstate format, and is generally just key/value pairs.
    pillar_roots:
      base:
        - /srv/pillar
    #
2015-08-06 11:37:55 +02:00
Matthew X. Economou
c014015e79 Configure the salt-api service to start at boot time 2015-08-02 21:17:36 -04:00
genus
4ff1a746d6 Add master_type option 2015-07-29 19:48:56 +03:00
puneet kandhari
2af4bf3bb5 Merge pull request from genuss/sign_pubkey
Add options for mult-master setup
2015-07-27 06:58:48 -05:00
Matthew X. Economou
ba9cc2605c Use the py27-pygit2 package when installing pygit2 on FreeBSD 2015-07-24 17:06:15 -04:00
Matthew X. Economou
ea5a9f1f2c Merge remote-tracking branch 'upstream/master' into fix-freebsd-gitpython-package 2015-07-24 16:53:24 -04:00
Matthew X. Economou
ef275bd138 Allow customizing the GitPython package name. 2015-07-24 16:31:00 -04:00
Matthew X. Economou
b477990830 Use the py27-GitPython package when installing GitPython on FreeBSD. 2015-07-24 16:30:02 -04:00
Matthew X. Economou
85a426ccdf Add new salt:python_git key.
This key defaults to a value of `python-git`.
2015-07-24 16:27:52 -04:00
Matthew X. Economou
5b93601c78 Use the py27-salt package when installing salt-ssh on FreeBSD
On FreeBSD salt-ssh gets bundled into a single package with the other
SaltStack components (minion, master, etc.).
2015-07-24 16:11:23 -04:00
genus
a738198d8b Add verify_master_pubkey_sign 2015-07-24 17:58:41 +03:00
genus
fffd30fe17 Add master_sign_pubkey option 2015-07-24 17:41:49 +03:00
Brian Jackson
4c1f57792a Revert "Advance sal/api.sls, install rest_cherrypy or rest_tornado from pip."
This reverts commit 7bb82b0178.
2015-07-20 17:05:57 -05:00
Brian Jackson
6e98d508c4 Revert "Fix salt/api.sls."
This reverts commit 8a1b8dc9db.
2015-07-20 17:05:57 -05:00
Brian Jackson
d216a3f651 Revert "Install cherrypy/tornado from pip only if use_pip is True."
This reverts commit 90282eff03.
2015-07-20 17:05:56 -05:00
Brian Jackson
8448aa4021 Revert "Fix stuff suggested by @iggy."
This reverts commit c5ae289fa1.
2015-07-20 17:05:56 -05:00
Brian Jackson
ed3ab22a13 Revert "Add support for GitPython and salt-ssh on FreeBSD masters"
This reverts commit b03831c0b0.
2015-07-20 17:05:56 -05:00
Brian Jackson
f9cb912a65 Revert "salt.api state fails"
This reverts commit 22b8dde1ff.
2015-07-20 17:05:56 -05:00
Brian Jackson
ef73e4ce98 Revert "Change variable lookup to match usage in other states"
This reverts commit 14b466e022.
2015-07-20 17:05:54 -05:00
puneet kandhari
b04fc8c843 Merge pull request from irtnog/add-freebsd-support-saltssh-gitpython
Add support for GitPython and salt-ssh on FreeBSD masters
2015-07-14 06:43:03 -07:00
Matthew X. Economou
14b466e022 Change variable lookup to match usage in other states
Done at the maintainer's request.
2015-07-14 09:40:16 -04:00
Marco Orovecchia
22b8dde1ff salt.api state fails
Seems there are several colons missing for salt.api to work correctly, hope I found all of them
2015-07-14 14:21:14 +02:00
Matthew X. Economou
b03831c0b0 Add support for GitPython and salt-ssh on FreeBSD masters
This change tweaks the GitPython package installation state to support
alternate package names (on FreeBSD, it's called "py27-GitPython").
Also, on FreeBSD salt-ssh is included in the "py27-salt" package by
default, requiring an update to `distro_map`.
2015-07-14 03:22:28 -04:00
René Jochum
c5ae289fa1 Fix stuff suggested by @iggy.
Signed-off-by: René Jochum <rene@jochums.at>
2015-07-13 22:31:32 +02:00
René Jochum
90282eff03 Install cherrypy/tornado from pip only if use_pip is True.
Signed-off-by: René Jochum <rene@jochums.at>
2015-07-13 22:08:20 +02:00
René Jochum
8a1b8dc9db Fix salt/api.sls.
Signed-off-by: René Jochum <rene@jochums.at>
2015-07-13 13:46:17 +02:00
René Jochum
7bb82b0178 Advance sal/api.sls, install rest_cherrypy or rest_tornado from pip.
Signed-off-by: René Jochum <rene@jochums.at>
2015-07-13 13:37:10 +02:00
Brian Jackson
779e6c9c63 Merge pull request from matthew-parlette/master
Updated master.d/f_defaults for 2014.7
2015-07-07 12:43:01 -05:00
Devin Christensen
645b4c65ce Fix syntax error 2015-06-19 15:33:16 -06:00
puneet kandhari
8fcb42819b Merge pull request from quixoten/fix_syndic
Fix syndic requisites
2015-06-17 11:28:28 -05:00
Devin Christensen
8479111cbd Fix syndic requisites
The syndic service was depending upon itself, which caused the salt run
to fail. This commit fixes that by depending on the salt-master service
rather than the salt-syndic service. I also made it more general by
using IDs to specify the provider rather than the name, which is a bit
less reliable.
2015-06-17 09:53:31 -06:00
Petr Demin
eb421c676f formulas.jinja: python 2.6 support 2015-06-17 17:51:40 +03:00
Petr Demin
d4180295e3 formulas.jinja: python 2.6 support 2015-06-17 17:12:28 +03:00
Niels Abspoel
6ec31374cb Remove hardcoded paths with {{ slspath }} variable 2015-06-09 23:05:49 +02:00
Matt Willsher
1cf72d85f8 The git command line tool is a requirement of pygit2 2015-06-05 21:27:01 +01:00
Matt Willsher
e2d192ba89 Improvements to Enterprise Linux family OSs.
* Install pygit from package
* Add Official Salt ZeroMQ 4 COPR repository

Note that Salt itself is assumed to already to be available to the system via yum, via EPEL for example
2015-06-04 17:35:40 +01:00
puneet kandhari
145b58a9d3 Remove Duplicates from defaults.yaml and map.jinja 2015-05-26 13:28:17 -05:00
Niels Abspoel
14c262fdad fix empty formulas list in pillar with empty dic. 2015-05-17 15:39:49 +02:00
Edvinas Klovas
8992e15882 fix typo 2015-05-16 15:51:19 +03:00
Edvinas Klovas
47b37f2ffb Fix pillar_roots configuration format in master
This commit fixes how `pillar_roots` are generated and after this fix the
generated configuration does not contain any unnecessary new lines:

```yaml
pillar_roots:
  base:
     /srv/salt/dir1
  dev:
     /srv/salt/dir2
     /srv/salt/dir3
  locale:
     /srv/salt/dir4
```

Before this commit the pillar_roots in `f_defaults.conf` for master would be
generated with a lot of empty lines in between directories, like this:

```yaml
pillar_roots:

  base:

     /srv/salt/dir1

  dev:

     /srv/salt/dir2

     /srv/salt/dir3

  local:

     /srv/salt/dir4

```

The minion configuration is not affected and renders fine.
2015-05-16 15:15:56 +03:00
Javier Domingo
4344a1311b Cleanup template for easier user reading
The user will already have it's /etc/salt/minion file, so it doesn't need all this info, and it makes easier to know what has been generated and what not
2015-05-08 22:33:43 +02:00
Andrew Vant
a01249a7fc ec2/gce profiles/providers are no longer configured if they are not used.
Needed because salt-cloud will attempt to load them even if they are
filled with invalid default values, creating error spam.
2015-04-17 10:48:47 -04:00
Matt Parlette
efcefd6579 Updated master.d/f_defaults for 2014.7
Added config setting for:

* pillar_source_merging_strategy
2015-04-15 15:36:09 -04:00
Brian Jackson
15e63e8fd0 Merge pull request from andrew-vant/cloud-templates-redirect
Added pillar option to redirect profile and map folders.
2015-04-14 11:34:12 -05:00
Andrew Vant
e632b8bcb5 Cloud file.recurse loop no longer hardcodes folder list. 2015-04-13 16:08:11 -04:00
Forrest Alvarez
d3adb685b6 Change spaces to dashes in IDs for ssh.sls 2015-04-10 16:11:19 -07:00
Simon Lloyd
462455ead9 Exclude require statement when install_packages is False.
The 'require' statement needs a list as input, but doesn't get
any input when install_packages is set to False.
2015-04-09 17:16:15 +02:00
Andrew Vant
f0e9c2df87 Enforced root-only permissions on cloud.providers.d.
As mentioned in issue , provider files may contain passwords
or API keys and should be restricted. Profiles/maps are probably
OK with the defaults.
2015-04-06 11:24:41 -04:00
Andrew Vant
f3ed6e1828 cloud.providers.d can now be redirected.
This obsoletes the salt☁️folders and salt☁️providers pillar
entries. Provider keys have been moved to /etc/salt/pki/cloud.
2015-04-03 19:30:26 -04:00
Andrew Vant
7e074dc379 Supplied default values for all pillar queries in provider templates.
These aren't intended to function; they're here to allow the use of
file.recurse on the provider folder, without requiring the user
to provide pillar data for templates they're not using.
2015-04-03 18:47:08 -04:00
Andrew Vant
fb1d7e8d3b Added pillar option to redirect profile and map folders. 2015-04-03 17:33:25 -04:00
Andrew Vant
11efee54c3 Added mine_functions to f_defaults.conf. 2015-04-03 14:34:34 -04:00
Nitin Madhok
a11c39cf32 Merge pull request from iggy/master
Switch config file.recurse to clean by default and tell it to ignore _*
2015-04-01 05:08:01 -04:00
Matthew X. Economou
943d7f2dc1 Reverts lookup of salt_cloud_certs to original pillar key, in line with existing documentation and the certificate template file.
Please refer to issue https://github.com/saltstack-formulas/salt-formula/issues/113.
2015-03-30 13:54:50 -04:00
Niels Abspoel
9ae8a4d746 Fix recursion in api.service 2015-03-28 22:29:01 +01:00
Brian Jackson
7649c26a0d Switch config file.recurse to clean by default and tell it to ignore _*
Salt writes it's schedule file to /etc/salt/{minion,master}.d/_schedule.conf

We don't want to stomp all over Salt's files, but we do want a pristine
starting point to lay down our managed config. So we use clean: True on the
file.recurse call, but we tell it to ignore files that start with an _

We have to rename the current config file (_defaults.conf) because it will be
ignored by the rule that ignores Salt's _* config files.

This also means we need to clean up old config files (_defaults.conf) and
restart the service if we cleaned it up.
2015-03-27 17:58:05 -05:00
Brian Jackson
4533cc7d0e Add modules to install gitfs backend dependencies
Add modules for gitfs dependencies and documentation for how to use them.
2015-03-25 21:52:29 -05:00
Brian Jackson
924c04c0d8 Add setting to not install packages
If you are installing Salt via git/pip, the formula will try to overwrite your
install with packaged versions. This setting makes it possible to avoid that.
2015-03-24 12:08:08 -05:00
Brian Jackson
8ebb7f57df Stop using clean: True on /etc/salt/{minion,master}.d
New versions of Salt put config files in /etc/salt/{minion,master}.d. We don't
want to erase them by using a clean: True on the file.recurse. This is a
backward incompatible change, but it's necessary to avoid deleting Salt config
files.

Resolves 
2015-03-24 10:46:25 -05:00
Brian Jackson
cb3aa80c62 Don't overwrite salt variable
Using a variable named salt is a bad idea when salt already has a variable
named salt.
2015-03-16 23:39:32 -05:00