2021-07-05 06:50:25 +00:00
|
|
|
#!/bin/bash
|
|
|
|
# Syncs everything from staging to production
|
2021-07-06 17:08:30 +00:00
|
|
|
|
|
|
|
# Source common variables
|
2021-07-06 20:33:22 +00:00
|
|
|
# shellcheck disable=SC2046,1091,1090
|
2021-07-06 21:34:26 +00:00
|
|
|
source "$(dirname "$0")/common"
|
2021-07-06 17:08:30 +00:00
|
|
|
|
2021-07-08 02:54:12 +00:00
|
|
|
REV=${REVISION}${APPEND_TO_DIR}
|
2021-07-06 17:08:30 +00:00
|
|
|
|
2021-07-06 20:16:01 +00:00
|
|
|
cd "${STAGING_ROOT}/${CATEGORY_STUB}/${REV}" || { echo "Failed to change directory"; ret_val=1; exit 1; }
|
2021-07-05 06:50:25 +00:00
|
|
|
ret_val=$?
|
2021-07-06 17:08:30 +00:00
|
|
|
|
2021-07-05 06:50:25 +00:00
|
|
|
if [ $ret_val -eq "0" ]; then
|
2021-07-06 17:08:30 +00:00
|
|
|
TARGET="${PRODUCTION_ROOT}/${CATEGORY_STUB}/${REV:0:3}"
|
|
|
|
mkdir -p "${TARGET}"
|
2021-07-06 20:33:22 +00:00
|
|
|
# disabling because none of our files should be starting with dashes. If they
|
|
|
|
# are something is *seriously* wrong here.
|
|
|
|
# shellcheck disable=SC2035
|
2022-05-21 07:10:37 +00:00
|
|
|
sudo -l && find ./ -mindepth 1 -maxdepth 1 -type d -exec find {}/ -mindepth 1 -maxdepth 1 -type d \;|sed 's/^..//g' | parallel --will-cite -j 18 sudo rsync -av --chown=10004:10005 --progress --relative --human-readable \
|
|
|
|
{} "${TARGET}"
|
|
|
|
# shellcheck disable=SC2035
|
|
|
|
sudo -l && find ** -maxdepth 0 -type l | parallel --will-cite -j 18 sudo rsync -av --chown=10004:10005 --progress --relative --human-readable \
|
2021-07-06 20:16:01 +00:00
|
|
|
{} "${TARGET}"
|
2021-07-09 18:30:49 +00:00
|
|
|
|
|
|
|
# Full file list update
|
|
|
|
cd "${PRODUCTION_ROOT}/${CATEGORY_STUB}/" || { echo "Failed to change directory"; exit 1; }
|
2021-07-21 19:44:31 +00:00
|
|
|
# Hardlink everything except xml files
|
2021-08-03 18:46:35 +00:00
|
|
|
hardlink -x '.*\.xml.*' "${REVISION}"
|
2021-07-09 18:30:49 +00:00
|
|
|
find . > fullfilelist
|
2021-07-11 22:50:45 +00:00
|
|
|
if [[ -f /usr/local/bin/create-filelist ]]; then
|
|
|
|
# We're already here, but Justin Case wanted this
|
|
|
|
cd "${PRODUCTION_ROOT}/${CATEGORY_STUB}/" || { echo "Failed to change directory"; exit 1; }
|
|
|
|
/bin/cp fullfiletimelist-rocky fullfiletimelist-rocky-old
|
|
|
|
/usr/local/bin/create-filelist > fullfiletimelist-rocky
|
2021-11-12 05:00:09 +00:00
|
|
|
cp fullfiletimelist-rocky fullfiletimelist
|
2021-07-11 22:50:45 +00:00
|
|
|
fi
|
2021-11-12 05:00:09 +00:00
|
|
|
chown 10004:10005 fullfilelist fullfiletimelist-rocky fullfiletimelist
|
2021-07-05 06:50:25 +00:00
|
|
|
fi
|
2021-07-09 18:30:49 +00:00
|
|
|
|