Autocommit from 2025-11-30 13:37:30
Klipper version: v0.13.0-411-g938300f3 Moonraker version: v0.9.3-128-g960e933 Mainsail version: v2.15.0
This commit is contained in:
101
autocommit.sh
Executable file
101
autocommit.sh
Executable file
@@ -0,0 +1,101 @@
|
||||
#!/bin/bash
|
||||
|
||||
#######################################################################
|
||||
## NOTE: This script originates from here but I tweaked the pull ##
|
||||
## command, changed default location for backup, and added a comment ##
|
||||
## for reference later. ##
|
||||
#######################################################################
|
||||
|
||||
#####################################################################
|
||||
### Please set the paths accordingly. In case you don't have all ###
|
||||
### the listed folders, just keep that line commented out. ###
|
||||
#####################################################################
|
||||
### Path to your config folder you want to backup
|
||||
config_folder=~/printer_data/config
|
||||
|
||||
# NOTE: The above should work for just about everyone, but a somewhat
|
||||
# recent update to moonraker changed paths, etc. You can run the
|
||||
# provided moonraker script 'data-path-fix.sh' to fix/update
|
||||
# older installs
|
||||
|
||||
### Path to your Klipper folder, by default that is '~/klipper'
|
||||
klipper_folder=~/klipper
|
||||
|
||||
### Path to your Moonraker folder, by default that is '~/moonraker'
|
||||
moonraker_folder=~/moonraker
|
||||
|
||||
### Path to your Mainsail folder, by default that is '~/mainsail'
|
||||
mainsail_folder=~/mainsail
|
||||
|
||||
### Path to your Fluidd folder, by default that is '~/fluidd'
|
||||
#fluidd_folder=~/fluidd
|
||||
|
||||
### The branch of the repository that you want to save your config
|
||||
### By default that is 'main'
|
||||
branch=main
|
||||
|
||||
db_file=~/printer_data/database/moonraker-sql.db
|
||||
|
||||
#####################################################################
|
||||
#####################################################################
|
||||
|
||||
|
||||
|
||||
#####################################################################
|
||||
################ !!! DO NOT EDIT BELOW THIS LINE !!! ################
|
||||
#####################################################################
|
||||
grab_version(){
|
||||
if [ ! -z "$klipper_folder" ]; then
|
||||
klipper_commit=$(git -C $klipper_folder describe --always --tags --long | awk '{gsub(/^ +| +$/,"")} {print $0}')
|
||||
m1="Klipper version: $klipper_commit"
|
||||
fi
|
||||
if [ ! -z "$moonraker_folder" ]; then
|
||||
moonraker_commit=$(git -C $moonraker_folder describe --always --tags --long | awk '{gsub(/^ +| +$/,"")} {print $0}')
|
||||
m2="Moonraker version: $moonraker_commit"
|
||||
fi
|
||||
if [ ! -z "$mainsail_folder" ]; then
|
||||
mainsail_ver=$(head -n 1 $mainsail_folder/.version)
|
||||
m3="Mainsail version: $mainsail_ver"
|
||||
fi
|
||||
if [ ! -z "$fluidd_folder" ]; then
|
||||
fluidd_ver=$(head -n 1 $fluidd_folder/.version)
|
||||
m4="Fluidd version: $fluidd_ver"
|
||||
fi
|
||||
}
|
||||
|
||||
# Here we copy the sqlite database for backup
|
||||
# To RESTORE the database, stop moonraker, then use the following command:
|
||||
# cp ~/printer_data/config/moonraker-sql.db ~/printer_data/database/
|
||||
# Finally, restart moonraker
|
||||
|
||||
if [ -f $db_file ]; then
|
||||
echo "sqlite based history database found! Copying..."
|
||||
cp ~/printer_data/database/moonraker-sql.db ~/printer_data/config/
|
||||
else
|
||||
echo "sqlite based history database not found"
|
||||
fi
|
||||
|
||||
# To fully automate this and not have to deal with auth issues, generate a legacy token on Github
|
||||
# then update the command below to use the token. Run the command in your base directory and it will
|
||||
# handle auth. This should just be executed in your shell and not committed to any files or
|
||||
# Github will revoke the token. =)
|
||||
# git remote set-url origin https://XXXXXXXXXXX@github.com/EricZimmerman/Voron24Configs.git/
|
||||
# Note that that format is for changing things after the repository is in use, vs initially
|
||||
|
||||
push_config(){
|
||||
cd $config_folder
|
||||
git pull origin $branch --no-rebase
|
||||
git add .
|
||||
current_date=$(date +"%Y-%m-%d %T")
|
||||
git commit -m "Autocommit from $current_date" -m "$m1" -m "$m2" -m "$m3" -m "$m4"
|
||||
git push origin $branch
|
||||
}
|
||||
|
||||
cleanup_database(){
|
||||
cd $config_folder
|
||||
rm moonraker-sql.db
|
||||
}
|
||||
|
||||
grab_version
|
||||
push_config
|
||||
cleanup_database
|
||||
Reference in New Issue
Block a user