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.

49 lines
1.4 KiB

  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. if [ -d "$SERVICE_CONFIGSTORE/bin/compose" ]; then
  11. rmdir "$SERVICE_CONFIGSTORE/bin/compose"
  12. fi
  13. [ "$COMPOSE_LAUNCHER_OPTS" ] || {
  14. err "\$COMPOSE_LAUNCHER_OPTS is expected to be set."
  15. exit 1
  16. }
  17. [ "$HOST_COMPOSE_LAUNCHER_OPTS" ] || {
  18. err "\$HOST_COMPOSE_LAUNCHER_OPTS is expected to be set."
  19. exit 1
  20. }
  21. [ "$COMPOSE_LAUNCHER_BIN" ] || {
  22. err "\$COMPOSE_LAUNCHER_BIN is expected to be set."
  23. exit 1
  24. }
  25. mkdir -p "$SERVICE_CONFIGSTORE/etc/crontabs"
  26. touch "$SERVICE_CONFIGSTORE/etc/crontabs/root"
  27. timezone=$(cat /etc/timezone) || exit 1
  28. init-config-add "
  29. $CHARM_NAME:
  30. volumes:
  31. - /etc/timezone:/etc/timezone:ro
  32. - \$DOCKER_COMPOSE_PATH/bin/dc:/bin/dc:ro
  33. - $COMPOSE_LAUNCHER_BIN:/bin/compose:ro
  34. - $HOST_COMPOSE_LAUNCHER_OPTS:$COMPOSE_LAUNCHER_OPTS:ro
  35. environment:
  36. TZ: $timezone
  37. COMPOSE_LAUNCHER_OPTS: $COMPOSE_LAUNCHER_OPTS
  38. "
  39. info "Timezone is set to $timezone."