diff options
| author | Paul Buetow <paul@buetow.org> | 2022-08-04 22:17:54 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2022-08-04 22:17:54 +0300 |
| commit | 3f005c6ef3f35087221051afc4a70a4deb104c91 (patch) | |
| tree | 10d7dc6992fb34de3811c069d515958688a3df46 | |
| parent | 23b88eada5e53e408a369e67bab58a7fc61a52f1 (diff) | |
add gemtexter.sh updater
| -rw-r--r-- | frontends/Rexfile | 19 | ||||
| -rw-r--r-- | frontends/scripts/gemtexter.sh.tpl | 34 |
2 files changed, 53 insertions, 0 deletions
diff --git a/frontends/Rexfile b/frontends/Rexfile index e61cfb1..8662227 100644 --- a/frontends/Rexfile +++ b/frontends/Rexfile @@ -110,6 +110,24 @@ task 'uptimed', group => 'frontends', service 'uptimed', ensure => 'started'; }; +desc 'Configure the gemtexter sites'; +task 'gemtexter', group => 'frontends', + sub { + file '/usr/local/bin/gemtexter.sh', + content => template('./scripts/gemtexter.sh.tpl'), + owner => 'root', + group => 'wheel', + mode => '744'; + + file '/etc/daily.local', + ensure => 'present', + owner => 'root', + group => 'wheel', + mode => '644'; + + append_if_no_such_line '/etc/daily.local', '/usr/local/bin/gemtexter.sh'; + }; + desc 'Configure ACME client'; task 'acme', group => 'frontends', sub { @@ -311,6 +329,7 @@ task 'commons', group => 'frontends', base(); uptimed(); httpd(); + gemtexter(); acme(); acme_invoke(); inetd(); diff --git a/frontends/scripts/gemtexter.sh.tpl b/frontends/scripts/gemtexter.sh.tpl new file mode 100644 index 0000000..a5a0aba --- /dev/null +++ b/frontends/scripts/gemtexter.sh.tpl @@ -0,0 +1,34 @@ +#!/bin/sh + +function ensure_site { + dir=$1 + repo=$2 + branch=$3 + + basename=$(basename $dir) + parent=$(dirname $dir) + + if [ ! -d $parent ]; then + mkdir -p $parent + fi + + cd $parent + if [ ! -d $basename ]; then + git clone $repo -b $branch --single-branch $basename + else + cd $basename + git pull + fi +} + +for site in foo.zone snonux.land; do + ensure_site \ + /var/gemini/$site \ + https://codeberg.org/snonux/$site \ + content-gemtext + ensure_site \ + /var/www/htdocs/gemtexter/$site \ + https://codeberg.org/snonux/$site \ + content-html +done + |
