Skip to content

Commit

Permalink
Add example bootstrap script to run files in bootstrap.d
Browse files Browse the repository at this point in the history
This script will, when installed as yadm's bootstrap script, run all
executables in $YADM_DIR/bootstrap.d.
  • Loading branch information
erijo committed Jan 1, 2021
1 parent dcfa55c commit 7d216d4
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions contrib/bootstrap/bootstrap-in-dir
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/bin/bash

# Save this file as ~/.config/yadm/bootstrap and make it executable. It will
# execute all executable files (excluding templates and editor backups) in the
# ~/.config/yadm/bootstrap.d directory when run.

set -eu

# Directory to look for bootstrap executables in
BOOTSTRAP_D="${BASH_SOURCE[0]}.d"

if [[ ! -d "$BOOTSTRAP_D" ]]; then
echo "Error: bootstrap directory '$BOOTSTRAP_D' not found" >&2
exit 1
fi

find "$BOOTSTRAP_D" -type f | sort | while IFS= read -r bootstrap; do
if [[ -x "$bootstrap" && ! "$bootstrap" =~ "##" && ! "$bootstrap" =~ "~$" ]]; then
if ! "$bootstrap"; then
echo "Error: bootstrap '$bootstrap' failed" >&2
exit 1
fi
fi
done

0 comments on commit 7d216d4

Please sign in to comment.