mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2026-04-18 16:32:17 +00:00
Semaphore: Move from BoltDB to SQLite (#12624)
* Fix * start * Apply suggestion from @tremor021
This commit is contained in:
@@ -28,6 +28,34 @@ function update_script() {
|
|||||||
msg_error "No ${APP} Installation Found!"
|
msg_error "No ${APP} Installation Found!"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ -f /opt/semaphore/semaphore_db.bolt ]]; then
|
||||||
|
msg_warn "WARNING: Due to bugs with BoltDB database, update script will move your application"
|
||||||
|
msg_warn "to use SQLite database instead. Unfortunately, this will reset your application and make it a fresh"
|
||||||
|
msg_warn "installation. All your data will be lost!"
|
||||||
|
echo ""
|
||||||
|
read -r -p "${TAB3}Do you want to continue? (y/N): " CONFIRM
|
||||||
|
if [[ ! "$CONFIRM" =~ ^[Yy]$ ]]; then
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
msg_info "Moving from BoltDB to SQLite"
|
||||||
|
systemctl stop semaphore
|
||||||
|
rm -rf /opt/semaphore/semaphore_db.bolt
|
||||||
|
sed -i \
|
||||||
|
-e 's|"bolt": {|"sqlite": {|' \
|
||||||
|
-e 's|/semaphore_db.bolt"|/database.sqlite"|' \
|
||||||
|
-e '/semaphore_db.bolt/d' \
|
||||||
|
-e '/"dialect"/d' \
|
||||||
|
-e '/^ },$/a\ "dialect": "sqlite",' \
|
||||||
|
/opt/semaphore/config.json
|
||||||
|
SEM_PW=$(cat ~/semaphore.creds)
|
||||||
|
systemctl start semaphore
|
||||||
|
$STD semaphore user add --admin --login admin --email admin@helper-scripts.com --name Administrator --password "${SEM_PW}" --config /opt/semaphore/config.json
|
||||||
|
|
||||||
|
msg_ok "Moved from BoltDB to SQLite"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
if check_for_gh_release "semaphore" "semaphoreui/semaphore"; then
|
if check_for_gh_release "semaphore" "semaphoreui/semaphore"; then
|
||||||
msg_info "Stopping Service"
|
msg_info "Stopping Service"
|
||||||
systemctl stop semaphore
|
systemctl stop semaphore
|
||||||
|
|||||||
@@ -33,7 +33,7 @@
|
|||||||
},
|
},
|
||||||
"notes": [
|
"notes": [
|
||||||
{
|
{
|
||||||
"text": "This instance uses BoltDB",
|
"text": "This instance uses SQLite",
|
||||||
"type": "info"
|
"type": "info"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -30,11 +30,12 @@ SEM_KEY=$(openssl rand -base64 32)
|
|||||||
SEM_PW=$(openssl rand -base64 12)
|
SEM_PW=$(openssl rand -base64 12)
|
||||||
cat <<EOF >/opt/semaphore/config.json
|
cat <<EOF >/opt/semaphore/config.json
|
||||||
{
|
{
|
||||||
"bolt": {
|
"sqlite": {
|
||||||
"host": "/opt/semaphore/semaphore_db.bolt"
|
"host": "/opt/semaphore/database.sqlite"
|
||||||
},
|
},
|
||||||
|
"dialect": "sqlite",
|
||||||
"tmp_path": "/opt/semaphore/tmp",
|
"tmp_path": "/opt/semaphore/tmp",
|
||||||
"cookie_hash": "${SEM_HASH}",
|
"cookie_hash": "${SEM_HASH}",
|
||||||
"cookie_encryption": "${SEM_ENCRYPTION}",
|
"cookie_encryption": "${SEM_ENCRYPTION}",
|
||||||
"access_key_encryption": "${SEM_KEY}"
|
"access_key_encryption": "${SEM_KEY}"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user