* top-level Makefile The primary motivation here is the `build-web` command, which calls the yarn build and then also copies over JS files. The Dockerfile does this and I always forget when doing it manually. * build-web: cp bundles in yarn command, not Makefile+Dockerfile
35 lines
779 B
Makefile
35 lines
779 B
Makefile
|
|
SHELL = /bin/bash
|
|
.SHELLFLAGS = -o pipefail -c
|
|
|
|
.PHONY: help
|
|
help: ## Print info about all commands
|
|
@echo "Commands:"
|
|
@echo
|
|
@grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[01;32m%-20s\033[0m %s\n", $$1, $$2}'
|
|
|
|
.PHONY: build-web
|
|
build-web: ## Compile web bundle, copy to bskyweb directory
|
|
yarn build-web
|
|
|
|
.PHONY: test
|
|
test: ## Run all tests
|
|
yarn test
|
|
|
|
.PHONY: lint
|
|
lint: ## Run style checks and verify syntax
|
|
yarn run lint
|
|
|
|
#.PHONY: fmt
|
|
#fmt: ## Run syntax re-formatting
|
|
# yarn prettier
|
|
|
|
.PHONY: deps
|
|
deps: ## Installs dependent libs using 'yarn install'
|
|
yarn install --frozen-lockfile
|
|
|
|
.PHONY: nvm-setup
|
|
nvm-setup: ## Use NVM to install and activate node+yarn
|
|
nvm install 18
|
|
nvm use 18
|
|
npm install --global yarn
|