Created a lot of README files as well as some more playbooks.

This commit is contained in:
Michael Griffin 2013-04-22 01:46:00 -07:00
parent 43b2fb0f32
commit 1262a07eb0
36 changed files with 268 additions and 23 deletions

View File

@ -1,7 +1,7 @@
Ansible Playbooks Ansible Playbooks
================= =================
**The majority of these playbooks have been created to provision Mac development machines. I am going to separate these playbooks into their own separate git repos, or not, depending on how I decide I want them accessable to the configuration managament enhancement tool I'll be building on top of Ansible. Eventually they will be transformed to handle different operating systems and other variables, such as versions.** **The majority of these playbooks have been created to provision Mac development machines. I am going to separate these playbooks into their own separate git repos, or not, depending on how I decide I want them accessible to the configuration managament enhancement tool I'll be building on top of Ansible. Eventually they will be transformed to handle different operating systems and other variables, such as versions.**
Configure servers in a snap with these concise Ansible playbooks! Configure servers in a snap with these concise Ansible playbooks!
@ -16,15 +16,15 @@ Future Playbooks:
* **MySQL** - open source relational database system * **MySQL** - open source relational database system
* **Apache** - open source web server * **Apache** - open source web server
* **NginX** - open source web server * **NginX** - open source web server
* **Python** - open source highlevel interprited programming language * **Python** - open source highlevel interpreted programming language
* **Ruby** - open source highlevel interprited programming language * **Ruby** - open source highlevel interpreted programming language
* **PHP** - open source highlevel interprited programming language * **PHP** - open source highlevel interpreted programming language
* **RVM** - open source Ruby version and environment manager * **RVM** - open source Ruby version and environment manager
Before running these Ansible playbooks, or any Ansible commands for that matter, it is essential that you have your publick SSH keys copied to your server's `~/.ssh/authorized_keys` file. If you decide that this will make life too easy for you, feel free to use the `-k` flag when running `ansible-playbook` (or `ansible` for that matter too), which will tell Ansible to prompt you for your SSH password. The following command will copy your public key from your management computer, to the server: Before running these Ansible playbooks, or any Ansible commands for that matter, it is essential that you have your public SSH keys copied to your server's `~/.ssh/authorized_keys` file. If you decide that this will make life too easy for you, feel free to use the `-k` flag when running `ansible-playbook` (or `ansible` for that matter too), which will tell Ansible to prompt you for your SSH password. The following command will copy your public key from your management computer, to the server:
# Don't space out and forget to ensure that you replace the username and ip/host address with your specific credentials. # Don't space out and forget to ensure that you replace the username and ip/host address with your specific credentials.
$ scp ~/.ssh/id_rsa.pub username@111.222.333.444:~/.ssh/authorized_keys # You could also perform the same action against your Ansible hosts using the copy module and the **-k** flag to promp you for your SSH password. $ scp ~/.ssh/id_rsa.pub username@111.222.333.444:~/.ssh/authorized_keys # You could also perform the same action against your Ansible hosts using the copy module and the **-k** flag to prompt you for your SSH password.
Then all you have to do, as long as you have properly installed Ansible, and have added it's location to your $PATH, is run the following command to confirm that everything is hunky-dory: Then all you have to do, as long as you have properly installed Ansible, and have added it's location to your $PATH, is run the following command to confirm that everything is hunky-dory:

4
alfred/README.md Normal file
View File

@ -0,0 +1,4 @@
Alfred
======
This Ansible playbook installs Alfred, an amazing productivity application which helps you do everything from launching specific applications, to running commands, to searching for files.

View File

@ -0,0 +1,15 @@
---
- hosts: $hosts
user: $user
sudo: yes
vars:
app_name: Alfred\ 2
app_name_pretty: Alfred
app_url: http://cachefly.alfredapp.com/Alfred_2.0.3_187.zip
installer_type: app
install_method: zip
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

4
appcleaner/README.md Normal file
View File

@ -0,0 +1,4 @@
AppCleaner
==========
This Ansible playbook installs AppCleaner, an uninstallation helper program.

View File

@ -1,10 +0,0 @@
---
- include: vlc/vlc.yaml
- include: transmission/transmission.yaml
- include: appcleaner/appcleaner.yaml
- include: keka/keka.yaml
- include: limechat/limechat.yaml
- include: firefox/firefox.yaml
# - include: opera/opera.yaml
- include: mou/mou.yaml
- include: texts/texts.yaml

4
brackets/README.md Normal file
View File

@ -0,0 +1,4 @@
Brackets
========
This Ansible playbook installs Brackets, a lightweight web development code editor, written in HTML, CSS, and Javascript.

View File

@ -0,0 +1,16 @@
---
- hosts: $hosts
user: $user
sudo: yes
vars:
app_name: Brackets\ Sprint\ 23
app_name_pretty: Brackets
app_url: http://download.brackets.io/file.cfm?platform=OSX&build=23
installer_type: app
install_method: dmg
mount_path: /Volumes/Brackets\ Sprint\ 23/
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

