Date: Friday, June 26, 2020 @ 18:48:48
  Author: bisson
Revision: 390504

document systemd user service versioning upstream files

Added:
  iana-etc/trunk/sources/
  iana-etc/trunk/sources/INSTALL
  iana-etc/trunk/sources/iana-versioned.service
  iana-etc/trunk/sources/iana-versioned.sh
  iana-etc/trunk/sources/iana-versioned.timer

------------------------+
 INSTALL                |    1 +
 iana-versioned.service |    8 ++++++++
 iana-versioned.sh      |   37 +++++++++++++++++++++++++++++++++++++
 iana-versioned.timer   |    9 +++++++++
 4 files changed, 55 insertions(+)

Added: sources/INSTALL
===================================================================
--- sources/INSTALL                             (rev 0)
+++ sources/INSTALL     2020-06-26 18:48:48 UTC (rev 390504)
@@ -0,0 +1 @@
+Copy to sources.archlinux.org under ~/bin then put symlinks under 
.config/systemd/user

Added: sources/iana-versioned.service
===================================================================
--- sources/iana-versioned.service                              (rev 0)
+++ sources/iana-versioned.service      2020-06-26 18:48:48 UTC (rev 390504)
@@ -0,0 +1,8 @@
+[Unit]
+Description=Version IANA files
+
+[Install]
+WantedBy=default.target
+
+[Service]
+ExecStart=/home/bisson/bin/iana-versioned.sh

Added: sources/iana-versioned.sh
===================================================================
--- sources/iana-versioned.sh                           (rev 0)
+++ sources/iana-versioned.sh   2020-06-26 18:48:48 UTC (rev 390504)
@@ -0,0 +1,37 @@
+#!/usr/bin/bash
+
+URLS=(
+       
https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xml
+       https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xml
+)
+
+DEST=/srv/ftp/other/packages/iana-etc
+
+curl="curl --silent --fail --location"
+
+do_update() {
+       url=$1
+       date=$(
+               $curl --head "$url" |
+               sed 's/^Last-Modified: //;t;d' |
+               date -f- +%Y%m%d
+       )
+       if [[ -z $date ]]; then
+               return
+       fi
+
+       file=${url##*/}
+       name=${file%.*}
+       ext=${file##*.}
+       versioned="$name-$date.$ext"
+
+       if [[ ! -f "$versioned" ]]; then
+               $curl --output "$versioned" "$url"
+       fi
+}
+
+cd "$DEST"
+
+for url in ${URLS[@]}; do
+       do_update "$url"
+done


Property changes on: iana-etc/trunk/sources/iana-versioned.sh
___________________________________________________________________
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Added: sources/iana-versioned.timer
===================================================================
--- sources/iana-versioned.timer                                (rev 0)
+++ sources/iana-versioned.timer        2020-06-26 18:48:48 UTC (rev 390504)
@@ -0,0 +1,9 @@
+[Unit]
+Description=Periodically version IANA files
+
+[Install]
+WantedBy=default.target
+
+[Timer]
+OnCalendar=05:10
+Persistent=true

Reply via email to