init.sh 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. {% macro init(values) -%}
  2. {%- set pw_url = "http://%s:%d" | format(values.consts.piwigo_container_name, values.consts.internal_web_port) %}
  3. {%- set args = [
  4. "language=%s"|format(values.piwigo.language),
  5. "dbhost=%s"|format(values.consts.mariadb_container_name),
  6. "dbuser=%s"|format(values.consts.db_user),
  7. "dbpasswd=%s"|format(values.piwigo.db_password),
  8. "dbname=%s"|format(values.consts.db_name),
  9. "prefix=piwigo_",
  10. "admin_name=%s"|format(values.piwigo.admin_name),
  11. "admin_pass1=%s"|format(values.piwigo.admin_password),
  12. "admin_pass2=%s"|format(values.piwigo.admin_password),
  13. "admin_mail=%s"|format(values.piwigo.admin_email),
  14. "install=Start+installation",
  15. ] %}
  16. #!/bin/sh
  17. until curl --silent --fail --output /dev/null {{ pw_url }}; do
  18. echo "Waiting for Piwigo to start..."
  19. sleep 1
  20. done
  21. if curl --silent --fail {{ pw_url }}/install.php | grep "Piwigo is already installed"; then
  22. echo "Piwigo is already installed, skipping installation"
  23. exit 0
  24. fi
  25. echo "Installing Piwigo..."
  26. curl -X POST -d "{{ args | join("&") }}" {{ pw_url }}/install.php || { echo "Failed to install Piwigo"; exit 1; }
  27. if curl --silent --fail {{ pw_url }}/install.php | grep "Piwigo is already installed"; then
  28. echo "Piwigo is already installed, skipping installation"
  29. exit 0
  30. fi
  31. exit 1
  32. {% endmacro %}