View File

4
coda/README.md Normal file
View File

@ -0,0 +1,4 @@
Coda
====
This Ansible playbook installs Coda, a versitile web development code editor and FTP client.

View File

@ -0,0 +1,14 @@
---
- hosts: $hosts
user: $user
vars:
app_name: Coda
app_name_pretty: Coda
app_url: https://panic.com/coda/d/Coda%202.0.7.zip
installer_type: app
install_method: zip
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

4
codekit/README.md Normal file
View File

@ -0,0 +1,4 @@
CodeKit
=======
This Ansible playbook installs CodeKit, a highly performant web development toolkit, linting, compressing, minifying, and refreshing files in managed projects.

View File

@ -0,0 +1,14 @@
---
- hosts: $hosts
user: $user
vars:
app_name: CodeKit
app_name_pretty: CodeKit
app_url: http://incident57.com/codekit/files/codekit-8283.zip
installer_type: app
install_method: zip
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

4
espresso/README.md Normal file
View File

@ -0,0 +1,4 @@
Espresso
========
This Ansible playbook installs Espresso, a powerful CSS, HTML, Javascript and PHP web development editor.

View File

@ -0,0 +1,15 @@
---
- hosts: $hosts
user: $user
sudo: yes
vars:
app_name: Espresso
app_name_pretty: Espresso
app_url: http://macrabbit.com/espresso/get/
installer_type: app
install_method: zip
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

4
filezilla/README.md Normal file
View File

@ -0,0 +1,4 @@
FileZilla
=========
This Ansible playbook installs FileZilla, a feature rich, fast FTP client.

15
filezilla/filezilla.yaml Normal file
View File

@ -0,0 +1,15 @@
---
- hosts: $hosts
user: $user
sudo: yes
vars:
app_name: FileZilla
app_name_pretty: FileZilla
app_url: http://sourceforge.net/projects/filezilla/files/FileZilla_Client/3.6.0.2/FileZilla_3.6.0.2_i686-apple-darwin9.app.tar.bz2
installer_type: app
install_method: tar
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

4
firefox/README.md Normal file
View File

@ -0,0 +1,4 @@
Firefox
=======
This Ansible playbook installs Firefox, an advanced Gecko based web browser.

4
google-chrome/README.md Normal file
View File

@ -0,0 +1,4 @@
Google Chrome
=============
This Ansible playbook installs Google Chrome, a fast, secure, and extensible WebKit web browser.

View File

@ -0,0 +1,16 @@
---
- hosts: $hosts
user: $user
sudo: yes
vars:
app_name: Google\ Chrome
app_name_pretty: Google Chrome
app_url: https://dl.google.com/chrome/mac/stable/GGRO/googlechrome.dmg
installer_type: app
install_method: dmg
mount_path: /Volumes/Google\ Chrome/
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

View File

@ -9,7 +9,7 @@
- name: Copy $app_name_pretty app to Applications directory - name: Copy $app_name_pretty app to Applications directory
command: cp -R $mount_path$app_name.app /Applications command: cp -R $mount_path$app_name.app /Applications
when_string: $installer_type == 'app' when_string: $installer_type == 'app'
- name: Install $app_name pkg - name: Install $app_name_pretty pkg
command: sudo installer -package $mount_path$app_name.pkg -target $install_target command: sudo installer -package $mount_path$app_name.pkg -target $install_target
when_string: $installer_type == 'pkg' when_string: $installer_type == 'pkg'
- name: Unmount $app_name_pretty image - name: Unmount $app_name_pretty image

View File

@ -13,7 +13,7 @@
- name: Copy $app_name_pretty app to Applications directory - name: Copy $app_name_pretty app to Applications directory
command: cp -R $app_name/$app_name.app /Applications chdir=$downloads command: cp -R $app_name/$app_name.app /Applications chdir=$downloads
when_string: $installer_type == 'app' when_string: $installer_type == 'app'
- name: Install $app_name pkg - name: Install $app_name_pretty pkg
command: sudo installer -package $app_name/$app_name.pkg -target $install_target chdir=$downloads command: sudo installer -package $app_name/$app_name.pkg -target $install_target chdir=$downloads
when_string: $installer_type == 'pkg' when_string: $installer_type == 'pkg'
- name: Remove extraction directory - name: Remove extraction directory

View File

@ -13,7 +13,7 @@
- name: Copy $app_name_pretty app to Applications directory - name: Copy $app_name_pretty app to Applications directory
command: cp -R $app_name/$app_name.app /Applications chdir=$downloads command: cp -R $app_name/$app_name.app /Applications chdir=$downloads
when_string: $installer_type == 'app' when_string: $installer_type == 'app'
- name: Install $app_name pkg - name: Install $app_name_pretty pkg
command: sudo installer -package $app_name/$app_name.pkg -target $install_target chdir=$downloads command: sudo installer -package $app_name/$app_name.pkg -target $install_target chdir=$downloads
when_string: $installer_type == 'pkg' when_string: $installer_type == 'pkg'
- name: Remove extraction directory - name: Remove extraction directory

