mirror of
https://gh.wpcy.net/https://github.com/CaptainCore/captaincore.git
synced 2026-04-22 20:45:45 +08:00
54 lines
No EOL
1.5 KiB
Bash
54 lines
No EOL
1.5 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
#
|
|
# Generates list of snapshots for a site from a backup repo
|
|
#
|
|
# `captaincore quicksave list-generate <site>`
|
|
#
|
|
|
|
if [ ${#@} -eq 0 ]; then
|
|
echo -e "${COLOR_RED}Error:${COLOR_NORMAL} Requires a <site>"
|
|
exit
|
|
fi
|
|
|
|
while read config; do
|
|
if [[ "$config" == "Error:"* ]]; then
|
|
continue
|
|
fi
|
|
declare "$config"
|
|
done <<< "$(php ${CAPTAINCORE_PATH}/lib/local-scripts/configs.php fetch)"
|
|
|
|
site=$1
|
|
|
|
run_command() {
|
|
|
|
# Extract environment
|
|
if [[ "$site" == *"-staging"* ]]; then
|
|
environment=staging
|
|
fi
|
|
|
|
if [[ "$site" == *"-production"* ]]; then
|
|
environment=production
|
|
fi
|
|
|
|
if [[ "$site" != *"-"* ]]; then
|
|
environment=production
|
|
fi
|
|
|
|
# Load site configs
|
|
while read site_configs; do if [[ $site_configs == "" ]]; then continue; fi; declare "$site_configs"; done <<< "$(captaincore site get $site --bash --captain-id=$CAPTAIN_ID)"
|
|
|
|
mkdir -p $path/${site}_${site_id}/${environment}/quicksaves/
|
|
quicksave_list="$path/${site}_${site_id}/${environment}/quicksaves/list.json"
|
|
if [ ! -d "$path/${site}_${site_id}/${environment}/quicksave/.git" ]; then
|
|
echo "Skipping generationing of ${site}_${site_id}/${environment}/quicksaves/list.json as no quicksaves found."
|
|
exit
|
|
fi
|
|
|
|
cd ${CAPTAINCORE_PATH}/data
|
|
echo "Generating ${site}_${site_id}/${environment}/quicksaves/list.json"
|
|
wp eval-file ${CAPTAINCORE_PATH}/lib/local-scripts/quicksaves-list.php site=$site site_id=$site_id environment=$environment > "$quicksave_list"
|
|
|
|
}
|
|
|
|
run_command |