diff --git a/Makefile b/Makefile index fc89d72cb4..c5252a9748 100644 --- a/Makefile +++ b/Makefile @@ -6,49 +6,59 @@ else DETECTED_OS := $(shell uname) endif -.PHONY: init dev build test clean - +.PHONY: init init: install-deps download-bins compile-dev echo "Init done" +.PHONY: download-bins download-bins: yarn download-bins +.PHONY: install-deps install-deps: yarn install --frozen-lockfile --verbose yarn check --verify-tree --integrity +.PHONY: compile-dev compile-dev: yarn compile:main --cache yarn compile:renderer --cache +.PHONY: dev dev: ifeq ("$(wildcard static/build/main.js)","") make init endif yarn dev +.PHONY: lint lint: yarn lint +.PHONY: test test: download-bins yarn test +.PHONY: integration-linux integration-linux: build-extension-types build-extensions yarn build:linux yarn integration +.PHONY: integration-mac integration-mac: build-extension-types build-extensions yarn build:mac yarn integration +.PHONY: integration-win integration-win: build-extension-types build-extensions yarn build:win yarn integration +.PHONY: test-app test-app: yarn test +.PHONY: build build: install-deps download-bins build-extensions ifeq "$(DETECTED_OS)" "Windows" yarn dist:win @@ -56,23 +66,51 @@ else yarn dist endif +.PHONY: build-extensions build-extensions: $(foreach dir, $(wildcard $(EXTENSIONS_DIR)/*), (cd $(dir) && npm install && npm run build || exit $?);) +.PHONY: test-extensions test-extensions: $(foreach dir, $(wildcard $(EXTENSIONS_DIR)/*), (cd $(dir) && npm install --dev && npm run test || exit $?);) -build-npm: build-extension-types - yarn npm:fix-package-version +.PHONY: copy-extension-themes +copy-extension-themes: + mkdir -p src/extensions/npm/extensions/dist/src/renderer/themes/ + cp $(wildcard src/renderer/themes/*.json) src/extensions/npm/extensions/dist/src/renderer/themes/ -build-extension-types: +src/extensions/npm/extensions/__mocks__: + cp -r __mocks__ src/extensions/npm/extensions/ + +src/extensions/npm/extensions/dist: yarn compile:extension-types +.PHONY: build-npm +build-npm: build-extension-types copy-extension-themes src/extensions/npm/extensions/__mocks__ + yarn npm:fix-package-version + +.PHONY: build-extension-types +build-extension-types: src/extensions/npm/extensions/dist + +.PHONY: publish-npm publish-npm: build-npm npm config set '//registry.npmjs.org/:_authToken' "${NPM_TOKEN}" cd src/extensions/npm/extensions && npm publish --access=public -clean: +.PHONY: clean-npm +clean-npm: +ifeq "$(DETECTED_OS)" "Windows" + if exist src\extensions\npm\extensions\dist del /s /q src\extensions\npm\extensions\dist + if exist src\extensions\npm\extensions\__mocks__ del /s /q src\extensions\npm\extensions\__mocks__ + if exist src\extensions\npm\extensions\node_modules del /s /q src\extensions\npm\extensions\node_modules +else + rm -rf src/extensions/npm/extensions/dist + rm -rf src/extensions/npm/extensions/__mocks__ + rm -rf src/extensions/npm/extensions/node_modules +endif + +.PHONY: clean +clean: clean-npm ifeq "$(DETECTED_OS)" "Windows" if exist binaries\client del /s /q binaries\client\*.* if exist dist del /s /q dist\*.* diff --git a/src/extensions/npm/extensions/package.json b/src/extensions/npm/extensions/package.json index 63b5e15b43..1fc67414bf 100644 --- a/src/extensions/npm/extensions/package.json +++ b/src/extensions/npm/extensions/package.json @@ -9,6 +9,7 @@ "types": "dist/src/extensions/extension-api.d.ts", "files": [ "dist/**/*.ts", + "__mocks__/*.ts", "dist/**/*.js" ], "author": {