| 
									
										
										
										
											2018-12-06 20:47:41 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | app_name=social | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | project_dir=$(CURDIR) | 
					
						
							|  |  |  | build_dir=$(CURDIR)/build/artifacts | 
					
						
							|  |  |  | appstore_dir=$(build_dir)/appstore | 
					
						
							|  |  |  | source_dir=$(build_dir)/source | 
					
						
							|  |  |  | sign_dir=$(build_dir)/sign | 
					
						
							|  |  |  | package_name=$(app_name) | 
					
						
							|  |  |  | cert_dir=$(HOME)/.nextcloud/certificates | 
					
						
							|  |  |  | github_account=nextcloud | 
					
						
							|  |  |  | branch=master | 
					
						
							|  |  |  | codecov_token_dir=$(HOME)/.nextcloud/codecov_token | 
					
						
							| 
									
										
										
										
											2020-06-25 11:50:47 +00:00
										 |  |  | version+=0.3.1 | 
					
						
							| 
									
										
										
										
											2018-12-06 20:47:41 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | all: dev-setup lint build-js-production composer test | 
					
						
							| 
									
										
										
										
											2018-08-26 09:35:53 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | # Dev env management
 | 
					
						
							| 
									
										
										
										
											2018-10-26 09:47:05 +00:00
										 |  |  | dev-setup: clean clean-dev npm-init composer | 
					
						
							| 
									
										
										
										
											2018-11-16 11:41:20 +00:00
										 |  |  | 	cp -R node_modules/twemoji/2/svg img/twemoji | 
					
						
							| 
									
										
										
										
											2018-08-26 09:35:53 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | npm-init: | 
					
						
							|  |  |  | 	npm install | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | npm-update: | 
					
						
							|  |  |  | 	npm update | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Building
 | 
					
						
							|  |  |  | build-js: | 
					
						
							|  |  |  | 	npm run dev | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | build-js-production: | 
					
						
							|  |  |  | 	npm run build | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | watch-js: | 
					
						
							|  |  |  | 	npm run watch | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Testing
 | 
					
						
							|  |  |  | test: | 
					
						
							|  |  |  | 	npm run test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | test-watch: | 
					
						
							|  |  |  | 	npm run test:watch | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | test-coverage: | 
					
						
							|  |  |  | 	npm run test:coverage | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Linting
 | 
					
						
							|  |  |  | lint: | 
					
						
							|  |  |  | 	npm run lint | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | lint-fix: | 
					
						
							|  |  |  | 	npm run lint:fix | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Cleaning
 | 
					
						
							|  |  |  | clean: | 
					
						
							| 
									
										
										
										
											2018-12-06 20:47:41 +00:00
										 |  |  | 	rm -rf $(build_dir) | 
					
						
							| 
									
										
										
										
											2019-02-07 17:06:32 +00:00
										 |  |  | 	rm -fr js/ | 
					
						
							|  |  |  | 	mkdir js/ | 
					
						
							| 
									
										
										
										
											2018-08-26 09:35:53 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | clean-dev: | 
					
						
							|  |  |  | 	rm -rf node_modules | 
					
						
							| 
									
										
										
										
											2018-10-26 09:34:57 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-06 20:47:41 +00:00
										 |  |  | # composer packages
 | 
					
						
							| 
									
										
										
										
											2018-10-26 09:34:57 +00:00
										 |  |  | composer: | 
					
						
							|  |  |  | 	composer install --prefer-dist | 
					
						
							| 
									
										
										
										
											2018-12-06 20:47:41 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | # releasing to github
 | 
					
						
							|  |  |  | release: appstore github-release github-upload | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | github-release: | 
					
						
							|  |  |  | 	github-release release \
 | 
					
						
							|  |  |  | 		--user $(github_account) \
 | 
					
						
							|  |  |  | 		--repo $(app_name) \
 | 
					
						
							|  |  |  | 		--target $(branch) \
 | 
					
						
							|  |  |  | 		--tag v$(version) \
 | 
					
						
							|  |  |  | 		--name "$(app_name) v$(version)" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | github-upload: | 
					
						
							|  |  |  | 	github-release upload \
 | 
					
						
							|  |  |  | 		--user $(github_account) \
 | 
					
						
							|  |  |  | 		--repo $(app_name) \
 | 
					
						
							|  |  |  | 		--tag v$(version) \
 | 
					
						
							|  |  |  | 		--name "$(app_name)-$(version).tar.gz" \
 | 
					
						
							|  |  |  | 		--file $(build_dir)/$(app_name)-$(version).tar.gz | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # creating .tar.gz + signature
 | 
					
						
							|  |  |  | appstore: dev-setup lint build-js-production composer | 
					
						
							|  |  |  | 	mkdir -p $(sign_dir) | 
					
						
							|  |  |  | 	rsync -a \
 | 
					
						
							|  |  |  | 	--exclude=/build \
 | 
					
						
							|  |  |  | 	--exclude=/docs \
 | 
					
						
							|  |  |  | 	--exclude=/translationfiles \
 | 
					
						
							|  |  |  | 	--exclude=/.tx \
 | 
					
						
							|  |  |  | 	--exclude=/tests \
 | 
					
						
							| 
									
										
										
										
											2020-06-19 14:53:07 +00:00
										 |  |  | 	--exclude=.git \
 | 
					
						
							| 
									
										
										
										
											2018-12-06 20:47:41 +00:00
										 |  |  | 	--exclude=/.github \
 | 
					
						
							| 
									
										
										
										
											2018-12-07 08:33:56 +00:00
										 |  |  | 	--exclude=/.babelrc.js \
 | 
					
						
							|  |  |  | 	--exclude=/.drone.yml \
 | 
					
						
							|  |  |  | 	--exclude=/.eslintrc.js \
 | 
					
						
							| 
									
										
										
										
											2018-12-06 20:47:41 +00:00
										 |  |  | 	--exclude=/composer.json \
 | 
					
						
							|  |  |  | 	--exclude=/composer.lock \
 | 
					
						
							| 
									
										
										
										
											2018-12-07 08:33:56 +00:00
										 |  |  | 	--exclude=/src \
 | 
					
						
							|  |  |  | 	--exclude=/node_modules \
 | 
					
						
							|  |  |  | 	--exclude=/webpack.*.js \
 | 
					
						
							|  |  |  | 	--exclude=/package.json \
 | 
					
						
							|  |  |  | 	--exclude=/package-lock.json \
 | 
					
						
							| 
									
										
										
										
											2018-12-06 20:47:41 +00:00
										 |  |  | 	--exclude=/l10n/l10n.pl \
 | 
					
						
							|  |  |  | 	--exclude=/CONTRIBUTING.md \
 | 
					
						
							|  |  |  | 	--exclude=/issue_template.md \
 | 
					
						
							|  |  |  | 	--exclude=/README.md \
 | 
					
						
							|  |  |  | 	--exclude=/.gitattributes \
 | 
					
						
							|  |  |  | 	--exclude=/.gitignore \
 | 
					
						
							|  |  |  | 	--exclude=/.scrutinizer.yml \
 | 
					
						
							|  |  |  | 	--exclude=/.travis.yml \
 | 
					
						
							|  |  |  | 	--exclude=/Makefile \
 | 
					
						
							|  |  |  | 	$(project_dir)/ $(sign_dir)/$(app_name) | 
					
						
							|  |  |  | 	tar -czf $(build_dir)/$(app_name)-$(version).tar.gz \
 | 
					
						
							|  |  |  | 		-C $(sign_dir) $(app_name) | 
					
						
							|  |  |  | 	@if [ -f $(cert_dir)/$(app_name).key ]; then \
 | 
					
						
							|  |  |  | 		echo "Signing package…"; \
 | 
					
						
							|  |  |  | 		openssl dgst -sha512 -sign $(cert_dir)/$(app_name).key $(build_dir)/$(app_name)-$(version).tar.gz | openssl base64; \
 | 
					
						
							|  |  |  | 	fi |