guests/Makefile

78 строки
1.7 KiB
Makefile
Исходник Обычный вид История

# Makefile for building the project
app_name=guests
project_dir=$(CURDIR)/../$(app_name)
build_dir=$(project_dir)/build
appstore_dir=$(build_dir)/appstore
package_name=$(app_name)
cert_dir=$(HOME)/.nextcloud/certificates
jssources=$(wildcard js/*) $(wildcard js/*/*) $(wildcard css/*/*) $(wildcard css/*)
all: dev-setup build-js-production
# Dev env management
dev-setup: clean clean-dev npm-init
npm-init:
npm ci
npm-update:
npm update
# Building
build-js:
npm run dev
build-js-production:
npm run build
watch-js:
npm run watch
# Cleaning
clean:
rm -rf js
clean-dev:
rm -rf node_modules
# Linting
lint:
npm run lint
lint-fix:
npm run lint:fix
# Style linting
stylelint:
npm run stylelint
stylelint-fix:
npm run stylelint:fix
appstore: clean package
package: build/appstore/$(package_name).tar.gz
build/appstore/$(package_name).tar.gz: dev-setup build-js-production
mkdir -p $(appstore_dir)
tar --exclude-vcs \
--exclude=$(appstore_dir) \
--exclude=$(project_dir)/node_modules \
--exclude=$(project_dir)/webpack* \
--exclude=$(project_dir)/.gitattributes \
--exclude=$(project_dir)/.gitignore \
--exclude=$(project_dir)/.travis.yml \
--exclude=$(project_dir)/.tx \
--exclude=$(project_dir)/.scrutinizer.yml \
--exclude=$(project_dir)/CONTRIBUTING.md \
--exclude=$(project_dir)/package.json \
--exclude=$(project_dir)/screenshots \
--exclude=$(project_dir)/Makefile \
--exclude=$(project_dir)/tests \
--exclude=$(project_dir)/src \
-cvzf $(appstore_dir)/$(package_name).tar.gz $(project_dir)
@if [ -f $(cert_dir)/$(app_name).key ]; then \
openssl dgst -sha512 -sign $(cert_dir)/$(app_name).key $(appstore_dir)/$(app_name).tar.gz | openssl base64; \
fi