Browse Source

Salt-ssh support

tags/0.4
Ales Komarek 8 years ago
parent
commit
8fb1da8490
11 changed files with 97 additions and 33 deletions
  1. +7
    -0
      CHANGELOG.rst
  2. +22
    -30
      README.rst
  3. +1
    -1
      VERSION
  4. +1
    -1
      metadata.yml
  5. +16
    -0
      salt/files/roster
  6. +3
    -0
      salt/master/init.sls
  7. +17
    -0
      salt/master/ssh.sls
  8. +1
    -1
      tests/pillar/control_virt.sls
  9. +10
    -0
      tests/pillar/master_ssh_minion_key.sls
  10. +10
    -0
      tests/pillar/master_ssh_minion_password.sls
  11. +9
    -0
      tests/pillar/master_ssh_minion_root.sls

+ 7
- 0
CHANGELOG.rst View File

salt-formula salt-formula
============ ============


0.0.4
-----

- Salt-virt
- Salt API


0.0.3 0.0.3
----- -----



+ 22
- 30
README.rst View File

".*": ".*":
- x509.sign_remote_certificate - x509.sign_remote_certificate



Salt SSH
--------

Salt SSH with sudoer using key

.. literalinclude:: tests/pillar/master_ssh_minion_key.sls
:language: yaml

Salt SSH with sudoer using password

.. literalinclude:: tests/pillar/master_ssh_minion_password.sls
:language: yaml

Salt SSH with root using password

.. literalinclude:: tests/pillar/master_ssh_minion_root.sls
:language: yaml


Salt minion Salt minion
----------- -----------


.. literalinclude:: tests/pillar/minion_pki_cert.sls .. literalinclude:: tests/pillar/minion_pki_cert.sls
:language: yaml :language: yaml



Salt control (cloud/kvm/docker) Salt control (cloud/kvm/docker)
------------------------------- -------------------------------


.. literalinclude:: tests/pillar/control_cloud_digitalocean.sls .. literalinclude:: tests/pillar/control_cloud_digitalocean.sls
:language: yaml :language: yaml


Salt virt KVM cluster
Salt virt with KVM cluster


.. literalinclude:: tests/pillar/control_virt.sls .. literalinclude:: tests/pillar/control_virt.sls
:language: yaml :language: yaml
* http://salt-cloud.readthedocs.org/en/latest/topics/map.html * http://salt-cloud.readthedocs.org/en/latest/topics/map.html
* http://docs.saltstack.com/en/latest/topics/tutorials/multimaster.html * http://docs.saltstack.com/en/latest/topics/tutorials/multimaster.html


salt-virt
---------

Sample pillar

.. code-block:: yaml

salt:
control:
enabled: True
virt_enabled: True
size:
medium:
cpu: 2
ram: 1024
cluster:
localnode:
domain: domain.com
engine: virt
config:
engine: salt
host: 127.0.0.1
node:
ubuntu01:
provider: node001.domain.com
image: ubuntu-14-04-x64-1456128611.qcow2
size: medium
disk_profile: database
net_profile: testing

+ 1
- 1
VERSION View File

0.2
0.4

+ 1
- 1
metadata.yml View File

name: "salt" name: "salt"
version: "0.2"
version: "0.4"
source: "https://github.com/tcpcloud/salt-formula-salt" source: "https://github.com/tcpcloud/salt-formula-salt"
dependencies: dependencies:
- name: git - name: git

+ 16
- 0
salt/files/roster View File

{%- from "salt/map.jinja" import master with context %}
{%- for minion_name, minion in master.get('ssh_minion', {}).items() %}
{{ minion_name }}:
host: {{ minion.host }}
user: {{ minion.user }}
{%- if minion.password is defined %}
passwd: {{ minion.password }}
{%- endif %}
{%- if minion.key_file is defined %}
priv: {{ minion.key_file }}
{%- endif %}
{%- if minion.get('sudo', False) %}
sudo: True
tty: True
{%- endif %}
{%- endfor %}

+ 3
- 0
salt/master/init.sls View File

{%- if pillar.salt.master.windows_repo is defined %} {%- if pillar.salt.master.windows_repo is defined %}
- salt.master.win_repo - salt.master.win_repo
{%- endif %} {%- endif %}
{%- if pillar.salt.master.ssh_minion is defined %}
- salt.master.ssh
{%- endif %}
{# {#
- salt.master.orchestrate - salt.master.orchestrate
#} #}

+ 17
- 0
salt/master/ssh.sls View File

{%- from "salt/map.jinja" import master with context %}
{%- if master.enabled %}

include:
- salt.master.service

/etc/salt/roster:
file.managed:
- source: salt://salt/files/roster
- user: root
- template: jinja
- require:
- {{ master.install_state }}
- watch_in:
- service: salt_master_service

{%- endif %}

+ 1
- 1
tests/pillar/control_virt.sls View File

ubuntu2: ubuntu2:
provider: node02.domain.com provider: node02.domain.com
image: bubuntu.qcomw image: bubuntu.qcomw
size: small
size: small

+ 10
- 0
tests/pillar/master_ssh_minion_key.sls View File

salt:
master:
enabled: true
ssh_minion:
node01:
host: 10.0.0.1
user: saltssh
sudo: true
key_file: /path/to/the/key
port: 22

+ 10
- 0
tests/pillar/master_ssh_minion_password.sls View File

salt:
master:
enabled: true
ssh_minion:
node01:
host: 10.0.0.1
user: saltssh
sudo: true
password: password
port: 22

+ 9
- 0
tests/pillar/master_ssh_minion_root.sls View File

salt:
master:
enabled: true
ssh_minion:
node01:
host: 10.0.0.1
user: root
password: password
port: 22

Loading…
Cancel
Save