You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
976 B

  1. #!/bin/bash
  2. ## Init is run on host
  3. ## For now it is run every time the script is launched, but
  4. ## it should be launched only once after build.
  5. ## Accessible variables are:
  6. ## - SERVICE_NAME Name of current service
  7. ## - DOCKER_BASE_IMAGE Base image from which this service might be built if any
  8. ## - SERVICE_DATASTORE Location on host of the DATASTORE of this service
  9. ## - SERVICE_CONFIGSTORE Location on host of the CONFIGSTORE of this service
  10. set -u
  11. service_def=$(get_compose_service_def "$SERVICE_NAME")
  12. CONFIG_PATH="/etc/radicale/config"
  13. HOST_CONFIG_PATH="$SERVICE_CONFIGSTORE$CONFIG_PATH"
  14. config=$(echo "$service_def" | shyaml get-value options.config 2>/dev/null) || {
  15. die "Missing ${WHITE}config${NORMAL} option."
  16. }
  17. mkdir -p "${HOST_CONFIG_PATH%/*}"
  18. file_put "$HOST_CONFIG_PATH" <<EOF || exit 1
  19. $config
  20. [server]
  21. hosts = 0.0.0.0:5232
  22. EOF
  23. init-config-add "\
  24. $SERVICE_NAME:
  25. environment:
  26. RADICALE_CONFIG: \"$CONFIG_PATH\"
  27. "