1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-15 04:32:11 +00:00

Merge pull request #3384 from holta/azuracast-revs

AzuraCast 'stable' instead of 'latest' + Simplify install + Document './runrole --reinstall azuracast' manual workaround
This commit is contained in:
A Holt 2022-09-29 11:23:56 -04:00 committed by GitHub
commit 4b2fe1ec5a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 60 additions and 30 deletions

View file

@ -22,6 +22,8 @@ As of 2022-08-31, AzuraCast should run on Ubuntu 22.04 and **64-bit** Raspberry
Other Linux distributions may also work, at your own risk, especially if Docker runs smoothly. Other Linux distributions may also work, at your own risk, especially if Docker runs smoothly.
NOTE: AzuraCast was designed to be installed *just once* on a fresh OS. So ``./runrole --reinstall azuracast`` is not supported in general. However, if you accidentally damage your AzuraCast software, IIAB has posted `technical tips <./tasks/install.yml>`_ *(use at your own risk!)* in case of emergency.
Using It Using It
-------- --------
@ -37,5 +39,9 @@ AzuraCast Docs
- https://docs.azuracast.com - https://docs.azuracast.com
- https://docs.azuracast.com/en/getting-started/installation/post-installation-steps - https://docs.azuracast.com/en/getting-started/installation/post-installation-steps
- https://docs.azuracast.com/en/getting-started/updates - https://docs.azuracast.com/en/getting-started/settings
- https://docs.azuracast.com/en/getting-started/updates (can *DAMAGE* AzuraCast as of 2022-09-28)
- https://docs.azuracast.com/en/user-guide/streaming-software - https://docs.azuracast.com/en/user-guide/streaming-software
- https://docs.azuracast.com/en/user-guide/troubleshooting
- https://docs.azuracast.com/en/user-guide/logs
- https://docs.azuracast.com/en/administration/docker

View file

