CURRENT_UID := $(shell id -u):$(shell id -g) PACKAGE_NAME ?= $(shell jq -r '.name' package.json) PACKAGE_VERSION?= $(shell jq -r '.version' package.json) BUILD_DATE ?=$(shell date -u +"%Y-%m-%dT%H:%M:%SZ") DOCKER_ARGS ?= DOCKER_NS ?= registry.gitlab.com/digiresilience/link/${PACKAGE_NAME} DOCKER_TAG ?= test DOCKER_BUILD := docker build ${DOCKER_ARGS} --build-arg BUILD_DATE=${BUILD_DATE} DOCKER_BUILD_FRESH := ${DOCKER_BUILD} --pull --no-cache DOCKER_BUILD_ARGS := --build-arg VCS_REF=${CI_COMMIT_SHORT_SHA} DOCKER_PUSH := docker push DOCKER_BUILD_TAG := ${DOCKER_NS}:${DOCKER_TAG} .PHONY: .npmrc .EXPORT_ALL_VARIABLES: .npmrc: ifdef CI_JOB_TOKEN echo '@guardianproject-ops:registry=https://gitlab.com/api/v4/packages/npm/' > .npmrc echo '@digiresilience:registry=https://gitlab.com/api/v4/packages/npm/' >> .npmrc echo '//gitlab.com/api/v4/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc echo '//gitlab.com/api/v4/projects/:_authToken=${CI_JOB_TOKEN}' >> .npmrc echo '//gitlab.com/api/v4/projects/${CI_PROJECT_ID}/packages/npm/:_authToken=${CI_JOB_TOKEN}' >> .npmrc endif docker/build: .npmrc DOCKER_BUILDKIT=1 ${DOCKER_BUILD} ${DOCKER_BUILD_ARGS} -t ${DOCKER_BUILD_TAG} ${PWD} docker/build-fresh: .npmrc DOCKER_BUILDKIT=1 ${DOCKER_BUILD_FRESH} ${DOCKER_BUILD_ARGS} -t ${DOCKER_BUILD_TAG} ${PWD} docker/add-tag: docker pull ${DOCKER_NS}:${DOCKER_TAG} docker tag ${DOCKER_NS}:${DOCKER_TAG} ${DOCKER_NS}:${DOCKER_TAG_NEW} docker push ${DOCKER_NS}:${DOCKER_TAG_NEW} docker/push: ${DOCKER_PUSH} ${DOCKER_BUILD_TAG} docker/build-push: docker/build docker/push docker/build-fresh-push: docker/build-fresh docker/push # don't use this to generate passwords for production generate-secrets: ZAMMAD_DATABASE_PASSWORD=$(shell openssl rand -hex 16) METAMIGO_DATABASE_ROOT_PASSWORD=$(shell openssl rand -hex 16) METAMIGO_DATABASE_PASSWORD=$(shell openssl rand -hex 16) METAMIGO_DATABASE_AUTHENTICATOR_PASSWORD=$(shell openssl rand -hex 16) NEXTAUTH_AUDIENCE=$(shell openssl rand -hex 16) NEXTAUTH_SECRET=$(shell openssl rand -hex 16) generate-keys: docker exec -i $(shell docker ps -aqf "name=metamigo-frontend") bash -c "/opt/metamigo/cli gen-jwks" setup-signal: mkdir -p signald create-admin-user: docker exec -i $(shell docker ps -aqf "name=metamigo-postgresql") bash < ./scripts/create-admin-user.sh force-run-migrations: docker-compose -p link-docker-compose exec zammad-railsserver bundle exec rails r 'require "/opt/zammad/db/addon/cdr_signal/20210525091356_cdr_signal_channel.rb";require "/opt/zammad/db/addon/cdr_voice/20210525091357_cdr_voice_channel.rb";require "/opt/zammad/db/addon/cdr_whatsapp/20210525091358_cdr_whatsapp_channel.rb"; require "/opt/zammad/db/addon/pgpsupport/20220403000001_pgpsupport.rb";CdrSignalChannel.new.up;CdrVoiceChannel.new.up;CdrWhatsappChannel.new.up;PGPSupport.new.up;' sso: docker-compose -p link-docker-compose exec zammad-nginx sed -i '/proxy_pass http:\/\/zammad-railsserver;/a proxy_set_header X-Forwarded-Ssl on;' /opt/zammad/contrib/nginx/zammad.conf; docker-compose -p link-docker-compose exec zammad-nginx sed -i '/proxy_pass http:\/\/zammad-websocket;/a proxy_set_header X-Forwarded-Ssl on;' /opt/zammad/contrib/nginx/zammad.conf; docker-compose -p link-docker-compose exec zammad-nginx service nginx restart; start: CURRENT_UID=$(CURRENT_UID) docker-compose up -d start-dev: CURRENT_UID=$(CURRENT_UID) docker-compose up --build -d restart: CURRENT_UID=$(CURRENT_UID) docker restart $(shell docker ps -a -q) stop: CURRENT_UID=$(CURRENT_UID) docker-compose down destroy: docker-compose down docker volume prune