Outline what the first version of the upgrade script should do
This commit is contained in:
38
upgrade.sh
Normal file
38
upgrade.sh
Normal file
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
# shellcheck disable=SC2002
|
||||
|
||||
set -eu
|
||||
set -o pipefail
|
||||
IFS=$'\n\t'
|
||||
|
||||
# print useful message on failure
|
||||
trap 's=$?; echo >&2 "$0: Error on line "$LINENO": $BASH_COMMAND"; exit $s' ERR
|
||||
|
||||
# shellcheck disable=SC2034
|
||||
DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
|
||||
cd "$DIR"
|
||||
|
||||
# - Check if the file .diachron-version exists; save its value in a variable
|
||||
# named old_diachron_version
|
||||
|
||||
# - Check if the repository is dirty; if there are any files that git knows
|
||||
# about that have been changed but not committed, abort with a message
|
||||
|
||||
# - Get the current commit and store it in a variable
|
||||
|
||||
# - Perform a two checkouts of
|
||||
# https://gitea.philologue.net/philologue/diachron, each in its own
|
||||
# temporary directory. We'll call one "old" and one "new"
|
||||
|
||||
# - In old, check out $old_diachron_version; in our working application
|
||||
# directory, delete all of the files in file-list using git rm
|
||||
|
||||
# - In new, check out whatever was passed as argv[1]
|
||||
|
||||
# - Copy all of the files in file-list to the working application and stage
|
||||
# them with git add
|
||||
|
||||
# - Commit
|
||||
|
||||
# - Should we run sync.sh or should we advise the user to run sync.sh?
|
||||
Reference in New Issue
Block a user