feat: add icecast config template + envsubst renderer
This commit is contained in:
parent
b122cdaf34
commit
7db31e326d
3 changed files with 74 additions and 0 deletions
4
config/icecast.env.example
Normal file
4
config/icecast.env.example
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
# generate with: openssl rand -hex 24
|
||||
ADMIN_PW=replace-me-admin
|
||||
SOURCE_PW=replace-me-source
|
||||
RELAY_PW=replace-me-relay
|
||||
51
config/icecast.xml.tmpl
Normal file
51
config/icecast.xml.tmpl
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
<icecast>
|
||||
<location>denpa.femboy.page</location>
|
||||
<admin>admin@denpa.femboy.page</admin>
|
||||
|
||||
<limits>
|
||||
<clients>100</clients>
|
||||
<sources>16</sources>
|
||||
<queue-size>524288</queue-size>
|
||||
<client-timeout>30</client-timeout>
|
||||
<header-timeout>15</header-timeout>
|
||||
<source-timeout>10</source-timeout>
|
||||
<burst-on-connect>1</burst-on-connect>
|
||||
<burst-size>65535</burst-size>
|
||||
</limits>
|
||||
|
||||
<authentication>
|
||||
<source-password>${SOURCE_PW}</source-password>
|
||||
<relay-password>${RELAY_PW}</relay-password>
|
||||
<admin-user>admin</admin-user>
|
||||
<admin-password>${ADMIN_PW}</admin-password>
|
||||
</authentication>
|
||||
|
||||
<hostname>denpa.femboy.page</hostname>
|
||||
|
||||
<listen-socket>
|
||||
<port>8000</port>
|
||||
<bind-address>0.0.0.0</bind-address>
|
||||
</listen-socket>
|
||||
|
||||
<fileserve>1</fileserve>
|
||||
|
||||
<paths>
|
||||
<basedir>/usr/share/icecast2</basedir>
|
||||
<logdir>/var/log/icecast2</logdir>
|
||||
<webroot>/usr/share/icecast2/web</webroot>
|
||||
<adminroot>/usr/share/icecast2/admin</adminroot>
|
||||
<pidfile>/var/run/icecast2/icecast2.pid</pidfile>
|
||||
<alias source="/" destination="/status.xsl"/>
|
||||
</paths>
|
||||
|
||||
<logging>
|
||||
<accesslog>-</accesslog>
|
||||
<errorlog>-</errorlog>
|
||||
<loglevel>3</loglevel>
|
||||
<logsize>10000</logsize>
|
||||
</logging>
|
||||
|
||||
<security>
|
||||
<chroot>0</chroot>
|
||||
</security>
|
||||
</icecast>
|
||||
19
scripts/render-config.sh
Executable file
19
scripts/render-config.sh
Executable file
|
|
@ -0,0 +1,19 @@
|
|||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
if [ ! -f config/icecast.env ]; then
|
||||
echo "error: config/icecast.env missing — copy from icecast.env.example and fill in" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
set -a
|
||||
. ./config/icecast.env
|
||||
set +a
|
||||
|
||||
envsubst '${ADMIN_PW} ${SOURCE_PW} ${RELAY_PW}' \
|
||||
< config/icecast.xml.tmpl \
|
||||
> config/icecast.xml
|
||||
|
||||
chmod 0640 config/icecast.xml
|
||||
echo "rendered config/icecast.xml"
|
||||
Loading…
Add table
Add a link
Reference in a new issue