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
@@ -0,0 +1,26 @@
|
|
1
|
+
# Install Node.js using packages crafted by NodeSource
|
2
|
+
---
|
3
|
+
- name: Ensure the system can use the HTTPS transport for APT
|
4
|
+
stat: path=/usr/lib/apt/methods/https
|
5
|
+
register: apt_https_transport
|
6
|
+
|
7
|
+
- name: Install HTTPS transport for APT
|
8
|
+
apt: pkg=apt-transport-https state=installed
|
9
|
+
when: not apt_https_transport.stat.exists
|
10
|
+
|
11
|
+
- name: Import the NodeSource GPG key into apt
|
12
|
+
apt_key: url=https://deb.nodesource.com/gpgkey/nodesource.gpg.key state=present
|
13
|
+
|
14
|
+
- name: Add NodeSource deb repository
|
15
|
+
apt_repository: repo='deb https://deb.nodesource.com/node {{ ansible_distribution_release }} main' state=present
|
16
|
+
|
17
|
+
- name: Add NodeSource deb-src repository
|
18
|
+
apt_repository: repo='deb-src https://deb.nodesource.com/node {{ ansible_distribution_release }} main' state=present
|
19
|
+
|
20
|
+
- name: Add NodeSource repository preferences
|
21
|
+
template:
|
22
|
+
src: etc/apt/preferences.d/deb_nodesource_com_node.pref.2
|
23
|
+
dest: /etc/apt/preferences.d/deb_nodesource_com_node.pref
|
24
|
+
|
25
|
+
- name: Install Node.js
|
26
|
+
apt: pkg=nodejs state=installed update_cache=yes
|
@@ -0,0 +1,40 @@
|
|
1
|
+
---
|
2
|
+
driver:
|
3
|
+
name: vagrant
|
4
|
+
|
5
|
+
provisioner:
|
6
|
+
# ansible_platform: ubuntu
|
7
|
+
name: ansible_playbook
|
8
|
+
# roles_path:
|
9
|
+
hosts: test-kitchen
|
10
|
+
require_ansible_repo: true
|
11
|
+
ansible_verbose: true
|
12
|
+
ansible_verbosity: 1
|
13
|
+
sudo: true
|
14
|
+
extra_vars:
|
15
|
+
rbenv:
|
16
|
+
env: system
|
17
|
+
version: v0.4.0
|
18
|
+
ruby_version: 2.1.2
|
19
|
+
|
20
|
+
platforms:
|
21
|
+
# - name: ubuntu-10.04 # lucid
|
22
|
+
- name: ubuntu-12.04 # precise
|
23
|
+
- name: ubuntu-13.10 # saucy
|
24
|
+
- name: ubuntu-14.04 # trusty
|
25
|
+
# - name: ubuntu-14.10 # utopic ## No bento box yet... Official Scheduled Release: October 23rd 2014
|
26
|
+
# - name: centos-5.10 # TODO: NOT TESTED YET... unsure if kitchen-ansible works yet...
|
27
|
+
- name: centos-6.4
|
28
|
+
- name: centos-6.5
|
29
|
+
# - name: centos-7.0 # TODO: Needs work to fix kitchen-ansible repo to use
|
30
|
+
# - name: nocm_centos-6.5
|
31
|
+
# driver_plugin: vagrant
|
32
|
+
# driver_config:
|
33
|
+
# box: nocm_centos-6.5
|
34
|
+
# box_url: http://puppet-vagrant-boxes.puppetlabs.com/centos-65-x64-virtualbox-nocm.box
|
35
|
+
# network:
|
36
|
+
# - ['forwarded_port', {guest: 8080, host: 8080}]
|
37
|
+
# - [ 'private_network', { ip: '192.168.33.11' } ]
|
38
|
+
|
39
|
+
suites:
|
40
|
+
- name: default
|
@@ -0,0 +1,12 @@
|
|
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
|
7
|
+
install:
|
8
|
+
- pip install ansible
|
9
|
+
script:
|
10
|
+
- echo localhost > inventory
|
11
|
+
- ansible-playbook --syntax-check -i inventory role.yml
|
12
|
+
- ansible-playbook -i inventory role.yml --connection=local --sudo -vvvv
|
@@ -0,0 +1,100 @@
|
|
1
|
+
rbenv
|
2
|
+
========
|
3
|
+
|
4
|
+
Role for installing [rbenv](https://github.com/sstephenson/rbenv).
|
5
|
+
|
6
|
+
Role ready status
|
7
|
+
------------
|
8
|
+
|
9
|
+
[![Build Status](https://travis-ci.org/zzet/ansible-rbenv-role.png?branch=master)](https://travis-ci.org/zzet/ansible-rbenv-role)
|
10
|
+
|
11
|
+
Requirements
|
12
|
+
------------
|
13
|
+
|
14
|
+
none
|
15
|
+
|
16
|
+
Role Variables
|
17
|
+
--------------
|
18
|
+
|
19
|
+
Default variables are:
|
20
|
+
|
21
|
+
rbenv:
|
22
|
+
env: system
|
23
|
+
version: v0.4.0
|
24
|
+
ruby_version: 2.0.0-p247
|
25
|
+
|
26
|
+
rbenv_repo: "git://github.com/sstephenson/rbenv.git"
|
27
|
+
|
28
|
+
rbenv_plugins:
|
29
|
+
- { name: "rbenv-vars",
|
30
|
+
repo: "git://github.com/sstephenson/rbenv-vars.git",
|
31
|
+
version: "v1.2.0" }
|
32
|
+
|
33
|
+
- { name: "ruby-build",
|
34
|
+
repo: "git://github.com/sstephenson/ruby-build.git",
|
35
|
+
version: "v20131225.1" }
|
36
|
+
|
37
|
+
- { name: "rbenv-default-gems",
|
38
|
+
repo: "git://github.com/sstephenson/rbenv-default-gems.git",
|
39
|
+
version: "v1.0.0" }
|
40
|
+
|
41
|
+
- { name: "rbenv-installer",
|
42
|
+
repo: "git://github.com/fesplugas/rbenv-installer.git",
|
43
|
+
version: "8bb9d34d01f78bd22e461038e887d6171706e1ba" }
|
44
|
+
|
45
|
+
- { name: "rbenv-update",
|
46
|
+
repo: "git://github.com/rkh/rbenv-update.git",
|
47
|
+
version: "32218db487dca7084f0e1954d613927a74bc6f2d" }
|
48
|
+
|
49
|
+
- { name: "rbenv-whatis",
|
50
|
+
repo: "git://github.com/rkh/rbenv-whatis.git",
|
51
|
+
version: "v1.0.0" }
|
52
|
+
|
53
|
+
- { name: "rbenv-use",
|
54
|
+
repo: "git://github.com/rkh/rbenv-use.git",
|
55
|
+
version: "v1.0.0" }
|
56
|
+
|
57
|
+
rbenv_root: "{% if rbenv.env == 'system' %}/usr/local/rbenv{% else %}$HOME/.rbenv{% endif %}"
|
58
|
+
|
59
|
+
rbenv_users: []
|
60
|
+
|
61
|
+
Description:
|
62
|
+
|
63
|
+
- ` rbenv.env ` - Type of rbenv installation. Allows 'system' or 'user' values
|
64
|
+
- ` rbenv.version ` - Version of rbenv to install (tag from [rbenv releases page](https://github.com/sstephenson/rbenv/releases))
|
65
|
+
- ` rbenv.ruby_version ` - Version of ruby to install as global rbenv ruby
|
66
|
+
- ` rbenv_repo ` - Repository with source code of rbenv to install
|
67
|
+
- ` rbenv_plugins ` - Array of Hashes with information about plugins to install
|
68
|
+
- ` rbenv_root ` - Install path
|
69
|
+
- ` rbenv_users ` - Array of usernames for multiuser install. User must be present in the system
|
70
|
+
- ` default_gems_file ` - This is Rbenv's plugin _rbenv-default-gems_. Sets the path to a default-gems file of your choice (_don't set it_ if you want to use the default file `files/default-gems`)
|
71
|
+
|
72
|
+
Example:
|
73
|
+
|
74
|
+
- hosts: web
|
75
|
+
vars:
|
76
|
+
rbenv:
|
77
|
+
env: user
|
78
|
+
version: v0.4.0
|
79
|
+
ruby_version: 2.0.0-p353
|
80
|
+
roles:
|
81
|
+
- role: zzet.rbenv
|
82
|
+
rbenv_users:
|
83
|
+
- user
|
84
|
+
|
85
|
+
Dependencies
|
86
|
+
------------
|
87
|
+
|
88
|
+
none
|
89
|
+
|
90
|
+
License
|
91
|
+
-------
|
92
|
+
|
93
|
+
MIT
|
94
|
+
|
95
|
+
Author Information
|
96
|
+
------------------
|
97
|
+
|
98
|
+
[Andrew Kumanyaev](http://github.com/zzet)
|
99
|
+
|
100
|
+
[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/zzet/ansible-rbenv-role/trend.png)](https://bitdeli.com/free "Bitdeli Badge")
|
@@ -0,0 +1,20 @@
|
|
1
|
+
---
|
2
|
+
rbenv:
|
3
|
+
env: system
|
4
|
+
version: v0.4.0
|
5
|
+
ruby_version: 2.1.5
|
6
|
+
|
7
|
+
rbenv_repo: "git://github.com/sstephenson/rbenv.git"
|
8
|
+
|
9
|
+
rbenv_plugins:
|
10
|
+
- { name: "rbenv-vars", repo: "git://github.com/sstephenson/rbenv-vars.git", version: "v1.2.0" }
|
11
|
+
- { name: "ruby-build", repo: "git://github.com/sstephenson/ruby-build.git", version: "v20141225" }
|
12
|
+
- { name: "rbenv-default-gems", repo: "git://github.com/sstephenson/rbenv-default-gems.git", version: "v1.0.0" }
|
13
|
+
- { name: "rbenv-installer", repo: "git://github.com/fesplugas/rbenv-installer.git", version: "22cc96aa45d06faca5958b1aa1688596198407a3" }
|
14
|
+
- { name: "rbenv-update", repo: "git://github.com/rkh/rbenv-update.git", version: "f0ff6e3264c45fdf2a8064205db6c8b3a707894e" }
|
15
|
+
- { name: "rbenv-whatis", repo: "git://github.com/rkh/rbenv-whatis.git", version: "v1.0.0" }
|
16
|
+
- { name: "rbenv-use", repo: "git://github.com/rkh/rbenv-use.git", version: "v1.0.0" }
|
17
|
+
|
18
|
+
rbenv_root: "{% if rbenv.env == 'system' %}/usr/local/rbenv{% else %}~/.rbenv{% endif %}"
|
19
|
+
|
20
|
+
rbenv_users: []
|
@@ -0,0 +1 @@
|
|
1
|
+
bundler
|
@@ -0,0 +1 @@
|
|
1
|
+
GEM_PATH=$GEM_PATH:$HOME/.gems
|
@@ -0,0 +1 @@
|
|
1
|
+
{install_date: 'Fri Mar 20 18:33:15 2015', version: 2.0.0}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
---
|
2
|
+
galaxy_info:
|
3
|
+
author: "Andrew Kumanyaev"
|
4
|
+
description: rbenv
|
5
|
+
company: Undev
|
6
|
+
license: MIT
|
7
|
+
min_ansible_version: 1.7.1
|
8
|
+
version: 0.2
|
9
|
+
|
10
|
+
platforms:
|
11
|
+
- name: EL
|
12
|
+
versions:
|
13
|
+
# - 5
|
14
|
+
- 6
|
15
|
+
# - 7
|
16
|
+
- name: Ubuntu
|
17
|
+
versions:
|
18
|
+
# - lucid # 10.04 ## package is named git-core 10.04... also geerlingguy.git doesn't support 10.04 either
|
19
|
+
- precise # 12.04
|
20
|
+
- saucy # 13.10
|
21
|
+
- trusty # 14.04
|
22
|
+
# - utopic # 14.10
|
23
|
+
categories:
|
24
|
+
- development
|
25
|
+
- system
|
26
|
+
|
27
|
+
dependencies: []
|
@@ -0,0 +1,15 @@
|
|
1
|
+
- name: install build depends
|
2
|
+
apt: pkg={{ item }} state=present install_recommends=no
|
3
|
+
with_items:
|
4
|
+
- build-essential
|
5
|
+
- git
|
6
|
+
- libcurl4-openssl-dev
|
7
|
+
- libreadline-dev
|
8
|
+
- libssl-dev
|
9
|
+
- libxml2-dev
|
10
|
+
- libxslt1-dev
|
11
|
+
- zlib1g-dev
|
12
|
+
sudo: true
|
13
|
+
tags:
|
14
|
+
- rbenv
|
15
|
+
|
@@ -0,0 +1,10 @@
|
|
1
|
+
---
|
2
|
+
- homebrew: name={{ item }} state=present
|
3
|
+
with_items:
|
4
|
+
- openssl
|
5
|
+
- libyaml
|
6
|
+
# required for building Ruby <= 1.9.3-p0
|
7
|
+
- homebrew_tap: tap=homebrew/dupes state=present
|
8
|
+
when: rbenv.ruby_version <= 1.9.3-p0
|
9
|
+
- homebrew: name=apple-gcc42 state=present
|
10
|
+
when: rbenv.ruby_version <= 1.9.3-p0
|
@@ -0,0 +1,192 @@
|
|
1
|
+
---
|
2
|
+
- name: include env vars
|
3
|
+
include_vars: "{{ rbenv.env }}.yml"
|
4
|
+
|
5
|
+
- include: apt_build_depends.yml
|
6
|
+
when: ansible_pkg_mgr == 'apt'
|
7
|
+
- include: yum_build_depends.yml
|
8
|
+
when: ansible_pkg_mgr == 'yum'
|
9
|
+
# - include: pacman_build_depends.yml # Arch Linux
|
10
|
+
# when: ansible_pkg_mgr == 'pacman'
|
11
|
+
- include: homebrew_build_depends.yml
|
12
|
+
when: ansible_os_family == 'Darwin'
|
13
|
+
|
14
|
+
|
15
|
+
- name: checkout rbenv_repo for system
|
16
|
+
git: >
|
17
|
+
repo={{ rbenv_repo }}
|
18
|
+
dest={{ rbenv_root }}
|
19
|
+
version={{ rbenv.version }}
|
20
|
+
accept_hostkey=true
|
21
|
+
when: rbenv.env == "system"
|
22
|
+
tags:
|
23
|
+
- rbenv
|
24
|
+
|
25
|
+
- name: create plugins directory for system
|
26
|
+
file: state=directory path={{ rbenv_root }}/plugins
|
27
|
+
when: rbenv.env == "system"
|
28
|
+
tags:
|
29
|
+
- rbenv
|
30
|
+
|
31
|
+
- name: install plugins for system
|
32
|
+
git: >
|
33
|
+
repo={{ item.repo }}
|
34
|
+
dest={{ rbenv_root }}/plugins/{{ item.name }}
|
35
|
+
version={{ item.version }}
|
36
|
+
accept_hostkey=true
|
37
|
+
with_items: rbenv_plugins
|
38
|
+
when: rbenv.env == "system"
|
39
|
+
tags:
|
40
|
+
- rbenv
|
41
|
+
|
42
|
+
- name: checkout rbenv_repo for selected users
|
43
|
+
git: >
|
44
|
+
repo={{ rbenv_repo }}
|
45
|
+
dest={{ rbenv_root }}
|
46
|
+
version={{ rbenv.version }}
|
47
|
+
accept_hostkey=true
|
48
|
+
with_items: rbenv_users
|
49
|
+
sudo: true
|
50
|
+
sudo_user: "{{ item }}"
|
51
|
+
when: not "system" == "{{ rbenv.env }}"
|
52
|
+
ignore_errors: true
|
53
|
+
tags:
|
54
|
+
- rbenv
|
55
|
+
|
56
|
+
- name: create plugins directory for selected users
|
57
|
+
file: state=directory path={{ rbenv_root }}/plugins
|
58
|
+
with_items: rbenv_users
|
59
|
+
sudo: true
|
60
|
+
sudo_user: "{{ item }}"
|
61
|
+
when: not "system" == "{{ rbenv.env }}"
|
62
|
+
ignore_errors: true
|
63
|
+
tags:
|
64
|
+
- rbenv
|
65
|
+
|
66
|
+
- name: install plugins for selected users
|
67
|
+
git: >
|
68
|
+
repo={{ item[1].repo }}
|
69
|
+
dest={{ rbenv_root }}/plugins/{{ item[1].name }}
|
70
|
+
version={{ item[1].version }}
|
71
|
+
accept_hostkey=true
|
72
|
+
with_nested:
|
73
|
+
- rbenv_users
|
74
|
+
- rbenv_plugins
|
75
|
+
sudo: true
|
76
|
+
sudo_user: "{{ item[0] }}"
|
77
|
+
when: not "system" == "{{ rbenv.env }}"
|
78
|
+
ignore_errors: true
|
79
|
+
tags:
|
80
|
+
- rbenv
|
81
|
+
|
82
|
+
- name: add rbenv initialization to profile system-wide
|
83
|
+
template: src=rbenv.sh.j2 dest=/etc/profile.d/rbenv.sh owner=root group=root mode=0755
|
84
|
+
sudo: true
|
85
|
+
when:
|
86
|
+
- ansible_os_family != 'OpenBSD'
|
87
|
+
tags:
|
88
|
+
- rbenv
|
89
|
+
|
90
|
+
- name: set default-gems for select users
|
91
|
+
copy: src=default-gems dest={{ rbenv_root }}/default-gems
|
92
|
+
with_items: rbenv_users
|
93
|
+
sudo: true
|
94
|
+
sudo_user: "{{ item }}"
|
95
|
+
when:
|
96
|
+
- not "system" == "{{ rbenv.env }}"
|
97
|
+
- default_gems_file is not defined
|
98
|
+
ignore_errors: true
|
99
|
+
tags:
|
100
|
+
- rbenv
|
101
|
+
|
102
|
+
- name: set custom default-gems for select users
|
103
|
+
copy: src={{ default_gems_file }} dest={{ rbenv_root }}/default-gems
|
104
|
+
with_items: rbenv_users
|
105
|
+
sudo: true
|
106
|
+
sudo_user: "{{ item }}"
|
107
|
+
when:
|
108
|
+
- not "system" == "{{ rbenv.env }}"
|
109
|
+
- default_gems_file is defined
|
110
|
+
ignore_errors: true
|
111
|
+
tags:
|
112
|
+
- rbenv
|
113
|
+
|
114
|
+
- name: set gemrc for select users
|
115
|
+
copy: src=gemrc dest=~/.gemrc
|
116
|
+
with_items: rbenv_users
|
117
|
+
sudo: true
|
118
|
+
sudo_user: "{{ item }}"
|
119
|
+
when: not "system" == "{{ rbenv.env }}"
|
120
|
+
ignore_errors: true
|
121
|
+
tags:
|
122
|
+
- rbenv
|
123
|
+
|
124
|
+
- name: set vars for select users
|
125
|
+
copy: src=vars dest={{ rbenv_root }}/vars
|
126
|
+
with_items: rbenv_users
|
127
|
+
sudo: true
|
128
|
+
sudo_user: "{{ item }}"
|
129
|
+
when: not "system" == "{{ rbenv.env }}"
|
130
|
+
ignore_errors: true
|
131
|
+
tags:
|
132
|
+
- rbenv
|
133
|
+
|
134
|
+
- name: check ruby {{ rbenv.ruby_version }} installed for system
|
135
|
+
shell: $SHELL -lc "rbenv versions | grep {{ rbenv.ruby_version }}"
|
136
|
+
register: ruby_installed
|
137
|
+
changed_when: false
|
138
|
+
ignore_errors: yes
|
139
|
+
when: rbenv.env == "system"
|
140
|
+
tags:
|
141
|
+
- rbenv
|
142
|
+
|
143
|
+
- name: install ruby {{ rbenv.ruby_version }} for system
|
144
|
+
shell: bash -lc "rbenv install {{ rbenv.ruby_version }}"
|
145
|
+
when:
|
146
|
+
- rbenv.env == "system"
|
147
|
+
- ruby_installed.rc != 0
|
148
|
+
tags:
|
149
|
+
- rbenv
|
150
|
+
|
151
|
+
- name: install ruby {{ rbenv.ruby_version }} for system
|
152
|
+
shell: bash -lc "rbenv global {{ rbenv.ruby_version }} && rbenv rehash"
|
153
|
+
when:
|
154
|
+
- rbenv.env == "system"
|
155
|
+
- ruby_installed.rc != 0
|
156
|
+
tags:
|
157
|
+
- rbenv
|
158
|
+
|
159
|
+
- name: check ruby {{ rbenv.ruby_version }} installed for select users
|
160
|
+
shell: $SHELL -lc "rbenv versions | grep {{ rbenv.ruby_version }}"
|
161
|
+
sudo: true
|
162
|
+
sudo_user: "{{ item }}"
|
163
|
+
with_items: rbenv_users
|
164
|
+
when: not "system" == "{{ rbenv.env }}"
|
165
|
+
register: ruby_installed
|
166
|
+
ignore_errors: yes
|
167
|
+
tags:
|
168
|
+
- rbenv
|
169
|
+
|
170
|
+
- name: install ruby {{ rbenv.ruby_version }} for select users
|
171
|
+
shell: $SHELL -lc "rbenv install {{ rbenv.ruby_version }}"
|
172
|
+
sudo: true
|
173
|
+
sudo_user: "{{ item[1] }}"
|
174
|
+
with_together:
|
175
|
+
- ruby_installed.results
|
176
|
+
- rbenv_users
|
177
|
+
when: (not "system" == "{{ rbenv.env }}") and (item[0].rc != 0)
|
178
|
+
ignore_errors: true
|
179
|
+
tags:
|
180
|
+
- rbenv
|
181
|
+
|
182
|
+
- name: install ruby {{ rbenv.ruby_version }} for select users
|
183
|
+
shell: $SHELL -lc "rbenv global {{ rbenv.ruby_version }} && rbenv rehash"
|
184
|
+
sudo: true
|
185
|
+
sudo_user: "{{ item[1] }}"
|
186
|
+
with_together:
|
187
|
+
- ruby_installed.results
|
188
|
+
- rbenv_users
|
189
|
+
when: (not "system" == "{{ rbenv.env }}") and (item[0].rc != 0)
|
190
|
+
ignore_errors: true
|
191
|
+
tags:
|
192
|
+
- rbenv
|
@@ -0,0 +1,11 @@
|
|
1
|
+
{% if rbenv.env == 'system' %}
|
2
|
+
export PATH={{ rbenv_root }}/bin:$PATH
|
3
|
+
export RBENV_ROOT="{{ rbenv_root }}"
|
4
|
+
eval "$(rbenv init -)"
|
5
|
+
{% else %}
|
6
|
+
if [ -d "$HOME/.rbenv" ]; then
|
7
|
+
export PATH=$HOME/.rbenv/bin:$PATH;
|
8
|
+
export RBENV_ROOT=$HOME/.rbenv;
|
9
|
+
eval "$(rbenv init -)";
|
10
|
+
fi
|
11
|
+
{% endif %}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
## We'll assume a system-level install for testing purposes
|
4
|
+
describe file('/usr/local/rbenv') do
|
5
|
+
it { should be_directory }
|
6
|
+
it { should be_owned_by 'root' }
|
7
|
+
it { should be_grouped_into 'root' }
|
8
|
+
end
|
9
|
+
|
10
|
+
describe file('/usr/local/rbenv/bin/rbenv') do
|
11
|
+
it { should be_file }
|
12
|
+
it { should be_executable }
|
13
|
+
it { should be_executable.by('others') }
|
14
|
+
it { should be_owned_by 'root' }
|
15
|
+
it { should be_grouped_into 'root' }
|
16
|
+
end
|
17
|
+
|
18
|
+
describe command('bash -l -c "which rbenv"') do
|
19
|
+
its(:stdout) { should match /\/usr\/local\/rbenv\/bin\/rbenv/ }
|
20
|
+
it { should return_exit_status 0 }
|
21
|
+
end
|
22
|
+
|
23
|
+
describe command('bash -l -c "rbenv --version"') do
|
24
|
+
its(:stdout) { should match /0\.4\.0/ }
|
25
|
+
it { should return_exit_status 0 }
|
26
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
---
|