1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-03-09 15:40:17 +00:00

Merge pull request #80 from iiab/master

sync from iiab/iiab
This commit is contained in:
A Holt 2018-05-10 12:07:52 -04:00 committed by GitHub
commit bded9a8fa2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 76 additions and 53 deletions

View file

@ -3,3 +3,5 @@
[defaults] [defaults]
squash_actions = apk, apt, dnf, homebrew, openbsd_pkg, pacman, pkgng, yum, zypper, package squash_actions = apk, apt, dnf, homebrew, openbsd_pkg, pacman, pkgng, yum, zypper, package
remote_tmp = $HOME/.ansible/tmp
local_tmp = $HOME/.ansible/tmp

View file

@ -1,69 +1,90 @@
- name: Install ejabberd packages - name: Install ejabberd packages
package: name={{ item }} package:
state=present name: "{{ item }}"
state: present
with_items: with_items:
- ejabberd - ejabberd
tags: tags:
- download - download
- name: Configure ejabberd #- name: Configure ejabberd
template: backup=yes # template:
src={{ item.src }} # backup: yes
dest={{ item.dest }} # src: "{{ item.src }}"
owner=root # dest: "{{ item.dest }}"
group=root # owner: root
mode={{ item.mode }} # group: root
with_items: # mode: "{{ item.mode }}"
- { src: 'ejabberd-iiab.cfg.j2', dest: '/etc/ejabberd/ejabberd-iiab.cfg' , mode: '0644' } # with_items:
- { src: 'ejabberdctl.cfg.j2', dest: '/etc/ejabberd/ejabberdctl-iiab.cfg', mode: '0644' } # - { src: 'ejabberd-iiab.cfg.j2', dest: '/etc/ejabberd/ejabberd-iiab.cfg' , mode: '0644' }
- { src: 'ejabberd-iiab', dest: '/etc/sysconfig/ejabberd-iiab', mode: '0755' } # - { src: 'ejabberdctl.cfg.j2', dest: '/etc/ejabberd/ejabberdctl-iiab.cfg', mode: '0644' }
# - { src: 'ejabberd-domain-config', dest: '/etc/sysconfig/olpc-scripts/domain_config.d/ejabberd', mode: '0755'} # - { src: 'ejabberd-iiab', dest: '/etc/sysconfig/ejabberd-iiab', mode: '0755' }
# - { src: 'ejabberd', dest: '/etc/sysconfig/olpc-scripts/domain_config.d/ejabberd' , mode: '0755' } # #- { src: 'ejabberd-domain-config', dest: '/etc/sysconfig/olpc-scripts/domain_config.d/ejabberd', mode: '0755'}
- { src: 'ejabberd-iiab.service.j2', dest: '/etc/systemd/system/ejabberd-iiab.service', mode: '0755' } # #- { src: 'ejabberd', dest: '/etc/sysconfig/olpc-scripts/domain_config.d/ejabberd' , mode: '0755' }
- { src: 'iiab-ejabberd-srg', dest: '/usr/bin/iiab-ejabberd-srg' , mode: '0755' } # - { src: 'ejabberd-iiab.service.j2', dest: '/etc/systemd/system/ejabberd-iiab.service', mode: '0644' }
# - { src: '10-ejabberdmoodle', dest: '/etc/sudoers.d/10-ejabberdmoodle', mode: '0440' } # - { src: 'iiab-ejabberd-srg', dest: '/usr/bin/iiab-ejabberd-srg' , mode: '0755' }
- { src: 'ejabberd.tmpfiles', dest: '/etc/tmpfiles.d/ejabberd.conf', mode: '0640' } # #- { src: '10-ejabberdmoodle', dest: '/etc/sudoers.d/10-ejabberdmoodle', mode: '0440' }
register: ejabberd_config # - { src: 'ejabberd.tmpfiles', dest: '/etc/tmpfiles.d/ejabberd.conf', mode: '0640' }
# register: ejabberd_config
- name: Stop and disable OS provided systemd ejabberd service #- name: Stop and disable OS provided systemd ejabberd service
service: name=ejabberd # service:
state=stopped # name: ejabberd
enabled=no # state: stopped
# enabled: no
- name: Put the startup script in place - debian #- name: Put the startup script in place - debian
template: src='ejabberd-iiab.init' # template:
dest='/etc/init.d/ejabberd-iiab' # src: ejabberd-iiab.init
when: is_debuntu # dest: /etc/init.d/ejabberd-iiab
# mode: 0755
# when: is_debuntu
- name: Put the startup script in place - non debian #- name: Put the startup script in place - non debian
template: src='ejabberd-iiab.init' # template:
dest='/usr/libexec/ejabberd-iiab' # src: ejabberd-iiab.init
when: not is_debuntu # dest: /usr/libexec/ejabberd-iiab
# mode: 0755
# when: not is_debuntu
- name: Remove ejabberd_domain if domain changes #- name: Remove ejabberd_domain if domain changes
file: path=/etc/sysconfig/ejabberd_domain_name # file:
state=absent # path: /etc/sysconfig/ejabberd_domain_name
when: ejabberd_config.changed # state: absent
# when: ejabberd_config.changed
- name: Enable ejabberd service #- name: Enable ejabberd service
file: src=/etc/systemd/system/ejabberd-iiab.service # file:
dest=/etc/systemd/system/multi-user.target.wants/ejabberd-iiab.service # src: /etc/systemd/system/ejabberd-iiab.service
owner=root # dest: /etc/systemd/system/multi-user.target.wants/ejabberd-iiab.service
group=root # owner: root
state=link # group: root
# state: link
- name: Stop ejabberd service
service:
name: ejabberd
#name: ejabberd-iiab
state: stopped
enabled: no
when: not ejabberd_enabled
- name: Start ejabberd service - name: Start ejabberd service
service: name=ejabberd-iiab service:
state=restarted name: ejabberd
enabled=yes #name: ejabberd-iiab
when: ejabberd_config.changed and ejabberd_enabled state: restarted
enabled: yes
when: ejabberd_enabled
#when: ejabberd_config.changed and ejabberd_enabled
- name: Wait for ejabberd service start #- name: Wait for ejabberd service start
wait_for: port=5280 # wait_for:
delay=15 # port: 5280
state=started # delay: 15
timeout=300 # state: started
when: ejabberd_config.changed and ejabberd_enabled # timeout: 300
# when: ejabberd_config.changed and ejabberd_enabled
# ejabberd-iiab.init has the logic for the below, needs to be done once # ejabberd-iiab.init has the logic for the below, needs to be done once
# and only if the group does not exist based on presence of # and only if the group does not exist based on presence of

View file

@ -11,7 +11,7 @@
# Provides: ejabberd # Provides: ejabberd
# Required-Start: network # Required-Start: network
# Required-Stop: network # Required-Stop: network
# Default-Start: # Default-Start: 3 4 5
# Default-Stop: 0 1 6 # Default-Stop: 0 1 6
# Short-Description: Start and stop ejabberd # Short-Description: Start and stop ejabberd
# Description: A distributed, fault-tolerant Jabber/XMPP server # Description: A distributed, fault-tolerant Jabber/XMPP server