sandcastle-ng

Scripts for the deployment of Sandcastle (GNU Taler)
Log | Files | Refs | README

sandcastle-up (780B)


      1 #!/bin/bash
      2 
      3 set -eu
      4 set -x
      5 
      6 tag_glob=
      7 case $USER in
      8   demo|taler-demo)
      9     unitfile=container-taler-sandcastle-demo.service
     10     tag_glob='demo-*'
     11     ;;
     12   test|taler-test)
     13     unitfile=container-taler-sandcastle-test.service
     14     tag_glob='test-*'
     15     ;;
     16   taler-kyctest)
     17     unitfile=container-taler-sandcastle-kyctest.service
     18     ;;
     19   *)
     20     echo This script does not know how to update sandcastle for user $USER
     21     exit 1
     22     ;;
     23 esac
     24 
     25 cd $HOME/sandcastle-ng
     26 
     27 
     28 if [[ -z "${tag_glob}" ]]; then
     29   # No tag glob, just use master
     30   git pull
     31 else
     32   git fetch
     33   tag=$(git tag -l "$tag_glob" --sort=-v:refname | head -n1)
     34   git checkout tags/$tag
     35 fi
     36 
     37 ./sandcastle-build
     38 
     39 # Unit (symlinked!) might have changed in git
     40 systemctl --user daemon-reload
     41 
     42 systemctl --user restart $unitfile