fasten-onprem/Makefile

76 lines
2.5 KiB
Makefile
Raw Normal View History

.ONESHELL: # Applies to every targets in the file! .ONESHELL instructs make to invoke a single instance of the shell and provide it with the entire recipe, regardless of how many lines it contains.
.SHELLFLAGS = -ec
########################################################################################################################
# General
########################################################################################################################
.PHONY: test
test: test-backend test-frontend
.PHONY: serve-frontend
serve-frontend:
cd frontend && yarn dist -- -c sandbox
.PHONY: serve-frontend-prod
serve-frontend-prod:
cd frontend && yarn dist -- -c prod
.PHONY: serve-backend
serve-backend:
go run backend/cmd/fasten/fasten.go start --config ./config.dev.yaml --debug
########################################################################################################################
# Backend
########################################################################################################################
.PHONY: clean-backend
clean-backend:
go clean
.PHONY: dep-backend
dep-backend:
go mod vendor
.PHONY: test-backend
test-backend: dep-backend
go vet ./...
go test -v ./...
.PHONY: test-backend-coverage
test-backend-coverage: dep-backend
go test -coverprofile=backend-coverage.txt -covermode=atomic -v ./...
########################################################################################################################
# Frontend
########################################################################################################################
.PHONY: dep-frontend
dep-frontend:
cd frontend
yarn install --frozen-lockfile
.PHONY: build-frontend-sandbox
build-frontend-sandbox: dep-frontend
2023-01-26 04:08:13 -07:00
cd frontend
yarn run build -- --configuration sandbox --output-path=../dist
.PHONY: build-frontend-prod
build-frontend-prod: dep-frontend
2023-01-26 04:08:13 -07:00
cd frontend
yarn run build -- --configuration prod --output-path=../dist
.PHONY: test-frontend
# reduce logging, disable angular-cli analytics for ci environment
test-frontend: dep-frontend
2022-10-14 10:04:24 -06:00
cd frontend && npx ng test --watch=false
.PHONY: test-frontend-coverage
# reduce logging, disable angular-cli analytics for ci environment
test-frontend-coverage: dep-frontend
2022-10-14 10:04:24 -06:00
cd frontend && npx ng test --watch=false --code-coverage
2022-10-14 10:09:16 -06:00
.PHONY: test-frontend-coverage-ci
2022-10-14 10:09:16 -06:00
# reduce logging, disable angular-cli analytics for ci environment
test-frontend-coverage-ci: dep-frontend
2022-10-14 10:19:51 -06:00
cd frontend && npx ng test --watch=false --code-coverage --browsers=ChromeHeadlessCI