sandcastle-ng

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

sandcastle-up (873B)


      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   froscon|taler-froscon)
     20     unitfile=container-taler-sandcastle-froscon.service
     21     ;;
     22   *)
     23     echo This script does not know how to update sandcastle for user $USER
     24     exit 1
     25     ;;
     26 esac
     27 
     28 cd $HOME/sandcastle-ng
     29 
     30 
     31 if [[ -z "${tag_glob}" ]]; then
     32   # No tag glob, just use master
     33   git pull
     34 else
     35   git fetch
     36   tag=$(git tag -l "$tag_glob" --sort=-v:refname | head -n1)
     37   git checkout tags/$tag
     38 fi
     39 
     40 ./sandcastle-build "$@"
     41 
     42 # Unit (symlinked!) might have changed in git
     43 systemctl --user daemon-reload
     44 
     45 systemctl --user restart $unitfile