github.com/alloyci/alloy-runner@v1.0.1-0.20180222164613-925503ccafd6/packaging/root/usr/share/alloy-runner/post-install (about)

     1  #!/bin/sh
     2  
     3  set -e
     4  
     5  # detect user: first try to use alloy_ci_multi_runner
     6  for USER in alloy_ci_multi_runner alloy-runner; do
     7    if id -u "$USER" >/dev/null 2>/dev/null; then
     8      echo "AlloyCI Runner: detected user $USER"
     9      break
    10    fi
    11  done
    12  
    13  # create user if doesn't exist: it will create alloy-runner if not found
    14  if ! id -u "$USER" >/dev/null 2>/dev/null; then
    15    echo "AlloyCI Runner: creating $USER..."
    16    useradd --system --shell /bin/bash --comment 'AlloyCI Runner' --create-home $USER
    17  fi
    18  
    19  # add user to docker group to allow Docker access (insecure)
    20  if id -nG "$USER" | grep -q docker; then
    21    echo "WARNING: $USER belongs to group docker which is insecure, because allows to have root access to host"
    22  fi
    23  
    24  # get USER home directory
    25  eval HOMEDIR=~$USER
    26  
    27  # create empty config and re-register runner
    28  mkdir -p /etc/alloy-runner
    29  chmod 0700 /etc/alloy-runner
    30  if [ -f $HOMEDIR/config.toml ] && [ ! -f /etc/alloy-runner/config.toml ]; then
    31    echo "AlloyCI Runner: importing configuration to /etc/alloy-runner/config.toml"
    32    cp $HOMEDIR/config.toml /etc/alloy-runner/config.toml
    33    chmod 0600 /etc/alloy-runner/config.toml
    34  fi
    35  
    36  # uninstall old service
    37  if alloy-runner status --service="alloy-runner"; then
    38    alloy-runner stop --service="alloy-runner" >/dev/null 2>/dev/null || :
    39    alloy-runner uninstall --service="alloy-runner" >/dev/null 2>/dev/null || :
    40  fi
    41  
    42  # if migrating from pre 10.0.0 installation
    43  if alloy-runner status --service="alloy-ci-multi-runner"; then
    44    alloy-runner stop --service="alloy-ci-multi-runner" >/dev/null 2>/dev/null || :
    45    alloy-runner uninstall --service="alloy-ci-multi-runner" >/dev/null 2>/dev/null || :
    46  fi
    47  
    48  # re-register runner
    49  alloy-runner stop >/dev/null 2>/dev/null || :
    50  alloy-runner uninstall >/dev/null 2>/dev/null || :
    51  alloy-runner install --user=$USER --working-directory=$HOMEDIR
    52  
    53  # start runner service
    54  alloy-runner start || :