live video streaming server in golang
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

57 lines
1.3 KiB

GO_BIN ?= go
GO_BUILD = $(GO_BIN) build
GO_CLEAN = $(GO_BIN) clean
GO_TEST = $(GO_BIN) test
GO_GET = $(GO_BIN) get
BINARY_NAME = livego
BINARY_UNIX = $(BINARY_NAME)_unix
DOCKER_ACC ?= gwuhaolin
DOCKER_REPO ?= livego
TAG ?= $(shell git describe --tags --abbrev=0 2>/dev/null)
tidy:
ifeq ($(GO111MODULE),on)
$(GO_BIN) mod tidy
else
echo skipping go mod tidy
endif
run: binary
./$(BINARY_NAME)
build:
pkger
$(GO_BUILD) -o $(BINARY_NAME) -v -ldflags="-X main.VERSION=$(TAG)"
make tidy
test:
pkger
$(GO_TEST) -tags ${TAGS} -cover ./...
pkger
make tidy
lint:
golangci-lint --vendor ./... --deadline=1m --skip=internal
## Build WebUI Docker image
build-webui-image:
docker build -t livego-webui -f webui/Dockerfile webui
generate-webui: build-webui-image
if [ ! -d "static" ]; then \
mkdir -p static; \
docker run --rm -v "$$PWD/static":'/src/webui/build' livego-webui npm run build; \
docker run --rm -v "$$PWD/static":'/src/webui/build' livego-webui chown -R $(shell id -u):$(shell id -g) ./build; \
echo 'For more informations show `webui/readme.md`' > $$PWD/static/DONT-EDIT-FILES-IN-THIS-DIRECTORY.md; \
fi
dockerize:
docker build -t $(DOCKER_ACC)/$(DOCKER_REPO):$(TAG) .
docker push $(DOCKER_ACC)/$(DOCKER_REPO):$(TAG)
binary: generate-webui
make build
default: binary