From 8ce5b04f510333b5e8552d30e84276e08c29ecb2 Mon Sep 17 00:00:00 2001 From: Ben Busby Date: Mon, 15 Nov 2021 16:44:26 -0700 Subject: [PATCH] Install crontab w/ script This adds a couple of new scripts: install-crontab.sh and update.sh. The install-crontab script does exactly that -- it installs a new crontab that runs the update script every 5 minutes. An update script was added to simplify the crontab a bit and to ensure the Elixir update script is executed from the correct directory. --- install-crontab.sh | 6 ++++++ update.exs | 2 +- update.sh | 6 ++++++ 3 files changed, 13 insertions(+), 1 deletion(-) create mode 100755 install-crontab.sh create mode 100755 update.sh diff --git a/install-crontab.sh b/install-crontab.sh new file mode 100755 index 0000000..47c220c --- /dev/null +++ b/install-crontab.sh @@ -0,0 +1,6 @@ +#!/bin/sh +# Install crontab to run update script + +SCRIPT_DIR="$(builtin cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" + +(crontab -l 2>/dev/null; echo "*/5 * * * * $SCRIPT_DIR/update.sh") | crontab - diff --git a/update.exs b/update.exs index e0c367a..bc9ba0d 100644 --- a/update.exs +++ b/update.exs @@ -6,7 +6,7 @@ defmodule Instances do def init() do File.rename(@update_file, "#{@update_file}-prev") - update + update() end def request(url) do diff --git a/update.sh b/update.sh new file mode 100755 index 0000000..1ab0d52 --- /dev/null +++ b/update.sh @@ -0,0 +1,6 @@ +#!/bin/sh + +SCRIPT_DIR="$(builtin cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)" + +cd "$SCRIPT_DIR" +mix run update.exs