rails-ahoy 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.DS_Store +0 -0
- data/.gitignore +14 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +31 -0
- data/Rakefile +2 -0
- data/ahoy.gemspec +24 -0
- data/lib/ahoy.rb +5 -0
- data/lib/ahoy/version.rb +3 -0
- data/lib/generators/ahoy/ansible_generator.rb +36 -0
- data/lib/generators/ahoy/base.rb +24 -0
- data/lib/generators/ahoy/deploy_generator.rb +47 -0
- data/lib/generators/ahoy/init_generator.rb +49 -0
- data/lib/generators/ahoy/templates/_Vagrantfile +20 -0
- data/lib/generators/ahoy/templates/_database.yml +18 -0
- data/lib/generators/ahoy/templates/_deploy.rb +51 -0
- data/lib/generators/ahoy/templates/_env_vars.yml +7 -0
- data/lib/generators/ahoy/templates/_puma.rb +24 -0
- data/lib/generators/ahoy/templates/_puma.sh +79 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/playbook.yml +22 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/deploy_env/tasks/main.yml +10 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/deploy_env/templates/database.yml +9 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/deploy_env/templates/secrets.yml +2 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/essentials/tasks/main.yml +43 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/essentials/templates/vimrc +472 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/nginx/tasks/main.yml +15 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/nginx/templates/platform.conf +24 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/nodejs/tasks/main.yml +6 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/postgresql/handlers/main.yml +3 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/postgresql/tasks/main.yml +39 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/postgresql/templates/pg_hba.conf +91 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/files/gemrc +5 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/tasks/gems.yml +6 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/tasks/main.yml +4 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/tasks/rbenv.yml +31 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/tasks/ruby.yml +15 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/security/tasks/firewall.yml +6 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/security/tasks/main.yml +9 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/roles/user/tasks/main.yml +6 -0
- data/lib/generators/ahoy/templates/ansible/playbooks/tasks/vagrant_settings.yml +3 -0
- data/lib/generators/ahoy/templates/ansible_templates/_hosts +5 -0
- data/lib/generators/ahoy/templates/ansible_templates/_provision.sh +1 -0
- data/lib/generators/ahoy/templates/ansible_templates/playbooks/group_vars/_all.yml +6 -0
- data/lib/generators/ahoy/templates/ansible_templates/playbooks/host_vars/_default.yml +8 -0
- data/lib/generators/ahoy/templates/ansible_templates/playbooks/host_vars/_production_deploy.yml +7 -0
- data/lib/generators/ahoy/templates/ansible_templates/playbooks/host_vars/_production_root.yml +2 -0
- data/lib/generators/ahoy/templates/ansible_templates/playbooks/roles/security/tasks/_ssh_settings.yml +25 -0
- data/lib/generators/ahoy/vagrant_generator.rb +52 -0
- metadata +121 -0
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
- name: add apt-get repository for latest nginx
|
3
|
+
action: apt_repository repo=ppa:nginx/stable
|
4
|
+
|
5
|
+
- name: install nginx
|
6
|
+
apt: pkg=nginx state=present update_cache=true
|
7
|
+
|
8
|
+
- name: delete default vhost
|
9
|
+
action: file path=/etc/nginx/sites-enabled/default state=absent
|
10
|
+
|
11
|
+
- name: copy nginx conf
|
12
|
+
template: src=platform.conf dest=/etc/nginx/sites-enabled/platform.conf
|
13
|
+
|
14
|
+
- name: restart nginx
|
15
|
+
action: service name=nginx pattern=/etc/init.d/nginx state=restarted enabled=yes
|
@@ -0,0 +1,24 @@
|
|
1
|
+
upstream {{ app_name }} {
|
2
|
+
server {{ domain }}:3000;
|
3
|
+
server unix:///var/www/{{ app_name }}/shared/tmp/sockets/puma.sock;
|
4
|
+
}
|
5
|
+
server {
|
6
|
+
listen 80;
|
7
|
+
server_name {{ domain }};
|
8
|
+
root /var/www/{{ app_name }}/current/public;
|
9
|
+
|
10
|
+
location / {
|
11
|
+
proxy_set_header Host $host;
|
12
|
+
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
13
|
+
proxy_pass http://{{ app_name }};
|
14
|
+
}
|
15
|
+
|
16
|
+
location ~* ^/assets/ {
|
17
|
+
expires 1y;
|
18
|
+
add_header Cache-Control public;
|
19
|
+
|
20
|
+
add_header Last-Modified "";
|
21
|
+
add_header ETag "";
|
22
|
+
break;
|
23
|
+
}
|
24
|
+
}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
---
|
2
|
+
- name: install dependencies
|
3
|
+
action: apt pkg={{ item }} state=latest
|
4
|
+
with_items:
|
5
|
+
- python-apt
|
6
|
+
- python-psycopg2
|
7
|
+
- libpq-dev
|
8
|
+
|
9
|
+
- name: get postgres apt key
|
10
|
+
apt_key: url=http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc
|
11
|
+
|
12
|
+
- name: add apt-get repository for latest postgres
|
13
|
+
apt_repository: repo="deb http://apt.postgresql.org/pub/repos/apt/ {{ ansible_lsb.codename }}-pgdg main"
|
14
|
+
|
15
|
+
- name: install postgres
|
16
|
+
apt: name=postgresql-{{ postgresql.version }} state=latest update_cache=true
|
17
|
+
|
18
|
+
- name: copy pg_hba.conf
|
19
|
+
sudo: true
|
20
|
+
template: src=pg_hba.conf dest=/etc/postgresql/{{ postgresql.version }}/main/pg_hba.conf
|
21
|
+
|
22
|
+
- name: set pg_hba.conf permissions
|
23
|
+
sudo: true
|
24
|
+
file: path=/etc/postgresql/{{ postgresql.version }}/main/pg_hba.conf owner=postgres group=postgres mode=0640
|
25
|
+
|
26
|
+
- name: start postgresql
|
27
|
+
service: name=postgresql state=started
|
28
|
+
|
29
|
+
- name: create db user
|
30
|
+
postgresql_user: name={{ database.user }} password={{ database.password }} role_attr_flags=CREATEDB
|
31
|
+
sudo_user: postgres
|
32
|
+
|
33
|
+
- name: create database
|
34
|
+
postgresql_db: name={{ database.name }} owner={{ database.user }} encoding=unicode lc_collate=en_US.utf8 lc_ctype=en_US.utf8 template=template0
|
35
|
+
sudo_user: postgres
|
36
|
+
when: inventory_hostname == 'production_deploy'
|
37
|
+
|
38
|
+
- name: ensure postgres starts on a fresh reboot
|
39
|
+
service: name=postgresql state=started enabled=yes
|
@@ -0,0 +1,91 @@
|
|
1
|
+
# PostgreSQL Client Authentication Configuration File
|
2
|
+
# ===================================================
|
3
|
+
#
|
4
|
+
# Refer to the "Client Authentication" section in the PostgreSQL
|
5
|
+
# documentation for a complete description of this file. A short
|
6
|
+
# synopsis follows.
|
7
|
+
#
|
8
|
+
# This file controls: which hosts are allowed to connect, how clients
|
9
|
+
# are authenticated, which PostgreSQL user names they can use, which
|
10
|
+
# databases they can access. Records take one of these forms:
|
11
|
+
#
|
12
|
+
# local DATABASE USER METHOD [OPTIONS]
|
13
|
+
# host DATABASE USER ADDRESS METHOD [OPTIONS]
|
14
|
+
# hostssl DATABASE USER ADDRESS METHOD [OPTIONS]
|
15
|
+
# hostnossl DATABASE USER ADDRESS METHOD [OPTIONS]
|
16
|
+
#
|
17
|
+
# (The uppercase items must be replaced by actual values.)
|
18
|
+
#
|
19
|
+
# The first field is the connection type: "local" is a Unix-domain
|
20
|
+
# socket, "host" is either a plain or SSL-encrypted TCP/IP socket,
|
21
|
+
# "hostssl" is an SSL-encrypted TCP/IP socket, and "hostnossl" is a
|
22
|
+
# plain TCP/IP socket.
|
23
|
+
#
|
24
|
+
# DATABASE can be "all", "sameuser", "samerole", "replication", a
|
25
|
+
# database name, or a comma-separated list thereof. The "all"
|
26
|
+
# keyword does not match "replication". Access to replication
|
27
|
+
# must be enabled in a separate record (see example below).
|
28
|
+
#
|
29
|
+
# USER can be "all", a user name, a group name prefixed with "+", or a
|
30
|
+
# comma-separated list thereof. In both the DATABASE and USER fields
|
31
|
+
# you can also write a file name prefixed with "@" to include names
|
32
|
+
# from a separate file.
|
33
|
+
#
|
34
|
+
# ADDRESS specifies the set of hosts the record matches. It can be a
|
35
|
+
# host name, or it is made up of an IP address and a CIDR mask that is
|
36
|
+
# an integer (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that
|
37
|
+
# specifies the number of significant bits in the mask. A host name
|
38
|
+
# that starts with a dot (.) matches a suffix of the actual host name.
|
39
|
+
# Alternatively, you can write an IP address and netmask in separate
|
40
|
+
# columns to specify the set of hosts. Instead of a CIDR-address, you
|
41
|
+
# can write "samehost" to match any of the server's own IP addresses,
|
42
|
+
# or "samenet" to match any address in any subnet that the server is
|
43
|
+
# directly connected to.
|
44
|
+
#
|
45
|
+
# METHOD can be "trust", "reject", "md5", "password", "gss", "sspi",
|
46
|
+
# "krb5", "ident", "peer", "pam", "ldap", "radius" or "cert". Note that
|
47
|
+
# "password" sends passwords in clear text; "md5" is preferred since
|
48
|
+
# it sends encrypted passwords.
|
49
|
+
#
|
50
|
+
# OPTIONS are a set of options for the authentication in the format
|
51
|
+
# NAME=VALUE. The available options depend on the different
|
52
|
+
# authentication methods -- refer to the "Client Authentication"
|
53
|
+
# section in the documentation for a list of which options are
|
54
|
+
# available for which authentication methods.
|
55
|
+
#
|
56
|
+
# Database and user names containing spaces, commas, quotes and other
|
57
|
+
# special characters must be quoted. Quoting one of the keywords
|
58
|
+
# "all", "sameuser", "samerole" or "replication" makes the name lose
|
59
|
+
# its special character, and just match a database or username with
|
60
|
+
# that name.
|
61
|
+
#
|
62
|
+
# This file is read on server startup and when the postmaster receives
|
63
|
+
# a SIGHUP signal. If you edit the file on a running system, you have
|
64
|
+
# to SIGHUP the postmaster for the changes to take effect. You can
|
65
|
+
# use "pg_ctl reload" to do that.
|
66
|
+
|
67
|
+
# Put your actual configuration here
|
68
|
+
# ----------------------------------
|
69
|
+
#
|
70
|
+
# If you want to allow non-local connections, you need to add more
|
71
|
+
# "host" records. In that case you will also need to make PostgreSQL
|
72
|
+
# listen on a non-local interface via the listen_addresses
|
73
|
+
# configuration parameter, or via the -i or -h command line switches.
|
74
|
+
|
75
|
+
# DO NOT DISABLE!
|
76
|
+
# If you change this first entry you will need to make sure that the
|
77
|
+
# database superuser can access the database using some other method.
|
78
|
+
# Noninteractive access to all databases is required during automatic
|
79
|
+
# maintenance (custom daily cronjobs, replication, and similar tasks).
|
80
|
+
#
|
81
|
+
# Database administrative login by Unix domain socket
|
82
|
+
local all postgres peer
|
83
|
+
local all all md5
|
84
|
+
host all all 127.0.0.1/32 md5
|
85
|
+
host all all ::1/128 md5
|
86
|
+
|
87
|
+
# Allow replication connections from localhost, by a user with the
|
88
|
+
# replication privilege.
|
89
|
+
#local replication postgres peer
|
90
|
+
#host replication postgres 127.0.0.1/32 md5
|
91
|
+
#host replication postgres ::1/128 md5
|
@@ -0,0 +1,31 @@
|
|
1
|
+
---
|
2
|
+
- name: install dependencies
|
3
|
+
apt: pkg={{ item }} state=present
|
4
|
+
with_items:
|
5
|
+
- libqt4-dev
|
6
|
+
- libssl-dev
|
7
|
+
- libreadline-dev
|
8
|
+
|
9
|
+
- name: install rbenv
|
10
|
+
sudo: true
|
11
|
+
git: repo=git://github.com/sstephenson/rbenv.git dest={{ rbenv_root }}
|
12
|
+
|
13
|
+
- name: install ruby-build as rbenv plugin
|
14
|
+
sudo: true
|
15
|
+
git: repo=https://github.com/sstephenson/ruby-build.git dest={{ rbenv_root }}/plugins/ruby-build
|
16
|
+
|
17
|
+
- name: change owner of rbenv directory
|
18
|
+
sudo: true
|
19
|
+
file: path={{ rbenv_root }} owner={{ deploy_user }} recurse=yes state=directory
|
20
|
+
|
21
|
+
- name: add rbenv symlink
|
22
|
+
file: path=/usr/local/bin/rbenv src={{ rbenv_root }}/bin/rbenv state=link
|
23
|
+
|
24
|
+
- name: export RBENV_ROOT to profile
|
25
|
+
lineinfile: line='export RBENV_ROOT="{{ rbenv_root }}"' dest=/home/{{ deploy_user }}/.profile
|
26
|
+
|
27
|
+
- name: export PATH to rbenv bin to profile
|
28
|
+
lineinfile: line='export PATH="{{ rbenv_root }}/bin:$PATH"' dest=/home/{{ deploy_user }}/.profile
|
29
|
+
|
30
|
+
- name: eval rbenv init
|
31
|
+
lineinfile: line="eval \"$(rbenv init -)\"" dest=/home/{{ deploy_user }}/.profile
|
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
- name: check if proper ruby version is installed
|
3
|
+
shell: RBENV_ROOT={{ rbenv_root }} rbenv versions | grep {{ ruby_version }}
|
4
|
+
register: ruby_installed
|
5
|
+
ignore_errors: yes
|
6
|
+
|
7
|
+
- name: install proper ruby version
|
8
|
+
shell: RBENV_ROOT={{ rbenv_root }} rbenv install {{ ruby_version }}
|
9
|
+
when: ruby_installed|failed
|
10
|
+
|
11
|
+
- name: set global ruby
|
12
|
+
shell: RBENV_ROOT={{ rbenv_root }} rbenv global {{ ruby_version }}
|
13
|
+
|
14
|
+
- name: rehash rbenv
|
15
|
+
shell: RBENV_ROOT={{ rbenv_root }} rbenv rehash
|
@@ -0,0 +1,6 @@
|
|
1
|
+
---
|
2
|
+
- name: create deploy user
|
3
|
+
user: name={{ deploy_user }} shell=/bin/bash generate_ssh_key=yes ssh_key_bits=2048
|
4
|
+
|
5
|
+
- name: allow deploy user sudo commands without password
|
6
|
+
action: lineinfile dest=/etc/sudoers regexp="^root" line="root ALL=(ALL:ALL) ALL\n{{ deploy_user }} ALL=(ALL) NOPASSWD:ALL" state=present
|
@@ -0,0 +1,5 @@
|
|
1
|
+
[production_root]
|
2
|
+
production_root ansible_ssh_host=<%= @server_ip == '' ? '127.0.0.1' : @server_ip %>
|
3
|
+
|
4
|
+
[production_deploy]
|
5
|
+
production_deploy ansible_ssh_host=<%= @server_ip == '' ? '127.0.0.1' : @server_ip %> ansible_ssh_port=<%= @server_ssh_port == '' ? '22' : @server_ssh_port %>
|
@@ -0,0 +1 @@
|
|
1
|
+
ansible-playbook playbooks/playbook.yml -i hosts
|
@@ -0,0 +1,25 @@
|
|
1
|
+
---
|
2
|
+
- name: add local ssh keys to authorized_keys
|
3
|
+
authorized_key: user={{ deploy_user }} key="{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
|
4
|
+
|
5
|
+
- name: change permissions on authorized_keys
|
6
|
+
file: path=/home/{{ deploy_user }}/.ssh/authorized_keys mode=0400
|
7
|
+
|
8
|
+
- name: change ssh port
|
9
|
+
sudo: true
|
10
|
+
action: lineinfile dest=/etc/ssh/sshd_config regexp="^#?Port" line="Port <%= @server_ssh_port == '' ? '22' : @server_ssh_port %>"
|
11
|
+
|
12
|
+
- name: disable root user login via ssh
|
13
|
+
sudo: true
|
14
|
+
action: lineinfile dest=/etc/ssh/sshd_config regexp="^#?PermitRootLogin" line="PermitRootLogin no"
|
15
|
+
|
16
|
+
- name: disable password authentication
|
17
|
+
sudo: true
|
18
|
+
action: lineinfile dest=/etc/ssh/sshd_config regexp="^#?PasswordAuthentication" line="PasswordAuthentication no"
|
19
|
+
|
20
|
+
- name: allow deploy user login via ssh
|
21
|
+
sudo: true
|
22
|
+
action: lineinfile dest=/etc/ssh/sshd_config insertafter=EOF line="AllowUsers {{ deploy_user }}"
|
23
|
+
|
24
|
+
- name: restart ssh service
|
25
|
+
action: service name=ssh state=restarted
|
@@ -0,0 +1,52 @@
|
|
1
|
+
require 'rails/generators'
|
2
|
+
require 'generators/ahoy/base'
|
3
|
+
|
4
|
+
module Ahoy
|
5
|
+
class VagrantGenerator < Ahoy::Generator::Base
|
6
|
+
|
7
|
+
def use_vagrant
|
8
|
+
defaults('No')
|
9
|
+
@use_vagrant = yes?('=> Would you like to use Vagrant with your project?')
|
10
|
+
end
|
11
|
+
|
12
|
+
def prompt_user
|
13
|
+
if @use_vagrant
|
14
|
+
defaults('2')
|
15
|
+
@memory = ask('=> How many Megabytes of memory would you like to allocate to your VM? [enter for default]').to_i
|
16
|
+
defaults('1')
|
17
|
+
@cpus = ask('=> How many CPUs would you like to allocated? [enter for default]').to_i
|
18
|
+
copy_templates
|
19
|
+
append_ansible_playbook
|
20
|
+
else
|
21
|
+
puts 'Skipping Vagrant'
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
def copy_templates
|
28
|
+
template '_Vagrantfile', 'Vagrantfile'
|
29
|
+
template '_database.yml', 'config/database.yml'
|
30
|
+
template 'ansible_templates/playbooks/host_vars/_default.yml', 'config/ansible/playbooks/host_vars/default.yml'
|
31
|
+
end
|
32
|
+
|
33
|
+
def append_ansible_playbook
|
34
|
+
append_file 'config/ansible/playbooks/playbook.yml', VAGRANT_PLAYBOOK
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
VAGRANT_PLAYBOOK = "
|
40
|
+
# Vagrant playbook
|
41
|
+
#==========================================================
|
42
|
+
- hosts: default
|
43
|
+
sudo: true
|
44
|
+
roles:
|
45
|
+
- role: user
|
46
|
+
- role: essentials
|
47
|
+
- role: nodejs
|
48
|
+
- role: postgresql
|
49
|
+
- role: ruby
|
50
|
+
tasks:
|
51
|
+
- include: tasks/vagrant_settings.yml
|
52
|
+
"
|
metadata
ADDED
@@ -0,0 +1,121 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rails-ahoy
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Nathan Pearson
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-01-19 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.7'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.7'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '10.0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '10.0'
|
41
|
+
description: Generator for building ansible based provisioning scripts, and mina/puma
|
42
|
+
deployment scripts
|
43
|
+
email:
|
44
|
+
- npearson72@gmail.com
|
45
|
+
executables: []
|
46
|
+
extensions: []
|
47
|
+
extra_rdoc_files: []
|
48
|
+
files:
|
49
|
+
- ".DS_Store"
|
50
|
+
- ".gitignore"
|
51
|
+
- Gemfile
|
52
|
+
- LICENSE.txt
|
53
|
+
- README.md
|
54
|
+
- Rakefile
|
55
|
+
- ahoy.gemspec
|
56
|
+
- lib/ahoy.rb
|
57
|
+
- lib/ahoy/version.rb
|
58
|
+
- lib/generators/ahoy/ansible_generator.rb
|
59
|
+
- lib/generators/ahoy/base.rb
|
60
|
+
- lib/generators/ahoy/deploy_generator.rb
|
61
|
+
- lib/generators/ahoy/init_generator.rb
|
62
|
+
- lib/generators/ahoy/templates/_Vagrantfile
|
63
|
+
- lib/generators/ahoy/templates/_database.yml
|
64
|
+
- lib/generators/ahoy/templates/_deploy.rb
|
65
|
+
- lib/generators/ahoy/templates/_env_vars.yml
|
66
|
+
- lib/generators/ahoy/templates/_puma.rb
|
67
|
+
- lib/generators/ahoy/templates/_puma.sh
|
68
|
+
- lib/generators/ahoy/templates/ansible/playbooks/playbook.yml
|
69
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/deploy_env/tasks/main.yml
|
70
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/deploy_env/templates/database.yml
|
71
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/deploy_env/templates/secrets.yml
|
72
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/essentials/tasks/main.yml
|
73
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/essentials/templates/vimrc
|
74
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/nginx/tasks/main.yml
|
75
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/nginx/templates/platform.conf
|
76
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/nodejs/tasks/main.yml
|
77
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/postgresql/handlers/main.yml
|
78
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/postgresql/tasks/main.yml
|
79
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/postgresql/templates/pg_hba.conf
|
80
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/files/gemrc
|
81
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/tasks/gems.yml
|
82
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/tasks/main.yml
|
83
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/tasks/rbenv.yml
|
84
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/ruby/tasks/ruby.yml
|
85
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/security/tasks/firewall.yml
|
86
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/security/tasks/main.yml
|
87
|
+
- lib/generators/ahoy/templates/ansible/playbooks/roles/user/tasks/main.yml
|
88
|
+
- lib/generators/ahoy/templates/ansible/playbooks/tasks/vagrant_settings.yml
|
89
|
+
- lib/generators/ahoy/templates/ansible_templates/_hosts
|
90
|
+
- lib/generators/ahoy/templates/ansible_templates/_provision.sh
|
91
|
+
- lib/generators/ahoy/templates/ansible_templates/playbooks/group_vars/_all.yml
|
92
|
+
- lib/generators/ahoy/templates/ansible_templates/playbooks/host_vars/_default.yml
|
93
|
+
- lib/generators/ahoy/templates/ansible_templates/playbooks/host_vars/_production_deploy.yml
|
94
|
+
- lib/generators/ahoy/templates/ansible_templates/playbooks/host_vars/_production_root.yml
|
95
|
+
- lib/generators/ahoy/templates/ansible_templates/playbooks/roles/security/tasks/_ssh_settings.yml
|
96
|
+
- lib/generators/ahoy/vagrant_generator.rb
|
97
|
+
homepage: ''
|
98
|
+
licenses:
|
99
|
+
- MIT
|
100
|
+
metadata: {}
|
101
|
+
post_install_message:
|
102
|
+
rdoc_options: []
|
103
|
+
require_paths:
|
104
|
+
- lib
|
105
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
106
|
+
requirements:
|
107
|
+
- - ">="
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
111
|
+
requirements:
|
112
|
+
- - ">="
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: '0'
|
115
|
+
requirements: []
|
116
|
+
rubyforge_project:
|
117
|
+
rubygems_version: 2.2.2
|
118
|
+
signing_key:
|
119
|
+
specification_version: 4
|
120
|
+
summary: Quick and painless Rails deployment
|
121
|
+
test_files: []
|