bundlewrap/bundles/octoprint/items.py

34 lines
931 B
Python

actions = {
'octoprint_create_virtualenv': {
'command': 'sudo -u octoprint /usr/bin/python3 -m virtualenv -p python3 /opt/octoprint/venv/',
'unless': 'test -d /opt/octoprint/venv/',
'needs': {
'directory:/opt/octoprint', # provided by bundle:users
'user:octoprint',
},
},
'octoprint_install_octoprint': {
'command': 'sudo -u octoprint /opt/octoprint/venv/bin/pip install OctoPrint',
'unless': 'test -f /opt/octoprint/venv/bin/octoprint',
'needs': {
'action:octoprint_create_virtualenv',
},
},
}
svc_systemd = {
'octoprint': {
'needs': {
'file:/etc/systemd/system/octoprint.service',
'action:octoprint_install_octoprint',
},
},
}
files = {
'/etc/systemd/system/octoprint.service': {
'triggers': {
'action:systemd-reload',
},
},
}