Skip to content

Instantly share code, notes, and snippets.

@breskeby
Created July 30, 2015 09:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save breskeby/4ff95567aeaed0be118a to your computer and use it in GitHub Desktop.
Save breskeby/4ff95567aeaed0be118a to your computer and use it in GitHub Desktop.
ase:
# A Linux server that hosts the build server and other dev services. Doesn't run any builds.
# (dev1 config references this)
'roles:build-server':
- match: pillar
- salt-minion
- common.base
- common.limits
- common.network
- common.packages
- common.ssh
# - common.users
- common.monitoring
- build-server
- common.git
# A Linux server that hosts build VMs.
# - Bakes its own VM images (currently only for Linux build VMs).
'roles:build-host':
- match: pillar
- salt-minion
- common.base
- common.limits
- common.network
- common.packages
- common.ssh
- common.users
- common.monitoring
- build-host
- common.git
# A Linux server that runs CI builds. Designed to run inside a (K)VM.
# - Does not have network security or regular ssh users
# - Everything required to executed Gradle builds is managed (JDKs, C++ tool chains, Browser testing)
'roles:build-vm-linux':
- match: pillar
- salt-minion
- common.limits
- common.network.hosts
- common.packages.base
- common.packages.java
- common.packages.updates
- common.build-agents
- common.monitoring
- build-vm-linux
- common.base
- common.git
# A Windows server that runs CI builds. Designed to run inside a (K)VM.
# - JDKs managed via 'winrepo' in salt-master
# - Chrome install is managed
# - Git install is NOT managed
# - C++ tool chains are NOT managed (see salt/build-vm-windows/init.sls for details)
# - TeamCity agents are NOT managed (despite the configuration in windows1.sls)
# - Salt Minion installation is NOT managed, but configuration IS managed
'roles:build-vm-windows':
- match: pillar
- build-vm-windows
- common.build-agents
# A salt master. Also hosts a Salt file server. Has a build agent so that
# salt runs can be triggered via a build job.
'roles:salt-master':
- match: pillar
- common.base
- common.git
- common.build-agents
- salt-master
# Role for baking AMI images
'roles:ami-baker':
- match: pillar
- ami-baker
'roles:openvpn-server':
- match: pillar
- openvpn-server
'roles:openvpn-client':
- match: pillar
- openvpn-client
# Exclude build-vm-linux.filesystem
'roles:ec2-build-vm':
- match: pillar
- common.limits
- common.network.hosts
- common.packages.base
- common.packages.java
- common.packages.updates
- common.build-agents
- ec2-build-vm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment