Enhance entrypoint script with backup service functions and debug logging
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing

This commit is contained in:
gyurix
2025-07-22 11:58:15 +02:00
parent adb579572c
commit 77079a019c

View File

@@ -102,10 +102,14 @@ fi
backup_query_state() { backup_query_state() {
echo "backup_query_state"
} }
backup_set_service() { backup_set_service() {
echo "backup_set_service"
} }
backup_set_client() { backup_set_client() {
@@ -149,65 +153,70 @@ backup_set_client() {
ENVS='"ENVS": [{"SSH_USER":"'$SSH_USER'"},{"SSH_PORT":"'$SSH_PORT'"},{"SSH_PASSWORD":"'$SSH_PASSWORD'"},{"VPN_CLIENT_KEY":"'$VPN_KEY'"}],' ENVS='"ENVS": [{"SSH_USER":"'$SSH_USER'"},{"SSH_PORT":"'$SSH_PORT'"},{"SSH_PASSWORD":"'$SSH_PASSWORD'"},{"VPN_CLIENT_KEY":"'$VPN_KEY'"}],'
echo '{ echo '{
"main": { "main": {
"SERVICE_NAME": "'$NAME'" "SERVICE_NAME": "'$NAME'"
}, },
"containers": [ "containers": [
{
"IMAGE": "alpine:latest",
"NAME": "'$NAME'-init",
"UPDATE": "true",
"MEMORY": "64M",
"EXTRA": "--rm",
"VOLUMES":[
{ {
"IMAGE": "alpine:latest", "SOURCE": "USER_DATA",
"NAME": "'$NAME'-init", "DEST": "/etc/user/data/",
"UPDATE": "true", "TYPE": "rw"
"MEMORY": "64M",
"EXTRA": "--rm",
"VOLUMES":[
{
"SOURCE": "USER_DATA",
"DEST": "/etc/user/data/",
"TYPE": "rw"
}
],
"ENTRYPOINT": "sh -c",
"CMD": "mkdir -p /etc/user/data/backup/clients/'$NAME'/backup && /etc/user/data/backup/clients/'$NAME'/ssh",
"POST_START": []
},
{
"IMAGE": "safebox/backup-client:latest",
"NAME": "'$NAME'",
"UPDATE": "true",
"MEMORY": "64M",
"NETWORK": "'$NETWORK'",
'$ADDITIONAL',
'$ENVS'
'$PORT'
"VOLUMES":[
{
"SOURCE": "/etc/user/data/backup/clients/'$NAME'/backup",
"DEST": "/backup",
"TYPE": "rw"
},
{
"SOURCE": "/etc/user/data/backup/clients/'$NAME'/ssh",
"DEST": "/home/'$SSH_USER'/",
"TYPE": "rw"
}
],
"POST_START": []
} }
] ],
}' | jq -r . >/etc/user/config/services/service-backup-client-$NAME.json "ENTRYPOINT": "sh -c",
"CMD": "mkdir -p /etc/user/data/backup/clients/'$NAME'/backup && /etc/user/data/backup/clients/'$NAME'/ssh",
"POST_START": []
},
{
"IMAGE": "safebox/backup-client:latest",
"NAME": "'$NAME'",
"UPDATE": "true",
"MEMORY": "64M",
"NETWORK": "'$NETWORK'",
'$ADDITIONAL',
'$ENVS'
'$PORT'
"VOLUMES":[
{
"SOURCE": "/etc/user/data/backup/clients/'$NAME'/backup",
"DEST": "/backup",
"TYPE": "rw"
},
{
"SOURCE": "/etc/user/data/backup/clients/'$NAME'/ssh",
"DEST": "/home/'$SSH_USER'/",
"TYPE": "rw"
}
],
"POST_START": []
}
]
}' | jq -r . >/etc/user/config/services/service-backup-client-$NAME.json
debug "service-backup-client-$NAME.json stop force dns-remove" debug "service-backup-client-$NAME.json stop force dns-remove"
$service_exec service-backup-client-$NAME.json start & $service_exec service-backup-client-$NAME.json start &
fi fi
} }
backup_challenge_clients() { backup_challenge_clients() {
echo "backup_challenge_clients"
} }
restore_from_backup() { restore_from_backup() {
echo "restore_from_backup"
} }
create_htpasswd_file() { create_htpasswd_file() {