@ -1,3 +1,30 @@
# 2022-09-29: './runrole --reinstall azuracast' is NOT supported!
#
# 1. But if you must, first completely uninstall Docker + WIPE AzuraCast data:
#
# apt purge docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-scan-plugin
# rm -rf /library/docker /var/lib/docker /var/lib/containerd
#
# Per https://docs.docker.com/engine/install/ubuntu/#uninstall-docker-engine
#
# 2. REBOOT to avoid later problems with 'systemctl status docker' -- if you
# don't reboot, Ansible will fail below when 'docker.sh install' fails to
# start docker.service -- likewise if you run './docker.sh install-docker'
# manually in /opt/azuracast. Either way, 'systemctl restart docker' won't
# work for ~2 minutes. (Rebooting avoids all these hassles!)
#
# 3. Just FYI the Docker install process will rebuild its 11 core directories
# in /var/lib/docker -> /library/docker: (as 'docker.sh install' begins)
#
# buildkit containers image network overlay2 plugins runtimes swarm tmp trust volumes
#
# 4. Just FYI both MySQL passwords (MYSQL_PASSWORD & MYSQL_ROOT_PASSWORD) will
# be WIPED from /opt/azuracast/azuracast.env (and new passwords
# auto-generated below, for use inside AzuraCast's Docker container).
#
# 5. Run './runrole --reinstall azuracast' in /opt/iiab/iiab
- name: AzuraCast - Make config directory {{ azuracast_host_dir }} - name: AzuraCast - Make config directory {{ azuracast_host_dir }}
file: file:
path: "{{ azuracast_host_dir }}" path: "{{ azuracast_host_dir }}"
@ -7,17 +34,11 @@
template: template:
src: prod.env.j2 src: prod.env.j2
dest: "{{ azuracast_host_dir }}/.env" dest: "{{ azuracast_host_dir }}/.env"
#owner: root
#group: root
mode: 0644
#- name: AzuraCast - Install {{ azuracast_host_dir }}/docker-compose.override.yml from template - name: AzuraCast - Install {{ azuracast_host_dir }}/azuracast.env for altered ports
# template: template:
# src: docker-compose.override.yml.j2 src: azuracast.env.j2
# dest: "{{ azuracast_host_dir }}/docker-compose.override.yml" dest: "{{ azuracast_host_dir }}/azuracast.env"
#owner: root
#group: root
# mode: 0644
- name: AzuraCast - Download {{ docker_sh_url }} to {{ azuracast_host_dir }} - name: AzuraCast - Download {{ docker_sh_url }} to {{ azuracast_host_dir }}
get_url: get_url:
@ -26,13 +47,6 @@
mode: 0755 mode: 0755
timeout: "{{ download_timeout }}" timeout: "{{ download_timeout }}"
- name: AzuraCast - Download AzuraCast's docker-compose.yml sample from GitHub to {{ azuracast_host_dir }}
get_url:
url: "{{ docker_compose_url }}"
dest: "{{ azuracast_host_dir }}/docker-compose.yml"
mode: 0755
timeout: "{{ download_timeout }}"
#- name: AzuraCast - Make changes to docker.sh script so it runs headless #- name: AzuraCast - Make changes to docker.sh script so it runs headless
# lineinfile: # lineinfile:
# path: "{{ azuracast_host_dir }}/docker.sh" # path: "{{ azuracast_host_dir }}/docker.sh"
@ -40,20 +54,26 @@
# line: "\\1reply='Y'" # line: "\\1reply='Y'"
# backrefs: yes # backrefs: yes
# 2022-09-28: https://docs.azuracast.com/en/getting-started/installation/docker
# (& testing) confirm this is done automatically by 'docker.sh install' below.
#
# - name: AzuraCast - Download AzuraCast's docker-compose.yml sample from GitHub to {{ azuracast_host_dir }}
# get_url:
# url: "{{ docker_compose_url }}"
# dest: "{{ azuracast_host_dir }}/docker-compose.yml"
# timeout: "{{ download_timeout }}"
#- name: AzuraCast - Install {{ azuracast_host_dir }}/docker-compose.override.yml from template
# template:
# src: docker-compose.override.yml.j2
# dest: "{{ azuracast_host_dir }}/docker-compose.override.yml"
#- name: Change default port number range 8xxx:8xxx to {{ azuracast_port_range_prefix }}xxx:{{ azuracast_port_range_prefix }}xxx icecast-stations in docker-compose.yml #- name: Change default port number range 8xxx:8xxx to {{ azuracast_port_range_prefix }}xxx:{{ azuracast_port_range_prefix }}xxx icecast-stations in docker-compose.yml
# replace: # replace:
# path: "{{ azuracast_host_dir }}/docker-compose.yml" # path: "{{ azuracast_host_dir }}/docker-compose.yml"
# regexp: "^( *- \\')8([0-9]{3})\\:8([0-9]{3}\\'.*)$" # regexp: "^( *- \\')8([0-9]{3})\\:8([0-9]{3}\\'.*)$"
# replace: "\\g<1>{{ azuracast_port_range_prefix }}\\g<2>:{{ azuracast_port_range_prefix }}\\g<3>" # replace: "\\g<1>{{ azuracast_port_range_prefix }}\\g<2>:{{ azuracast_port_range_prefix }}\\g<3>"
- name: AzuraCast - Install {{ azuracast_host_dir }}/azuracast.env for altered ports
template:
src: azuracast.env
dest: "{{ azuracast_host_dir }}/"
#owner: root
#group: root
mode: 0644
- name: AzuraCast - Make directory {{ docker_container_dir }} - name: AzuraCast - Make directory {{ docker_container_dir }}
file: file:
path: "{{ docker_container_dir }}" path: "{{ docker_container_dir }}"
@ -65,10 +85,14 @@
path: /var/lib/docker path: /var/lib/docker
state: link state: link
- name: AzuraCast - Setup for stable channel install # 2022-09-28: "yes 'Y'" toggled whatever it found in /opt/azuracast/.env (e.g.
shell: "yes 'Y' | /bin/bash docker.sh setup-release" # AZURACAST_VERSION=stable from templates/prod.env.j2) to the opposite (e.g.
args: # AZURACAST_VERSION=latest). Let's not modify /opt/azuracast/.env unless nec!
chdir: "{{ azuracast_host_dir }}" #
# - name: AzuraCast - Setup for stable channel install
# shell: "yes 'Y' | /bin/bash docker.sh setup-release"
# args:
# chdir: "{{ azuracast_host_dir }}"
- name: AzuraCast - Run the installer - name: AzuraCast - Run the installer
shell: "yes '' | /bin/bash docker.sh install" shell: "yes '' | /bin/bash docker.sh install"