|
|
@ -16,7 +16,13 @@ automated_script () |
|
|
|
script="$(script_cmdline)" |
|
|
|
script="$(script_cmdline)" |
|
|
|
if [[ -n "${script}" && ! -x /tmp/startup_script ]]; then |
|
|
|
if [[ -n "${script}" && ! -x /tmp/startup_script ]]; then |
|
|
|
if [[ "${script}" =~ ^((http|https|ftp)://) ]]; then |
|
|
|
if [[ "${script}" =~ ^((http|https|ftp)://) ]]; then |
|
|
|
curl "${script}" --location --retry-connrefused --retry 10 -s -o /tmp/startup_script >/dev/null |
|
|
|
# there's no synchronization for network availability before executing this script |
|
|
|
|
|
|
|
printf '%s: waiting for network-online.target\n' "$0" |
|
|
|
|
|
|
|
until systemctl --quiet is-active network-online.target; do |
|
|
|
|
|
|
|
sleep 1 |
|
|
|
|
|
|
|
done |
|
|
|
|
|
|
|
printf '%s: downloading %s\n' "$0" "${script}" |
|
|
|
|
|
|
|
curl "${script}" --location --retry-connrefused --retry 10 -s -o /tmp/startup_script |
|
|
|
rt=$? |
|
|
|
rt=$? |
|
|
|
else |
|
|
|
else |
|
|
|
cp "${script}" /tmp/startup_script |
|
|
|
cp "${script}" /tmp/startup_script |
|
|
@ -24,6 +30,9 @@ automated_script () |
|
|
|
fi |
|
|
|
fi |
|
|
|
if [[ ${rt} -eq 0 ]]; then |
|
|
|
if [[ ${rt} -eq 0 ]]; then |
|
|
|
chmod +x /tmp/startup_script |
|
|
|
chmod +x /tmp/startup_script |
|
|
|
|
|
|
|
printf '%s: executing automated script\n' "$0" |
|
|
|
|
|
|
|
# note that script is executed when other services (like pacman-init) may be still in progress, please |
|
|
|
|
|
|
|
# synchronize to "systemctl is-system-running --wait" when your script depends on other services |
|
|
|
/tmp/startup_script |
|
|
|
/tmp/startup_script |
|
|
|
fi |
|
|
|
fi |
|
|
|
fi |
|
|
|
fi |
|
|
|