starting essay...finished outline
This commit is contained in:
parent
5648c2b6a2
commit
8f9d65a683
26 changed files with 490 additions and 1 deletions
58
scripts/rotate-fieldcraft.sh
Executable file
58
scripts/rotate-fieldcraft.sh
Executable file
|
@ -0,0 +1,58 @@
|
|||
#!/bin/bash
|
||||
|
||||
# --- CONFIG ---
|
||||
WORKDIR=$(pwd)
|
||||
ARCHIVE_DIR="$WORKDIR/.archive"
|
||||
TODAY=$(date +"%Y-%m-%d")
|
||||
ARCHIVE_SCRIPT="$WORKDIR/scripts/archive-fieldcraft.sh"
|
||||
INIT_SCRIPT="$WORKDIR/scripts/init-fieldcraft.sh"
|
||||
|
||||
# --- FLAGS ---
|
||||
FORCE=false
|
||||
if [[ "$1" == "--force" ]]; then
|
||||
FORCE=true
|
||||
echo "🚨 Force mode activated: Skipping archive check."
|
||||
fi
|
||||
|
||||
# --- STEP 1: Check or Force Archive ---
|
||||
if $FORCE; then
|
||||
echo "🌀 Running archive-fieldcraft.sh..."
|
||||
bash "$ARCHIVE_SCRIPT"
|
||||
else
|
||||
echo "🔍 Checking for existing archive for today ($TODAY)..."
|
||||
ARCHIVE_MATCH=$(find "$ARCHIVE_DIR" -maxdepth 1 -type d -name "$TODAY*" | head -n 1)
|
||||
|
||||
if [[ -d "$ARCHIVE_MATCH" && -f "$ARCHIVE_MATCH"/*.zip ]]; then
|
||||
echo "✅ Archive already exists at: $ARCHIVE_MATCH"
|
||||
else
|
||||
echo "🌀 No archive found for today. Running archive-fieldcraft.sh..."
|
||||
bash "$ARCHIVE_SCRIPT"
|
||||
|
||||
# Confirm again
|
||||
ARCHIVE_MATCH=$(find "$ARCHIVE_DIR" -maxdepth 1 -type d -name "$TODAY*" | head -n 1)
|
||||
if [[ -d "$ARCHIVE_MATCH" && -f "$ARCHIVE_MATCH"/*.zip ]]; then
|
||||
echo "✅ Archive confirmed at: $ARCHIVE_MATCH"
|
||||
else
|
||||
echo "❌ Archive failed. Aborting rotation."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# --- STEP 2: Delete all except .git, .archive, and scripts ---
|
||||
echo "⚠️ Deleting fieldcraft working structure (except archive/git/scripts)..."
|
||||
|
||||
for d in "$WORKDIR"/*; do
|
||||
base=$(basename "$d")
|
||||
if [[ "$base" =~ ^(scripts|.git|.archive)$ ]]; then
|
||||
continue
|
||||
fi
|
||||
echo "🧹 Removing $base..."
|
||||
rm -rf "$d"
|
||||
done
|
||||
|
||||
# --- STEP 3: Re-initialize the structure ---
|
||||
echo "🔁 Running init-fieldcraft.sh to reset working environment..."
|
||||
bash "$INIT_SCRIPT"
|
||||
|
||||
echo "✅ Fieldcraft rotation complete."
|
Loading…
Add table
Add a link
Reference in a new issue