51 lines
1.2 KiB
Makefile
51 lines
1.2 KiB
Makefile
DOCKER_IMAGE=tomwright/mermaid-server:latest
|
|
CONTAINER_NAME=mermaid-server
|
|
|
|
docker-image:
|
|
docker build -t ${DOCKER_IMAGE} .
|
|
|
|
docker-run:
|
|
docker run -d --name ${CONTAINER_NAME} -p 80:80 ${DOCKER_IMAGE}
|
|
|
|
docker-stop:
|
|
docker stop ${CONTAINER_NAME} || true
|
|
|
|
docker-rm:
|
|
make docker-stop
|
|
docker rm ${CONTAINER_NAME} || true
|
|
|
|
docker-logs:
|
|
docker logs -f ${CONTAINER_NAME}
|
|
|
|
docker-push:
|
|
docker push ${DOCKER_IMAGE}
|
|
|
|
# Directories
|
|
IN_DIR = ./in
|
|
OUT_DIR = ./out
|
|
|
|
# The pat for the Mermaid CLI
|
|
MERMAIDCLI_PATH=./mermaidcli/node_modules/.bin/mmdc
|
|
|
|
# Define arguments as separate variables
|
|
ARG_MERMAIDCLI = --mermaid=$(MERMAIDCLI_PATH)
|
|
ARG_PUPPETCONF = --puppeteer=./mermaidcli/puppeteer-config.json
|
|
ARG_INDIR = --in=$(IN_DIR)
|
|
ARG_OUTDIR = --out=$(OUT_DIR)
|
|
|
|
# Combine arguments into a single variable (space-separated)
|
|
ARGS = $(ARG_MERMAIDCLI) $(ARG_PUPPETCONF) $(ARG_INDIR) $(ARG_OUTDIR)
|
|
|
|
# Target to create input and output directories
|
|
create_in_out:
|
|
mkdir -p $(IN_DIR) $(OUT_DIR)
|
|
|
|
# Install mermaid-cli using npm
|
|
install_mermaidcli:
|
|
npm --prefix mermaidcli install
|
|
|
|
# Target to run the Go application
|
|
run: create_in_out install_mermaidcli
|
|
go run cmd/app/main.go $(ARGS)
|
|
|