60f295f7a0
commit 4430ce3eefcdff0b0ceffea0ef66ea8e876a807d Merge:631783b
649963c
Author: Michael DeHaan <michael.dehaan@gmail.com> Date: Thu Jul 12 01:28:43 2012 -0400 Merge branch 'host-groups' of https://github.com/dagwieers/ansible into daggroups commit649963ca2c
Author: Dag Wieërs <dag@wieers.com> Date: Thu Jul 12 23:01:00 2012 +0200 Added comments in the example yaml file as requested commit7f9718f185
Author: Dag Wieërs <dag@wieers.com> Date: Thu Jul 12 22:49:38 2012 +0200 Add the default nose color too, to test specific overrides commiteb63b9e899
Author: Dag Wieërs <dag@wieers.com> Date: Thu Jul 12 22:44:35 2012 +0200 Introduce comics and cartoons to test yaml groups defined on a per-node basis commitaa13d23307
Author: Dag Wieërs <dag@wieers.com> Date: Thu Jul 12 19:33:15 2012 +0200 A small fix to revert to old state commit264ebaa77c
Author: Dag Wieërs <dag@wieers.com> Date: Thu Jul 12 19:31:51 2012 +0200 Combine both yaml unit tests into one example file commit7db49a8048
Author: Dag Wieërs <dag@wieers.com> Date: Thu Jul 12 16:46:53 2012 +0200 Might as well fix this too commitf36c6c8c5b
Author: Dag Wieërs <dag@wieers.com> Date: Thu Jul 12 16:42:00 2012 +0200 Added unit tests for host-groups patch For the unit test I chose to keep the original yaml file in place as a reference. This patch also includes a fix. commita96f681352
Author: Dag Wieërs <dag@wieers.com> Date: Thu Jul 12 12:30:43 2012 +0200 Allow groups to be defined on a per-host basis This makes it possible to define on a per-host basis what groups a host is in. When managing a large set of systems it makes it easier to ensure each of the systems is defined in a set of groups (e.g. production/qa/development, linux/solaris/aix) rather than having to add systems to multiple disconnected groups. ---- - host: system01 - host: system02 - host: system03 - group: linux hosts: - system01 - system02 - group: solaris hosts: - system03 - group: production hosts: - system01 - system03 - group: qa - system02 - group: dbserver hosts: - system01 - group: ntpserver hosts: - system02 - group: webserver - system03 ---- Can be redefined as: ---- - host: system01 groups: [ linux, production, dbserver ] - host: system02 groups: [ linux, qa, ntpserver ] - host: system03 groups: [ solaris, production, webserver ] ----
82 lines
1.3 KiB
Text
82 lines
1.3 KiB
Text
---
|
|
|
|
# Below is the original way of defining hosts and groups.
|
|
|
|
- jupiter
|
|
- host: saturn
|
|
vars:
|
|
moon: titan
|
|
moon2: enceladus
|
|
|
|
- host: mars
|
|
|
|
- host: zeus
|
|
vars:
|
|
- ansible_ssh_port: 3001
|
|
|
|
- group: greek
|
|
hosts:
|
|
- zeus
|
|
- hera
|
|
- poseidon
|
|
vars:
|
|
- ansible_ssh_port: 3000
|
|
- ntp_server: olympus.example.com
|
|
|
|
- group: norse
|
|
hosts:
|
|
- host: thor
|
|
vars:
|
|
- hammer: True
|
|
- odin
|
|
- loki
|
|
|
|
- group: ruler
|
|
hosts:
|
|
- zeus
|
|
- odin
|
|
|
|
- group: multiple
|
|
hosts:
|
|
- saturn
|
|
|
|
# Here we demonstrate that groups can be defined on a per-host basis.
|
|
# When managing a large set of systems this format makes it easier to
|
|
# ensure each of the systems is defined in a set of groups, compared
|
|
# to the standard group definitions, where a host may need to be added
|
|
# to multiple disconnected groups.
|
|
|
|
- host: garfield
|
|
groups: [ comic, cat, orange ]
|
|
vars:
|
|
- nose: pink
|
|
|
|
- host: odie
|
|
groups: [ comic, dog, yellow ]
|
|
|
|
- host: mickey
|
|
groups: [ cartoon, mouse, red ]
|
|
|
|
- host: goofy
|
|
groups: [ cartoon, dog, orange ]
|
|
|
|
- host: tom
|
|
groups: [ cartoon, cat, gray ]
|
|
|
|
- host: jerry
|
|
groups: [ cartoon, mouse, brown ]
|
|
|
|
- group: cat
|
|
vars:
|
|
- ears: pointy
|
|
- nose: black
|
|
|
|
- group: dog
|
|
vars:
|
|
- ears: flappy
|
|
- nose: black
|
|
|
|
- group: mouse
|
|
vars:
|
|
- ears: round
|
|
- nose: black
|