Run salt audit through dashboard sudo entrypoint

This commit is contained in:
2026-03-29 23:19:04 +02:00
parent 9da7b5cc7d
commit b9d9a7e88e

View File

@@ -15,17 +15,15 @@ trap 'rm -f "$TMP_FILE"' EXIT
REMOTE_CMD="cd '${STAGING_AUDIT_PROJECT_DIR}' && '${STAGING_AUDIT_MANAGE}' audit_locales --format=json" REMOTE_CMD="cd '${STAGING_AUDIT_PROJECT_DIR}' && '${STAGING_AUDIT_MANAGE}' audit_locales --format=json"
set +e set +e
STAGING_AUDIT_MINION="$STAGING_AUDIT_MINION" REMOTE_CMD="$REMOTE_CMD" AUDIT_TIMEOUT_SECONDS="$AUDIT_TIMEOUT_SECONDS" python3 - <<'PY2' > "$TMP_FILE" sudo -n -u mandel -g www-data /srv/apps/mandel-dashboard/.venv/bin/python - "$STAGING_AUDIT_MINION" "$REMOTE_CMD" "$AUDIT_TIMEOUT_SECONDS" <<'PY2' > "$TMP_FILE"
import json import json
import os
import subprocess import subprocess
import sys import sys
minion = os.environ["STAGING_AUDIT_MINION"] minion = sys.argv[1]
remote_cmd = os.environ["REMOTE_CMD"] remote_cmd = sys.argv[2]
timeout_seconds = int(os.environ["AUDIT_TIMEOUT_SECONDS"]) timeout_seconds = int(sys.argv[3])
cmd = [ cmd = [
"sudo", "-n", "-u", "mandel", "-g", "www-data",
"/usr/bin/salt", "--out=json", minion, "/usr/bin/salt", "--out=json", minion,
"cmd.run_all", remote_cmd, "python_shell=True", "cmd.run_all", remote_cmd, "python_shell=True",
] ]