add install/clean/uninstall routine
This commit is contained in:
parent
1a4b3a5302
commit
afd564f637
46
Makefile
46
Makefile
@ -1,17 +1,55 @@
|
|||||||
SHELL := /bin/bash
|
SHELL := /bin/bash
|
||||||
current_dir = $(shell pwd)
|
CURRENT_DIR = $(shell pwd)
|
||||||
|
|
||||||
init:
|
init:
|
||||||
virtualenv -p python3 venv
|
virtualenv -p python3 venv
|
||||||
source ./venv/bin/activate && pip install -r requirements.txt
|
source ./venv/bin/activate && pip install -r requirements.txt
|
||||||
|
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "-------------------------------------------------------------------"
|
@echo "-------------------------------------------------------------------"
|
||||||
@echo "external packages for ffplayout installed in \"$(current_dir)/venv\""
|
@echo "external packages for ffplayout installed in \"$(CURRENT_DIR)/venv\""
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "run: \"$(current_dir)/venv/bin/python\" \"$(current_dir)/ffplayout.py\""
|
@echo "run:"
|
||||||
|
@echo "\"$(CURRENT_DIR)/venv/bin/python\" \"$(CURRENT_DIR)/ffplayout.py\""
|
||||||
@echo ""
|
@echo ""
|
||||||
@echo "or:"
|
@echo "or:"
|
||||||
@echo "source ./venv/bin/activate"
|
@echo "source ./venv/bin/activate"
|
||||||
@echo "./ffplayout.py"
|
@echo "./ffplayout.py"
|
||||||
@echo ""
|
@echo ""
|
||||||
|
@echo "-------------------------------------------------------------------"
|
||||||
|
@echo "run \"sudo make install USER=www-data\" if you would like to run ffplayout on server like environments"
|
||||||
|
@echo "instead of www-data you can use any user which need write access to the config file"
|
||||||
|
@echo "this user will also be placed in systemd service"
|
||||||
|
@echo "systemd is required!"
|
||||||
|
|
||||||
|
install:
|
||||||
|
if [ ! "$(CURRENT_DIR)" == "/opt/ffplayout-engine" ]; then \
|
||||||
|
install -d -o $(USER) -g $(USER) /opt/ffplayout-engine/; \
|
||||||
|
cp -r docs ffplayout venv "/opt/ffplayout-engine/"; \
|
||||||
|
chown $(USER):$(USER) -R "/opt/ffplayout-engine/"; \
|
||||||
|
install -m 644 -o $(USER) -g $(USER) ffplayout.py "/opt/ffplayout-engine/"; \
|
||||||
|
fi
|
||||||
|
install -d /etc/ffplayout/
|
||||||
|
install -d -o $(USER) -g $(USER) /var/log/ffplayout/
|
||||||
|
if [ ! -f "/etc/ffplayout/ffplayout.yml" ]; then \
|
||||||
|
install -m 644 -o $(USER) -g $(USER) ffplayout.yml /etc/ffplayout/; \
|
||||||
|
fi
|
||||||
|
if [ -d "/etc/systemd/system" ] && [ ! -f "/etc/systemd/system/ffplayout.service" ]; then \
|
||||||
|
install -m 644 docs/ffplayout.service /etc/systemd/system/; \
|
||||||
|
sed -i "s/root/$(USER)/g" "/etc/systemd/system/ffplayout.service"; \
|
||||||
|
fi
|
||||||
|
@echo ""
|
||||||
|
@echo "-------------------------------------------------------------------"
|
||||||
|
@echo "installation done..."
|
||||||
|
@echo ""
|
||||||
|
@echo "if you want ffplayout to autostart, run: \"systemctl enable ffplayout\""
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf venv
|
||||||
|
|
||||||
|
uninstall:
|
||||||
|
rm -rf "/etc/ffplayout"
|
||||||
|
rm -rf "/var/log/ffplayout"
|
||||||
|
rm -rf "/etc/systemd/system/ffplayout.service"
|
||||||
|
if [ ! "$(CURRENT_DIR)" == "/opt/ffplayout-engine" ]; then \
|
||||||
|
rm -rf "/opt/ffplayout-engine"; \
|
||||||
|
fi
|
||||||
|
@ -4,12 +4,11 @@ After=network.target
|
|||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/opt/ffplayout-engine/venv/bin/python /opt/ffplayout-engine/ffplayout.py
|
ExecStart=/opt/ffplayout-engine/venv/bin/python /opt/ffplayout-engine/ffplayout.py
|
||||||
|
|
||||||
ExecReload=/bin/kill -1 $MAINPID
|
ExecReload=/bin/kill -1 $MAINPID
|
||||||
Restart=always
|
Restart=always
|
||||||
RestartSec=1
|
RestartSec=1
|
||||||
User=user
|
User=root
|
||||||
Group=user
|
Group=root
|
||||||
|
|
||||||
[Install]
|
[Install]
|
||||||
WantedBy=multi-user.target
|
WantedBy=multi-user.target
|
||||||
|
Loading…
x
Reference in New Issue
Block a user