Files
templates/net-mgmt/semaphore/Bastillefile

22 lines
1.3 KiB
Plaintext
Raw Normal View History

ARG version="2.8.77"
ARG username="semaphore"
ARG password="SEmaPh0rE"
ARG email="semaphore@example.com"
ARG dbusername="semaphore_user"
ARG dbname="semaphore_db"
ARG dbpassword="SEmaPh0rE"
ARG rootpassdb="SEmaPh0rE"
ARG ipadd=$(ifconfig | grep 'inet' | awk -F ' ' '{ print $2 }')
PKG semaphore mysql80-server
CP usr /
CMD curl -L -O -C - https://github.com/ansible-semaphore/semaphore/releases/download/v"${version}"/semaphore_"${version}"_freebsd_amd64.tar.gz
CMD tar -zxvf semaphore_"${version}"_freebsd_amd64.tar.gz -C /usr/local/bin/ semaphore
CMD sed -i '' 's/"user": "",/"user": "${dbusername}",/g' /usr/local/etc/semaphore/config.json
CMD sed -i '' 's/"pass": "",/"pass": "${dbpassword}",/g' /usr/local/etc/semaphore/config.json
CMD sed -i '' 's/"name": "",/"name": "${dbname}",/g' /usr/local/etc/semaphore/config.json
SYSRC mysql_enable=YES
SERVICE mysql-server start
CMD mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '"${rootpassdb}"';CREATE DATABASE "${dbname}";CREATE USER '"${dbusername}"'@'"${ipadd}"' IDENTIFIED WITH mysql_native_password BY '"${dbpassword}"';GRANT ALL ON "${dbname}".* TO '"${dbusername}"'@'"${ipadd}"';FLUSH PRIVILEGES;";
CMD semaphore user add --admin --login "${username}" --name "${username}" --email "${email}" --password ${password}
CMD nohup semaphore server --config /usr/local/etc/semaphore/config.json &