taperole 1.0.0 → 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -1
- data/README.md +2 -14
- data/lib/tape/installer.rb +0 -15
- data/roles/nginx/tasks/main.yml +1 -1
- data/roles/unicorn_activate/tasks/main.yml +9 -14
- data/taperole.gemspec +1 -1
- data/templates/base/omnibox.example.yml +1 -1
- data/templates/static_html/omnibox.example.yml +1 -1
- data/vendor/ANXS.postgresql/.gitignore +9 -0
- data/vendor/ANXS.postgresql/.travis.yml +18 -0
- data/vendor/ANXS.postgresql/LICENSE +21 -0
- data/vendor/ANXS.postgresql/README.md +64 -0
- data/vendor/ANXS.postgresql/Vagrantfile +16 -0
- data/vendor/ANXS.postgresql/defaults/main.yml +616 -0
- data/vendor/ANXS.postgresql/handlers/main.yml +6 -0
- data/vendor/ANXS.postgresql/meta/.galaxy_install_info +1 -0
- data/vendor/ANXS.postgresql/meta/main.yml +17 -0
- data/vendor/ANXS.postgresql/tasks/configure.yml +58 -0
- data/vendor/ANXS.postgresql/tasks/databases.yml +67 -0
- data/vendor/ANXS.postgresql/tasks/extensions/contrib.yml +11 -0
- data/vendor/ANXS.postgresql/tasks/extensions/dev_headers.yml +10 -0
- data/vendor/ANXS.postgresql/tasks/extensions/postgis.yml +14 -0
- data/vendor/ANXS.postgresql/tasks/extensions.yml +8 -0
- data/vendor/ANXS.postgresql/tasks/install.yml +34 -0
- data/vendor/ANXS.postgresql/tasks/main.yml +23 -0
- data/vendor/ANXS.postgresql/tasks/monit.yml +6 -0
- data/vendor/ANXS.postgresql/tasks/users.yml +18 -0
- data/vendor/ANXS.postgresql/tasks/users_privileges.yml +16 -0
- data/vendor/ANXS.postgresql/templates/etc_monit_conf.d_postgresql.j2 +6 -0
- data/vendor/ANXS.postgresql/templates/pg_hba.conf.j2 +39 -0
- data/vendor/ANXS.postgresql/templates/postgresql.conf.j2 +446 -0
- data/vendor/ANXS.postgresql/test.yml +8 -0
- data/vendor/ANXS.postgresql/vagrant-inventory +2 -0
- data/vendor/ANXS.postgresql/vars/test.yml +10 -0
- data/vendor/bennojoy.memcached/README.md +49 -0
- data/vendor/bennojoy.memcached/defaults/main.yml +8 -0
- data/vendor/bennojoy.memcached/handlers/main.yml +3 -0
- data/vendor/bennojoy.memcached/meta/.galaxy_install_info +1 -0
- data/vendor/bennojoy.memcached/meta/main.yml +26 -0
- data/vendor/bennojoy.memcached/tasks/main.yml +30 -0
- data/vendor/bennojoy.memcached/templates/memcached_debian.j2 +49 -0
- data/vendor/bennojoy.memcached/templates/memcached_redhat.j2 +5 -0
- data/vendor/bennojoy.memcached/vars/main.yml +14 -0
- data/vendor/jnv.unattended-upgrades/.gitignore +1 -0
- data/vendor/jnv.unattended-upgrades/.travis.yml +20 -0
- data/vendor/jnv.unattended-upgrades/LICENSE +339 -0
- data/vendor/jnv.unattended-upgrades/README.md +105 -0
- data/vendor/jnv.unattended-upgrades/Vagrantfile +22 -0
- data/vendor/jnv.unattended-upgrades/ansible.cfg +3 -0
- data/vendor/jnv.unattended-upgrades/defaults/main.yml +55 -0
- data/vendor/jnv.unattended-upgrades/files/auto-upgrades +4 -0
- data/vendor/jnv.unattended-upgrades/handlers/main.yml +2 -0
- data/vendor/jnv.unattended-upgrades/meta/.galaxy_install_info +1 -0
- data/vendor/jnv.unattended-upgrades/meta/main.yml +38 -0
- data/vendor/jnv.unattended-upgrades/role.yml +4 -0
- data/vendor/jnv.unattended-upgrades/tasks/main.yml +19 -0
- data/vendor/jnv.unattended-upgrades/templates/unattended-upgrades.j2 +78 -0
- data/vendor/jnv.unattended-upgrades/vars/Debian.yml +3 -0
- data/vendor/jnv.unattended-upgrades/vars/Ubuntu.yml +3 -0
- data/vendor/leonelgalan.node/.gitignore +2 -0
- data/vendor/leonelgalan.node/.travis.yml +13 -0
- data/vendor/leonelgalan.node/LICENSE +21 -0
- data/vendor/leonelgalan.node/README.md +50 -0
- data/vendor/leonelgalan.node/Vagrantfile +16 -0
- data/vendor/leonelgalan.node/defaults/main.yml +2 -0
- data/vendor/leonelgalan.node/handlers/main.yml +2 -0
- data/vendor/leonelgalan.node/meta/.galaxy_install_info +1 -0
- data/vendor/leonelgalan.node/meta/main.yml +21 -0
- data/vendor/leonelgalan.node/requirements.yml +3 -0
- data/vendor/leonelgalan.node/site.yml +8 -0
- data/vendor/leonelgalan.node/tasks/main.yml +35 -0
- data/vendor/leonelgalan.node/vars/main.yml +2 -0
- data/vendor/lxhunter.apt/.gitignore +41 -0
- data/vendor/lxhunter.apt/.travis.yml +12 -0
- data/vendor/lxhunter.apt/README.md +105 -0
- data/vendor/lxhunter.apt/Vagrantfile +16 -0
- data/vendor/lxhunter.apt/defaults/main.yml +7 -0
- data/vendor/lxhunter.apt/meta/.galaxy_install_info +1 -0
- data/vendor/lxhunter.apt/meta/main.yml +13 -0
- data/vendor/lxhunter.apt/tasks/main.yml +38 -0
- data/vendor/lxhunter.apt/templates/apt_10general.j2 +4 -0
- data/vendor/lxhunter.apt/test.yml +5 -0
- data/vendor/nodesource.node/Dockerfile +16 -0
- data/vendor/nodesource.node/LICENSE.md +11 -0
- data/vendor/nodesource.node/README.md +46 -0
- data/vendor/nodesource.node/defaults/main.yml +3 -0
- data/vendor/nodesource.node/handlers/main.yml +2 -0
- data/vendor/nodesource.node/meta/.galaxy_install_info +1 -0
- data/vendor/nodesource.node/meta/main.yml +18 -0
- data/vendor/nodesource.node/role.yml +6 -0
- data/vendor/nodesource.node/tasks/main.yml +26 -0
- data/vendor/nodesource.node/templates/etc/apt/preferences.d/deb_nodesource_com_node.pref.2 +5 -0
- data/vendor/nodesource.node/tests/localhosts +2 -0
- data/vendor/nodesource.node/vars/main.yml +2 -0
- data/vendor/zzet.rbenv/.kitchen.yml +40 -0
- data/vendor/zzet.rbenv/.travis.yml +12 -0
- data/vendor/zzet.rbenv/README.md +100 -0
- data/vendor/zzet.rbenv/defaults/main.yml +20 -0
- data/vendor/zzet.rbenv/files/default-gems +1 -0
- data/vendor/zzet.rbenv/files/gemrc +4 -0
- data/vendor/zzet.rbenv/files/vars +1 -0
- data/vendor/zzet.rbenv/handlers/main.yml +5 -0
- data/vendor/zzet.rbenv/meta/.galaxy_install_info +1 -0
- data/vendor/zzet.rbenv/meta/main.yml +27 -0
- data/vendor/zzet.rbenv/role.yml +10 -0
- data/vendor/zzet.rbenv/tasks/apt_build_depends.yml +15 -0
- data/vendor/zzet.rbenv/tasks/homebrew_build_depends.yml +10 -0
- data/vendor/zzet.rbenv/tasks/main.yml +192 -0
- data/vendor/zzet.rbenv/tasks/pacman_build_depends.yml +2 -0
- data/vendor/zzet.rbenv/tasks/yum_build_depends.yml +15 -0
- data/vendor/zzet.rbenv/templates/rbenv.sh.j2 +11 -0
- data/vendor/zzet.rbenv/test/integration/default/serverspec/rbenv_spec.rb +26 -0
- data/vendor/zzet.rbenv/test/integration/helpers/serverspec/spec_helper.rb +10 -0
- data/vendor/zzet.rbenv/test/integration/site.yml +8 -0
- data/vendor/zzet.rbenv/vars/main.yml +1 -0
- data/vendor/zzet.rbenv/vars/system.yml +2 -0
- data/vendor/zzet.rbenv/vars/user.yml +2 -0
- metadata +111 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5016d666bbe3fbbbc52aec031ee02ea2ae60433e
|
4
|
+
data.tar.gz: b388a0c99b4f8f13e7ba4611d2624c03358bb460
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2a631378f974d3a66310aed8ed344dfd273eb720b1dd85c815099ba649f6b7125803e70a119197ca46bef21c322ad2b72adedaf6c9073401b0e139476c022d9
|
7
|
+
data.tar.gz: 48dc9509d3ea930189935328a01f0ad573e840ce5aa7014dcc26d61657e1802dab9d93ed53a7da141aab8fbb19a329bad6647d6d8d1837c7fa49f0478572ab08
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -10,21 +10,9 @@
|
|
10
10
|
|
11
11
|
**Install**
|
12
12
|
|
13
|
-
*
|
14
|
-
|
15
|
-
```ruby
|
16
|
-
gem 'tape', github: 'smashingboxes/tape', group: :development, tag: <DESIRED_VERSION>
|
17
|
-
```
|
18
|
-
|
19
|
-
* `bundle install`
|
20
|
-
* `tape installer install`
|
13
|
+
* `gem install taperole` or `gem 'taperole'`
|
14
|
+
* run `tape installer install` in project repo
|
21
15
|
* Updated the hosts file with the IP address of your server
|
22
|
-
|
23
|
-
```
|
24
|
-
[omnibox]
|
25
|
-
0.0.0.0
|
26
|
-
```
|
27
|
-
|
28
16
|
* Fill in missing values in `tape_vars.yml`
|
29
17
|
* Copy all developers public keys into some dir and specify that dir inside `tape_vars.yml` (dev_key_files)
|
30
18
|
* `tape ansible everything`
|
data/lib/tape/installer.rb
CHANGED
@@ -2,9 +2,6 @@ module TapeBoxer
|
|
2
2
|
class Installer < ExecutionModule
|
3
3
|
TapeBoxer.register_module :installer, self
|
4
4
|
|
5
|
-
action :dependencies,
|
6
|
-
proc { dependencies },
|
7
|
-
'Install dependencies'
|
8
5
|
action :install,
|
9
6
|
proc {install},
|
10
7
|
'Creates all nessisary hosts and config files'
|
@@ -18,19 +15,7 @@ module TapeBoxer
|
|
18
15
|
|
19
16
|
protected
|
20
17
|
|
21
|
-
def dependencies
|
22
|
-
puts 'Dependencies:'
|
23
|
-
|
24
|
-
if system "ansible-galaxy install -r #{tape_dir}/requirements.yml -p #{tape_dir}/vendor --force"
|
25
|
-
print 'Installing/updating dependencies: '
|
26
|
-
puts '✔'.green
|
27
|
-
else
|
28
|
-
puts '✘'.red
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
18
|
def install
|
33
|
-
dependencies
|
34
19
|
File.open('.gitignore', 'r+') { |f| f.puts '.tape' unless f.read =~/^\.tape$/ }
|
35
20
|
mkdir 'roles'
|
36
21
|
if fe_app? && !rails_app?
|
data/roles/nginx/tasks/main.yml
CHANGED
@@ -12,7 +12,6 @@
|
|
12
12
|
|
13
13
|
- name: Configure App nginx
|
14
14
|
template: src=nginx_unicorn.j2 dest=/etc/nginx/sites-enabled/{{ app_name }}
|
15
|
-
notify: restart nginx
|
16
15
|
tags: [nginx]
|
17
16
|
|
18
17
|
- name: Install monit nginx config
|
@@ -26,5 +25,6 @@
|
|
26
25
|
when: nginx_monit_config.changed
|
27
26
|
|
28
27
|
- name: Restart nginx
|
28
|
+
remote_user: "{{ deployer_user.name }}"
|
29
29
|
command: bash -lc "sudo monit restart nginx"
|
30
30
|
tags: [restart_nginx]
|
@@ -1,17 +1,3 @@
|
|
1
|
-
- name: Ensure tmp dir present for unicorn pids
|
2
|
-
file: state=directory path={{be_app_path}}/tmp/unicorn owner={{ deployer_user.name }}
|
3
|
-
tags: [be_deploy]
|
4
|
-
|
5
|
-
- name: Ensure unicorn is running
|
6
|
-
remote_user: "{{ deployer_user.name }}"
|
7
|
-
command: bash -lc "sudo monit start unicorn"
|
8
|
-
tags: [be_deploy,unicorn_start]
|
9
|
-
|
10
|
-
- name: Restart Unicorn
|
11
|
-
remote_user: "{{ deployer_user.name }}"
|
12
|
-
command: bash -lc "sudo monit restart unicorn"
|
13
|
-
tags: [unicorn_restart,be_deploy]
|
14
|
-
|
15
1
|
- name: Ensure unicorn is stopped
|
16
2
|
remote_user: "{{ deployer_user.name }}"
|
17
3
|
command: bash -lc "sudo monit restart unicorn"
|
@@ -23,3 +9,12 @@
|
|
23
9
|
command: bash -lc "service unicorn_{{ app_name }} stop"
|
24
10
|
when: kill_unicorn
|
25
11
|
tags: [unicorn_force_stop]
|
12
|
+
|
13
|
+
- name: Ensure tmp dir present for unicorn pids
|
14
|
+
file: state=directory path={{be_app_path}}/tmp/unicorn owner={{ deployer_user.name }}
|
15
|
+
tags: [be_deploy]
|
16
|
+
|
17
|
+
- name: Restart Unicorn
|
18
|
+
remote_user: "{{ deployer_user.name }}"
|
19
|
+
command: bash -lc "sudo monit restart unicorn"
|
20
|
+
tags: [unicorn_restart,be_deploy]
|
data/taperole.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |spec|
|
2
2
|
spec.name = "taperole"
|
3
|
-
spec.version = '1.0.
|
3
|
+
spec.version = '1.0.1'
|
4
4
|
spec.authors = ['Jack Forrest', 'Smashing Boxes', 'Brandon Mathis']
|
5
5
|
spec.email = ['jack@smashingboxes.com', 'brandon@sbox.es']
|
6
6
|
spec.summary = 'A tool for provisioning and deploying boxes for hosting Rails apps'
|
@@ -0,0 +1,18 @@
|
|
1
|
+
---
|
2
|
+
language: python
|
3
|
+
python: "2.7"
|
4
|
+
before_install:
|
5
|
+
- sudo apt-get update -qq
|
6
|
+
- sudo apt-get install -qq python-apt python-pycurl locales
|
7
|
+
- echo 'en_US.UTF-8 UTF-8' | sudo tee /var/lib/locales/supported.d/local
|
8
|
+
install:
|
9
|
+
- pip install ansible==1.6.2
|
10
|
+
script:
|
11
|
+
- echo localhost > inventory
|
12
|
+
- ansible-playbook -i inventory test.yml --syntax-check
|
13
|
+
- ansible-playbook -i inventory test.yml --connection=local --sudo
|
14
|
+
- >
|
15
|
+
ansible-playbook -i inventory test.yml --connection=local --sudo
|
16
|
+
| grep -q 'changed=0.*failed=0'
|
17
|
+
&& (echo 'Idempotence test: pass' && exit 0)
|
18
|
+
|| (echo 'Idempotence test: fail' && exit 1)
|
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License
|
2
|
+
|
3
|
+
Copyright (c) 2014 Pieterjan Vandaele
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
THE SOFTWARE.
|
@@ -0,0 +1,64 @@
|
|
1
|
+
## ANXS - PostgreSQL [![Build Status](https://travis-ci.org/ANXS/postgresql.png)](https://travis-ci.org/ANXS/postgresql)
|
2
|
+
|
3
|
+
Ansible role which installs and configures PostgreSQL, extensions, databases and users.
|
4
|
+
|
5
|
+
|
6
|
+
#### Requirements & Dependencies
|
7
|
+
- Tested on Ansible 1.6 or higher.
|
8
|
+
- ANXS.monit ([Galaxy](https://galaxy.ansible.com/list#/roles/502)/[GH](https://github.com/ANXS/monit)) if you want monit protection (in that case, you should set `monit_protection: true`)
|
9
|
+
|
10
|
+
|
11
|
+
#### Variables
|
12
|
+
|
13
|
+
```yaml
|
14
|
+
# Basic settings
|
15
|
+
postgresql_version: 9.3
|
16
|
+
postgresql_encoding: 'UTF-8'
|
17
|
+
postgresql_locale: 'en_US.UTF-8'
|
18
|
+
|
19
|
+
postgresql_admin_user: "postgres"
|
20
|
+
postgresql_default_auth_method: "trust"
|
21
|
+
|
22
|
+
postgresql_cluster_name: "main"
|
23
|
+
postgresql_cluster_reset: false
|
24
|
+
|
25
|
+
# List of databases to be created (optional)
|
26
|
+
postgresql_databases:
|
27
|
+
- name: foobar
|
28
|
+
hstore: yes # flag to install the hstore extension on this database (yes/no)
|
29
|
+
uuid_ossp: yes # flag to install the uuid-ossp extension on this database (yes/no)
|
30
|
+
|
31
|
+
# List of users to be created (optional)
|
32
|
+
postgresql_users:
|
33
|
+
- name: baz
|
34
|
+
pass: pass
|
35
|
+
encrypted: no # denotes if the password is already encrypted.
|
36
|
+
|
37
|
+
# List of user privileges to be applied (optional)
|
38
|
+
postgresql_user_privileges:
|
39
|
+
- name: baz # user name
|
40
|
+
db: foobar # database
|
41
|
+
priv: "ALL" # privilege string format: example: INSERT,UPDATE/table:SELECT/anothertable:ALL
|
42
|
+
role_attr_flags: "CREATEDB" # role attribute flags
|
43
|
+
```
|
44
|
+
|
45
|
+
There's a lot more knobs and bolts to set, which you can find in the defaults/main.yml
|
46
|
+
|
47
|
+
#### Testing
|
48
|
+
This project comes with a VagrantFile, this is a fast and easy way to test changes to the role, fire it up with `vagrant up`
|
49
|
+
|
50
|
+
See [vagrant docs](https://docs.vagrantup.com/v2/) for getting setup with vagrant
|
51
|
+
|
52
|
+
#### License
|
53
|
+
|
54
|
+
Licensed under the MIT License. See the LICENSE file for details.
|
55
|
+
|
56
|
+
#### Thanks
|
57
|
+
|
58
|
+
To the contributors:
|
59
|
+
- [Ralph von der Heyden](https://github.com/ralph)
|
60
|
+
|
61
|
+
|
62
|
+
#### Feedback, bug-reports, requests, ...
|
63
|
+
|
64
|
+
Are [welcome](https://github.com/ANXS/postgresql/issues)!
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# -*- mode: ruby -*-
|
2
|
+
# vi: set ft=ruby :
|
3
|
+
|
4
|
+
Vagrant.configure('2') do |config|
|
5
|
+
config.vm.define 'anxs' do |c|
|
6
|
+
c.vm.box = 'ubuntu/trusty64'
|
7
|
+
c.vm.network :private_network, ip: '192.168.88.3'
|
8
|
+
c.vm.hostname = 'anxs.local'
|
9
|
+
c.vm.provision 'ansible' do |ansible|
|
10
|
+
ansible.playbook = 'test.yml'
|
11
|
+
ansible.sudo = true
|
12
|
+
ansible.inventory_path = 'vagrant-inventory'
|
13
|
+
ansible.host_key_checking = false
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|