Ansible Your Toaster: repeateable, version controlled, dev machine setup with Ansible
bedlam
Developers' computers and workstations seldom receive the kind of care and attention that our servers get. This means that the machines we use for development can become disorganized collections of tools whose configurations can't easily be shared with our colleagues or rebuilt when needed.
One of the tools we use to keep servers in line is Ansible--and it turns out that Ansible works just as well on development machines as it does on servers. In this session we'll discuss (with code samples) how to use Ansible to document, install, configure, and update critical development infrastructure with an eye to predictability, repeatability, and reliability. Topics include:
- The Ansible workflow,
- How Ansible can help you document and version-control your computer's configuration,
- How Ansible can help you peform all of the following tasks on one or several machines:
- Deploy system tools by OS or by machine,
- Install/update applications,
- Install development servers and tools,
- Set application preferences,
- Create/deploy dotfiles and private config files.