github.com/swiftstack/proxyfs@v0.0.0-20201223034610-5434d919416e/cookbooks/proxyfs/files/default/usr/bin/start_proxyfsd_only (about)

     1  #!/bin/bash
     2  
     3  # A simple script to start or stop proxyfsd
     4  # The PATH, etc should already be setup by systemctl environment
     5  
     6  function await_proxyfsd_startup {
     7      /usr/bin/systemctl -q is-active proxyfsd
     8      if [ $? -ne 0 ]
     9      then
    10          echo "ProxyFS failed to start. Exiting..."
    11          exit 1
    12      fi
    13      while true
    14      do
    15          curl http://127.0.0.1:15346/ 2>/dev/null >/dev/null
    16          if [ $? -eq 0 ]
    17          then
    18              break
    19          fi
    20          echo "Waiting for ProxyFS to be started..."
    21          sleep 1
    22      done
    23  }
    24  
    25  function await_pfsagentd_shutdown {
    26      while true
    27      do
    28          pidof pfsagentd > /dev/null
    29          if [ $? -ne 0 ]
    30          then
    31              break
    32          fi
    33          echo "Waiting for PFSAgent to be stopped..."
    34          sleep 1
    35      done
    36  }
    37  
    38  if [ -f /usr/bin/systemctl ]; then
    39      # Centos
    40      sudo /usr/bin/systemctl stop pfsagentd
    41      await_pfsagentd_shutdown
    42      sudo /usr/bin/systemctl start proxyfsd
    43      await_proxyfsd_startup
    44  else
    45      # Ubuntu (not tested!)
    46      sudo /usr/sbin/service proxyfsd start
    47      await_proxyfsd_startup
    48  fi