* Move certbot to be first. * Comment out HTTPS, will use reverse proxy until it is working properly. * Enhance `update` for pacman + pkg * `update` enhancements to pkg and apt. * Add more FS types to ignore. * Add `freebsd-update` commands, including a clean of previous upgrade (VMs are small and need space!). * Add sudo. * Put the directory back for future updates. * Avoid exit code 2 from freebsd-update install. * Remove word Cleanup.
		
			
				
	
	
		
			99 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
---
 | 
						|
# Create OnlyOffice server for use with Nextcloud.
 | 
						|
 | 
						|
## Pre-Reqs ##
 | 
						|
 | 
						|
- name: Server | OnlyOffice | Pre-Requirements | Install
 | 
						|
  package: 
 | 
						|
    name: 
 | 
						|
      - gnupg
 | 
						|
      - python3-certbot-nginx
 | 
						|
    state: present
 | 
						|
 | 
						|
 | 
						|
## Install ##
 | 
						|
# https://helpcenter.onlyoffice.com/installation/docs-community-install-ubuntu.aspx
 | 
						|
 | 
						|
# Dependencies #
 | 
						|
 | 
						|
- name: Server | OnlyOffice | Postgres | Install
 | 
						|
  package: 
 | 
						|
    name: postgresql
 | 
						|
    state: present
 | 
						|
 | 
						|
- name: Server | OnlyOffice | Postgres | Configure
 | 
						|
  shell: '{{ item }}'
 | 
						|
  loop:
 | 
						|
    - psql -c "CREATE DATABASE onlyoffice;"
 | 
						|
    - psql -c "CREATE USER onlyoffice WITH password 'onlyoffice';"
 | 
						|
    - psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"
 | 
						|
  become_user: postgres
 | 
						|
  ignore_errors: yes
 | 
						|
 | 
						|
- name: Server | OnlyOffice | RabbitMQ | Install
 | 
						|
  package: 
 | 
						|
    name: rabbitmq-server
 | 
						|
    state: present
 | 
						|
 | 
						|
# Actual Program #
 | 
						|
 | 
						|
- name: Server | OnlyOffice | Docs | Add Repo
 | 
						|
  shell: '{{ item }}'
 | 
						|
  loop:
 | 
						|
    - apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
 | 
						|
    - echo "deb https://download.onlyoffice.com/repo/debian squeeze main" | tee /etc/apt/sources.list.d/onlyoffice.list
 | 
						|
    - apt update
 | 
						|
 | 
						|
- name: Server | OnlyOffice | Docs | Install
 | 
						|
  package: 
 | 
						|
    name: 
 | 
						|
      - ttf-mscorefonts-installer
 | 
						|
      - onlyoffice-documentserver
 | 
						|
    state: present
 | 
						|
 | 
						|
 | 
						|
# 2022-04-13 Looks like this went live too early, finish commenting it out.
 | 
						|
## HTTPS ##
 | 
						|
# https://helpcenter.onlyoffice.com/installation/docs-community-https-linux.aspx
 | 
						|
 | 
						|
# Certs #
 | 
						|
 | 
						|
#- name: Server | OnlyOffice | HTTPS | Check For Cert
 | 
						|
#  shell: "ls -l /etc/letsencrypt/live/{{ ansible_hostname }}.{{ domain }}/{fullchain,privkey}.pem"
 | 
						|
#  register: onlyoffice_cert
 | 
						|
#  ignore_errors: yes
 | 
						|
#
 | 
						|
#- name: Server | OnlyOffice | HTTPS | Create Cert
 | 
						|
#  shell: "certbot --nginx -d {{ ansible_hostname }}.{{ domain }}"
 | 
						|
#  when: onlyoffice_cert.failed
 | 
						|
 | 
						|
# Config #
 | 
						|
 | 
						|
#- name: Server | OnlyOffice | HTTPS | Check For Config
 | 
						|
#  shell: ls -l /etc/onlyoffice/documentserver/nginx/ds.conf
 | 
						|
#  register: onlyoffice_cert
 | 
						|
#
 | 
						|
#- name: Server | OnlyOffice | HTTPS | Create Config
 | 
						|
#  shell: cp -f /etc/onlyoffice/documentserver/nginx/ds-ssl.conf.tmpl /etc/onlyoffice/documentserver/nginx/ds.conf
 | 
						|
#  when: onlyoffice_cert.failed
 | 
						|
#
 | 
						|
#- name: Server | OnlyOffice | HTTPS | Modify Config
 | 
						|
#  lineinfile:
 | 
						|
#    path: /etc/onlyoffice/documentserver/nginx/ds.conf
 | 
						|
#    regexp: '{{ item.regexp }}'
 | 
						|
#    line: '{{ item.line }}; # MANAGED BY ANSIBLE'
 | 
						|
#    state: present
 | 
						|
#    create: no
 | 
						|
#    backup: yes
 | 
						|
#  loop:
 | 
						|
#    - { "regexp": "ssl_certificate ", "line": "  ssl_certificate /etc/letsencrypt/live/{{ ansible_hostname }}.{{ domain }}/fullchain.pem" }
 | 
						|
#    - { "regexp": "ssl_certificate_key ", "line": "  ssl_certificate_key /etc/letsencrypt/live/{{ ansible_hostname }}.{{ domain }}/privkey.pem" }
 | 
						|
 | 
						|
# Services #
 | 
						|
 | 
						|
- name: Server | OnlyOffice | HTTPS | Reload nginx
 | 
						|
  service:
 | 
						|
    name: nginx
 | 
						|
    status: reloaded
 | 
						|
  ignore_errors: yes
 |