Skip to content

Commit f096ce2

Browse files
Samuel Mutelsmutel
Samuel Mutel
authored andcommitted
enh: Move source installation in splitted files
1 parent 82bd954 commit f096ce2

File tree

7 files changed

+63
-13
lines changed

7 files changed

+63
-13
lines changed

defaults/main.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
---
22
## Installation options
3+
redis_install_method: "source"
34
redis_version: 2.8.24
45
redis_install_dir: /opt/redis
56
redis_dir: /var/lib/redis/{{ redis_port }}
67
redis_config_file_name: "{{ redis_port }}.conf"
78
redis_download_url: "http://download.redis.io/releases/redis-{{ redis_version }}.tar.gz"
9+
redis_package: redis-server
10+
redis_pin_package: false
811

912
redis_protected_mode: "yes"
1013
# Set this to true to validate redis tarball checksum against vars/main.yml

handlers/main.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,9 @@
1010
name: sentinel_{{ redis_sentinel_port }}
1111
state: restarted
1212
when: redis_as_service
13+
14+
- name: "disable redis"
15+
service:
16+
name: "{{ redis_service_name }}"
17+
enabled: no
18+
when: redis_as_service

tasks/main.yml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,31 @@
22
- include: check_vars.yml
33

44
- include: download.yml
5+
when: redis_install_method == "source"
56
tags:
67
- download
78

89
- include: dependencies.yml
10+
when: redis_install_method == "source"
911
tags:
1012
- install
1113

12-
- include: install.yml
14+
- include: setup.yml
15+
tags:
16+
- install
17+
18+
- include: package.yml
19+
when: redis_install_method == "package"
20+
tags:
21+
- install
22+
23+
- include: source.yml
24+
when: redis_install_method == "source"
1325
tags:
1426
- install
1527

1628
- include: server.yml
17-
when: not redis_sentinel
29+
when: redis_server
1830
tags:
1931
- config
2032

tasks/package.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
- name: Set pin content
3+
set_fact:
4+
pin_content: |
5+
{{ pin_content | default('') }}
6+
Package: {{ item }}
7+
Pin: version {{ redis_version }}
8+
Pin-Priority: 1001
9+
loop: "{{ redis_packages }}"
10+
11+
- name: Pin Redis release
12+
copy:
13+
dest: /etc/apt/preferences.d/redis
14+
owner: root
15+
group: root
16+
mode: '0644'
17+
content: "{{ pin_content }}"
18+
when:
19+
- redis_pin_package
20+
- ansible_distribution == "Ubuntu" or ansible_distribution == "Debian"
21+
22+
- name: Install Redis package
23+
package:
24+
name: "{{ redis_packages }}"
25+
state: present
26+
notify: "disable redis"
27+
28+
- name: flush handlers to disable redis after install
29+
meta: flush_handlers

tasks/server.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
service:
5858
name: "{{ redis_service_name }}"
5959
enabled: yes
60-
when: redis_as_service
60+
when: redis_as_service or redis_install_method == "package"
6161

6262
# Check then create log dir to prevent aggressively overwriting permissions
6363
- name: check if log directory exists
@@ -85,7 +85,7 @@
8585
owner: "{{ redis_user }}"
8686
group: "{{ redis_group }}"
8787
when: redis_logfile != '""'
88-
88+
8989
- name: update permissions of log file if needed
9090
file:
9191
state: file

tasks/setup.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
- name: enable overcommit in sysctl
3+
sysctl:
4+
name: vm.overcommit_memory
5+
value: "1"
6+
state: present
7+
reload: yes
8+
ignoreerrors: yes
9+
when: redis_travis_ci is not defined

tasks/install.yml renamed to tasks/source.yml

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,4 @@
11
---
2-
- name: enable overcommit in sysctl
3-
sysctl:
4-
name: vm.overcommit_memory
5-
value: "1"
6-
state: present
7-
reload: yes
8-
ignoreerrors: yes
9-
when: redis_travis_ci is not defined
10-
112
- name: compile redis
123
shell: umask 0022 && make -j{{ ansible_processor_cores|default(1) + 1 }}{{ ' 32bit' if redis_make_32bit|bool else '' }}{{ ' BUILD_TLS=yes' if redis_make_tls|bool else '' }}
134
args:

0 commit comments

Comments
 (0)