View File

@ -0,0 +1,14 @@
---
- hosts: $hosts
user: $user
vars:
app_name: Kaleidoscope
app_name_pretty: Kaleidoscope
app_url: http://www.kaleidoscopeapp.com/download
installer_type: app
install_method: zip
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

4
opera/README.md Normal file
View File

@ -0,0 +1,4 @@
Opera
=====
This Ansible playbook installs Opera, a feature rich Webkit (and soon Blink) web browser.

18
sample-applications.yaml Normal file
View File

@ -0,0 +1,18 @@
---
# - include: vlc/vlc.yaml
# - include: transmission/transmission.yaml
# - include: appcleaner/appcleaner.yaml
# - include: keka/keka.yaml
# - include: limechat/limechat.yaml
# - include: firefox/firefox.yaml
# - include: opera/opera.yaml
# - include: mou/mou.yaml
# - include: texts/texts.yaml
# - include: sublime-text/sublime-text.yaml
# - include: sourcetree/sourcetree.yaml
- include: sequel-pro/sequel-pro.yaml
# - include: alfred/alfred.yaml
- include: google-chrome/google-chrome.yaml
- include: brackets/brackets.yaml
- include: trim-enabler/trim-enabler.yaml
- include: iterm/iterm.yaml

4
sequel-pro/README.md Normal file
View File

@ -0,0 +1,4 @@
Sequel Pro
==========
This Ansible playbook installs Sequel Pro, a feature rich and powerful MySQL database inspector/manager.

View File

@ -0,0 +1,15 @@
---
- hosts: $hosts
user: $user
vars:
app_name: Sequel\ Pro
app_name_pretty: Sequel Pro
app_url: http://sequel-pro.googlecode.com/files/sequel-pro-1.0.1.dmg
installer_type: app
install_method: dmg
mount_path: /Volumes/Sequel\ Pro\ 1.0.1/
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

4
slicy/README.md Normal file
View File

@ -0,0 +1,4 @@
Slicy
=====
This Ansible playbook installs Slicy, a versitile tool that enhances Photoshop image slicing and retna graphic generation.

View File

@ -0,0 +1,14 @@
---
- hosts: $hosts
user: $user
vars:
app_name: Slicy
app_name_pretty: Slicy
app_url: http://macrabbit.com/slicy/get/
installer_type: app
install_method: zip
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

View File

@ -1,6 +1,4 @@
--- ---
- include: ../setup.yaml
- hosts: $hosts - hosts: $hosts
user: $user user: $user
gather_facts: false gather_facts: false
@ -14,4 +12,5 @@
vars_files: vars_files:
- ../setup-vars.yaml - ../setup-vars.yaml
tasks: tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml - include: ../install/$install_method.yaml

View File

@ -1,6 +1,4 @@
--- ---
- include: ../setup.yaml
- hosts: $hosts - hosts: $hosts
user: $user user: $user
vars: vars:
@ -13,6 +11,7 @@
vars_files: vars_files:
- ../setup-vars.yaml - ../setup-vars.yaml
tasks: tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml - include: ../install/$install_method.yaml
- name: Create symlink subl for Sublime Text's subl command - name: Create symlink subl for Sublime Text's subl command
file: src=/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl dest=/usr/bin/subl state=link file: src=/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl dest=/usr/bin/subl state=link

4
transmit/README.md Normal file
View File

@ -0,0 +1,4 @@
Transmit
========
This Ansible playbook installs Transmit, an extremely fast and high performing FTP client.

View File

@ -0,0 +1,15 @@
---
- hosts: $hosts
user: $user
sudo: yes
vars:
app_name: Transmit
app_name_pretty: Transmit
app_url: http://www.panic.com/transmit/d/Transmit%204.3.3.zip
installer_type: app
install_method: zip
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml

4
tree/README.md Normal file
View File

@ -0,0 +1,4 @@
Tree
====
This Ansible playbook installs tree, a command line utility for displaying folder and file structures and data.

4
trim-enabler/README.md Normal file
View File

@ -0,0 +1,4 @@
Trim Enabler
============
This Ansible playbook installs Trim Enabler, an essential utility for enabling Trim on SSDs.

View File

@ -0,0 +1,16 @@
---
- hosts: $hosts
user: $user
sudo: yes
vars:
app_name: Trim\ Enabler
app_name_pretty: Trim Enabler
app_url: http://groths.org/trimenabler/TrimEnabler.dmg
installer_type: app
install_method: dmg
mount_path: /Volumes/Trim\ Enabler/
vars_files:
- ../setup-vars.yaml
tasks:
- include: ../setup.yaml
- include: ../install/$install_method.yaml