mirror of
https://github.com/deadcxap/init_scripts.git
synced 2026-07-02 05:43:40 +03:00
fix: copy hidden role files
This commit is contained in:
@@ -255,7 +255,7 @@ EOF"
|
||||
|
||||
setup_role() {
|
||||
[[ -z "$ROLE" ]] && return
|
||||
local TEMP_DIR ROLE_SRC ROLE_TARGET INIT_SCRIPT REPO_URL ROLE_URL
|
||||
local TEMP_DIR ROLE_SRC REPO_URL ROLE_URL service_dir service_name target_dir init_script
|
||||
REPO_URL="https://github.com/deadcxap/init_scripts.git"
|
||||
ROLE_URL="https://api.github.com/repos/deadcxap/init_scripts/contents/$ROLE"
|
||||
log "Checking role $ROLE exists in repository"
|
||||
@@ -283,18 +283,22 @@ setup_role() {
|
||||
run "Cleaning up role repository" rm -rf "$TEMP_DIR"
|
||||
return
|
||||
fi
|
||||
run "Copying role files" cp -r "$ROLE_SRC" /opt/
|
||||
ROLE_TARGET="/opt/$ROLE"
|
||||
run "Setting ownership for $ROLE_TARGET" chown -R "$USERNAME:$USERNAME" "$ROLE_TARGET"
|
||||
INIT_SCRIPT="$ROLE_TARGET/init.sh"
|
||||
if [[ -f "$INIT_SCRIPT" ]]; then
|
||||
run "Running init.sh for $ROLE" bash "$INIT_SCRIPT"
|
||||
run "Checking $ROLE stack" bash -c "cd '$ROLE_TARGET' && docker compose ps | grep -q 'Up'"
|
||||
run "Removing init.sh for $ROLE" rm -f "$INIT_SCRIPT"
|
||||
else
|
||||
log "WARN: init.sh not found in $ROLE_TARGET, skipping"
|
||||
SUMMARY+=("init.sh for $ROLE: MISSING")
|
||||
fi
|
||||
run "Copying role files" cp -r "$ROLE_SRC"/. /opt/
|
||||
for service_dir in "$ROLE_SRC"/*; do
|
||||
[ -d "$service_dir" ] || continue
|
||||
service_name="$(basename "$service_dir")"
|
||||
target_dir="/opt/$service_name"
|
||||
run "Setting ownership for $target_dir" chown -R "$USERNAME:$USERNAME" "$target_dir"
|
||||
init_script="$target_dir/init.sh"
|
||||
if [[ -f "$init_script" ]]; then
|
||||
run "Running init.sh for $service_name" bash "$init_script"
|
||||
run "Checking $service_name stack" bash -c "cd \"$target_dir\" && docker compose ps | grep -q 'Up'"
|
||||
run "Removing init.sh for $service_name" rm -f "$init_script"
|
||||
else
|
||||
log "WARN: init.sh not found in $target_dir, skipping"
|
||||
SUMMARY+=("init.sh for $service_name: MISSING")
|
||||
fi
|
||||
done
|
||||
run "Cleaning up role repository" rm -rf "$TEMP_DIR"
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user