125 lines
6.2 KiB
Makefile
125 lines
6.2 KiB
Makefile
SHELL := /bin/bash
|
|
ENV_FILE := $(if $(wildcard .env),.env,.env.example)
|
|
PG_ENV_FILE := $(if $(wildcard .env.postgres),.env.postgres,.env.postgres.example)
|
|
DEVPROD_ENV_FILE := $(if $(wildcard .env.devprod),.env.devprod,.env.devprod.example)
|
|
MYSQL_COMPOSE_FILE := docker-compose.yml
|
|
PG_COMPOSE_FILE := docker-compose.postgres.yml
|
|
DEVPROD_COMPOSE_FILE := docker-compose.devprod.yml
|
|
DEVPROD_NOSSL_COMPOSE_FILE := docker-compose.devprod.nossl.yml
|
|
|
|
.PHONY: up down logs ps occ install-oidc enable-oidc up-pg down-pg logs-pg ps-pg occ-pg install-oidc-pg enable-oidc-pg up-devprod down-devprod logs-devprod ps-devprod occ-devprod install-oidc-devprod enable-oidc-devprod fix-apps-perms-devprod up-devprod-nossl down-devprod-nossl logs-devprod-nossl ps-devprod-nossl occ-devprod-nossl install-oidc-devprod-nossl enable-oidc-devprod-nossl fix-apps-perms-devprod-nossl trust-domain-devprod trust-domain-devprod-nossl
|
|
|
|
up:
|
|
docker compose -f $(MYSQL_COMPOSE_FILE) --env-file $(ENV_FILE) up -d --build
|
|
|
|
down:
|
|
docker compose -f $(MYSQL_COMPOSE_FILE) --env-file $(ENV_FILE) down
|
|
|
|
logs:
|
|
docker compose -f $(MYSQL_COMPOSE_FILE) --env-file $(ENV_FILE) logs -f --tail=100
|
|
|
|
ps:
|
|
docker compose -f $(MYSQL_COMPOSE_FILE) --env-file $(ENV_FILE) ps
|
|
|
|
occ:
|
|
@test -n "$(cmd)" || (echo "Usage: make occ cmd=\"app:list\"" && exit 1)
|
|
./scripts/nextcloud-occ.sh $(ENV_FILE) $(cmd)
|
|
|
|
install-oidc:
|
|
./scripts/nextcloud-occ.sh $(ENV_FILE) app:install user_oidc
|
|
./scripts/nextcloud-occ.sh $(ENV_FILE) app:enable user_oidc
|
|
|
|
enable-oidc:
|
|
./scripts/nextcloud-occ.sh $(ENV_FILE) app:enable user_oidc
|
|
|
|
up-pg:
|
|
docker compose -f $(PG_COMPOSE_FILE) --env-file $(PG_ENV_FILE) up -d --build
|
|
|
|
down-pg:
|
|
docker compose -f $(PG_COMPOSE_FILE) --env-file $(PG_ENV_FILE) down
|
|
|
|
logs-pg:
|
|
docker compose -f $(PG_COMPOSE_FILE) --env-file $(PG_ENV_FILE) logs -f --tail=100
|
|
|
|
ps-pg:
|
|
docker compose -f $(PG_COMPOSE_FILE) --env-file $(PG_ENV_FILE) ps
|
|
|
|
occ-pg:
|
|
@test -n "$(cmd)" || (echo "Usage: make occ-pg cmd=\"app:list\"" && exit 1)
|
|
COMPOSE_FILE=$(PG_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(PG_ENV_FILE) $(cmd)
|
|
|
|
install-oidc-pg:
|
|
COMPOSE_FILE=$(PG_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(PG_ENV_FILE) app:install user_oidc
|
|
COMPOSE_FILE=$(PG_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(PG_ENV_FILE) app:enable user_oidc
|
|
|
|
enable-oidc-pg:
|
|
COMPOSE_FILE=$(PG_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(PG_ENV_FILE) app:enable user_oidc
|
|
|
|
up-devprod:
|
|
docker compose -f $(DEVPROD_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) up -d --build
|
|
|
|
down-devprod:
|
|
docker compose -f $(DEVPROD_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) down
|
|
|
|
logs-devprod:
|
|
docker compose -f $(DEVPROD_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) logs -f --tail=100
|
|
|
|
ps-devprod:
|
|
docker compose -f $(DEVPROD_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) ps
|
|
|
|
occ-devprod:
|
|
@test -n "$(cmd)" || (echo "Usage: make occ-devprod cmd=\"app:list\"" && exit 1)
|
|
COMPOSE_FILE=$(DEVPROD_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) $(cmd)
|
|
|
|
install-oidc-devprod:
|
|
$(MAKE) fix-apps-perms-devprod
|
|
COMPOSE_FILE=$(DEVPROD_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) app:install user_oidc
|
|
COMPOSE_FILE=$(DEVPROD_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) app:enable user_oidc
|
|
|
|
enable-oidc-devprod:
|
|
COMPOSE_FILE=$(DEVPROD_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) app:enable user_oidc
|
|
|
|
fix-apps-perms-devprod:
|
|
docker compose -f $(DEVPROD_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) exec -u root app sh -c "chown -R www-data:www-data /var/www/html/apps /var/www/html/custom_apps && chmod -R u+rwX,g+rwX /var/www/html/apps /var/www/html/custom_apps"
|
|
|
|
up-devprod-nossl:
|
|
docker compose -f $(DEVPROD_NOSSL_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) up -d --build
|
|
|
|
down-devprod-nossl:
|
|
docker compose -f $(DEVPROD_NOSSL_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) down
|
|
|
|
logs-devprod-nossl:
|
|
docker compose -f $(DEVPROD_NOSSL_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) logs -f --tail=100
|
|
|
|
ps-devprod-nossl:
|
|
docker compose -f $(DEVPROD_NOSSL_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) ps
|
|
|
|
occ-devprod-nossl:
|
|
@test -n "$(cmd)" || (echo "Usage: make occ-devprod-nossl cmd=\"app:list\"" && exit 1)
|
|
COMPOSE_FILE=$(DEVPROD_NOSSL_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) $(cmd)
|
|
|
|
install-oidc-devprod-nossl:
|
|
$(MAKE) fix-apps-perms-devprod-nossl
|
|
COMPOSE_FILE=$(DEVPROD_NOSSL_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) app:install user_oidc
|
|
COMPOSE_FILE=$(DEVPROD_NOSSL_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) app:enable user_oidc
|
|
|
|
enable-oidc-devprod-nossl:
|
|
COMPOSE_FILE=$(DEVPROD_NOSSL_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) app:enable user_oidc
|
|
|
|
fix-apps-perms-devprod-nossl:
|
|
docker compose -f $(DEVPROD_NOSSL_COMPOSE_FILE) --env-file $(DEVPROD_ENV_FILE) exec -u root app sh -c "chown -R www-data:www-data /var/www/html/apps /var/www/html/custom_apps && chmod -R u+rwX,g+rwX /var/www/html/apps /var/www/html/custom_apps"
|
|
|
|
trust-domain-devprod:
|
|
@domain="$${domain:-$$(grep -E '^NEXTCLOUD_DOMAIN=' $(DEVPROD_ENV_FILE) | cut -d= -f2-)}"; \
|
|
if [ -z "$$domain" ]; then echo "Usage: make trust-domain-devprod domain=cloud.example.com"; exit 1; fi; \
|
|
COMPOSE_FILE=$(DEVPROD_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) config:system:set trusted_domains 1 --value="$$domain"; \
|
|
COMPOSE_FILE=$(DEVPROD_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) config:system:set overwritehost --value="$$domain"; \
|
|
COMPOSE_FILE=$(DEVPROD_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) config:system:set overwriteprotocol --value="https"
|
|
|
|
trust-domain-devprod-nossl:
|
|
@domain="$${domain:-$$(grep -E '^NEXTCLOUD_DOMAIN=' $(DEVPROD_ENV_FILE) | cut -d= -f2-)}"; \
|
|
if [ -z "$$domain" ]; then echo "Usage: make trust-domain-devprod-nossl domain=cloud.example.com"; exit 1; fi; \
|
|
COMPOSE_FILE=$(DEVPROD_NOSSL_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) config:system:set trusted_domains 1 --value="$$domain"; \
|
|
COMPOSE_FILE=$(DEVPROD_NOSSL_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) config:system:set overwritehost --value="$$domain"; \
|
|
COMPOSE_FILE=$(DEVPROD_NOSSL_COMPOSE_FILE) ./scripts/nextcloud-occ.sh $(DEVPROD_ENV_FILE) config:system:set overwriteprotocol --value="https"
|