66 lines
2.1 KiB
Makefile
66 lines
2.1 KiB
Makefile
SHELL := /bin/bash
|
|
|
|
PROJECT_ROOT := $(CURDIR)
|
|
ANDROID_DIR := $(PROJECT_ROOT)/android
|
|
WEBSITE_DIR := $(PROJECT_ROOT)/website
|
|
DOWNLOADS_DIR := $(WEBSITE_DIR)/downloads
|
|
META_DIR := $(WEBSITE_DIR)/assets/meta
|
|
APK_PATH := $(ANDROID_DIR)/app/build/outputs/apk/debug/app-debug.apk
|
|
PUBLISHED_APK := $(DOWNLOADS_DIR)/app-debug.apk
|
|
VERSION_FILE := $(META_DIR)/version.json
|
|
|
|
.PHONY: help client-version-bump client-build client-tag client-publish publish require-release-notes \
|
|
server-start server-stop server-restart server-status server-rebuild
|
|
|
|
help:
|
|
@echo "Targets:"
|
|
@echo " make client-build - require release notes, bump version, build debug APK, create git tag"
|
|
@echo " make client-tag - create git tag for the current Android version"
|
|
@echo " make client-publish - copy APK to website and refresh version metadata"
|
|
@echo " make publish - require release notes, bump version, build APK, publish client, reload nginx"
|
|
@echo " vars: RELEASE_NOTES='- item 1\n- item 2' or RELEASE_NOTES_FILE=/path/to/file"
|
|
@echo " make server-start - start nginx"
|
|
@echo " make server-stop - stop nginx"
|
|
@echo " make server-restart - restart nginx"
|
|
@echo " make server-status - show nginx status"
|
|
@echo " make server-rebuild - test nginx config and reload nginx"
|
|
|
|
require-release-notes:
|
|
@$(PROJECT_ROOT)/scripts/update_release_notes.sh
|
|
|
|
client-version-bump:
|
|
@$(PROJECT_ROOT)/scripts/bump_version.sh
|
|
|
|
client-tag:
|
|
@$(PROJECT_ROOT)/scripts/create_version_tag.sh
|
|
|
|
client-build: require-release-notes client-version-bump
|
|
cd $(ANDROID_DIR) && ./gradlew assembleDebug --no-daemon
|
|
@$(PROJECT_ROOT)/scripts/create_version_tag.sh
|
|
|
|
client-publish:
|
|
@mkdir -p $(DOWNLOADS_DIR) $(META_DIR)
|
|
cp $(APK_PATH) $(PUBLISHED_APK)
|
|
@$(PROJECT_ROOT)/scripts/update_site_metadata.sh
|
|
|
|
publish:
|
|
@$(MAKE) client-build
|
|
@$(MAKE) client-publish
|
|
@$(MAKE) server-rebuild
|
|
|
|
server-start:
|
|
sudo systemctl start nginx
|
|
|
|
server-stop:
|
|
sudo systemctl stop nginx
|
|
|
|
server-restart:
|
|
sudo systemctl restart nginx
|
|
|
|
server-status:
|
|
sudo systemctl status nginx --no-pager
|
|
|
|
server-rebuild:
|
|
sudo /usr/sbin/nginx -t
|
|
sudo systemctl reload nginx
|