@@ -1,63 +0,0 @@ | |||
# network-formula | |||
Salt Stack Formula to set up and configure a host's network configuration | |||
## NOTICE BEFORE YOU USE | |||
* This formula aims to follow the conventions and recommendations described at [http://docs.saltstack.com/topics/conventions/formulas.html](http://docs.saltstack.com/topics/conventions/formulas.html) | |||
## TODO | |||
* Use more of the available options in interfaces.sls of network.managed | |||
* interfaces: configure broadcast if set | |||
## Instructions | |||
1. Add this repository as a [GitFS](http://docs.saltstack.com/topics/tutorials/gitfs.html) backend in your Salt master config. | |||
2. Configure your Pillar top file (`/srv/pillar/top.sls`), see pillar.example | |||
3. Include this Formula within another Formula or simply define your needed states within the Salt top file (`/srv/salt/top.sls`). | |||
## Available states | |||
### network.hosts | |||
Sets the static lookup table for hostnames | |||
### network.interfaces | |||
Sets the network interfaces configuration | |||
### network.resolver | |||
Sets the resolver configuration | |||
## Additional resources | |||
None | |||
## Formula Dependencies | |||
None | |||
## Contributions | |||
Contributions are always welcome. All development guidelines you have to know are | |||
* write clean code (proper YAML+Jinja syntax, no trailing whitespaces, no empty lines with whitespaces, LF only) | |||
* set sane default settings | |||
* test your code | |||
* update README.md doc | |||
## Salt Compatibility | |||
Tested with: | |||
* 2014.1.0 | |||
## OS Compatibility | |||
Tested with: | |||
* GNU/ Linux Debian Wheezy |
@@ -0,0 +1,78 @@ | |||
=============== | |||
network-formula | |||
=============== | |||
Salt Stack Formula to set up and configure a host's network configuration | |||
NOTICE BEFORE YOU USE | |||
===================== | |||
* This formula aims to follow the conventions and recommendations described at http://docs.saltstack.com/en/latest/topics/development/conventions/formulas.html#conventions-formula and http://docs.saltstack.com/en/latest/topics/best_practices.html | |||
TODO | |||
==== | |||
* Use more of the available options in interfaces.sls of network.managed | |||
* interfaces: configure broadcast if set | |||
Instructions | |||
============ | |||
1. Add this repository as a `GitFS <http://docs.saltstack.com/topics/tutorials/gitfs.html>`_ backend in your Salt master config. | |||
2. Configure your Pillar top file (``/srv/pillar/top.sls``) and your pillars, see pillar.example.sls | |||
3. Include this Formula within another Formula or simply define your needed states within the Salt top file (``/srv/salt/top.sls``). | |||
Available states | |||
================ | |||
.. contents:: | |||
:local: | |||
``network.hosts`` | |||
----------------- | |||
Sets the static lookup table for hostnames | |||
``network.interfaces`` | |||
---------------------- | |||
Sets the network interfaces configuration | |||
``network.resolver`` | |||
-------------------- | |||
Sets the resolver configuration | |||
Additional resources | |||
==================== | |||
None | |||
Formula Dependencies | |||
==================== | |||
None | |||
Contributions | |||
============= | |||
Contributions are always welcome. All development guidelines you have to know are | |||
* write clean code (proper YAML+Jinja syntax, no trailing whitespaces, no empty lines with whitespaces, LF only) | |||
* set sane default settings | |||
* test your code | |||
* update README.rst doc | |||
Salt Compatibility | |||
================== | |||
Tested with: | |||
* 2014.1.3 | |||
OS Compatibility | |||
================ | |||
Tested with: | |||
* GNU/ Linux Debian Wheezy 7.5 | |||
* CentOS 6.5 |
@@ -56,4 +56,63 @@ Debian: | |||
ip: 127.0.1.1 | |||
- name: {{ salt['grains.get']('host') }} | |||
ip: 127.0.1.1 | |||
RedHat: | |||
interfaces: | |||
values: | |||
enabled: True | |||
proto: dhcp | |||
type: eth | |||
params_supported: | |||
- ipaddr | |||
- gateway | |||
- netmask | |||
- bridge | |||
- ports | |||
- delay | |||
- stp | |||
- maxwait | |||
- fd | |||
- pre_up_cmds | |||
- pre_down_cmds | |||
- post_up_cmds | |||
- post_down_cmds | |||
#TODO - broadcast | |||
def_entries: [] | |||
# - name: lo | |||
# proto: none | |||
# type: eth | |||
# netmask: 255.0.0.0 | |||
# network: 127.0.0.0 | |||
resolver: | |||
values: | |||
path: /etc/resolv.conf | |||
hosts: | |||
values: | |||
path: /etc/hosts | |||
ensure: present | |||
def_entries: | |||
- name: localhost | |||
ip: 127.0.0.1 | |||
- name: localhost.localdomain | |||
ip: 127.0.0.1 | |||
- name: localhost | |||
ip: ::1 | |||
- name: ip6-localhost | |||
ip: ::1 | |||
- name: ip6-loopback | |||
ip: ::1 | |||
- name: ip6-localnet | |||
ip: fe00::0 | |||
- name: ip6-mcastprefix | |||
ip: ff00::0 | |||
- name: ip6-allnodes | |||
ip: ff02::1 | |||
- name: ip6-allrouters | |||
ip: ff02::2 | |||
- name: ip6-allhosts | |||
ip: ff02::3 | |||
- name: {{ salt['grains.get']('fqdn') }} | |||
ip: 127.0.1.1 | |||
- name: {{ salt['grains.get']('host') }} | |||
ip: 127.0.1.1 | |||
{% endload %} |