bitbucket.org/Aishee/synsec@v0.0.0-20210414005726-236fc01a153d/cmd/synsec/Makefile (about)

     1  # Go parameters
     2  GOCMD=go
     3  GOBUILD=$(GOCMD) build
     4  GOCLEAN=$(GOCMD) clean
     5  GOTEST=$(GOCMD) test
     6  GOGET=$(GOCMD) get
     7  
     8  SYNSEC_BIN=synsec
     9  PREFIX?="/"
    10  CFG_PREFIX = $(PREFIX)"/etc/synsec/config/"
    11  BIN_PREFIX = $(PREFIX)"/usr/local/bin/"
    12  DATA_PREFIX = $(PREFIX)"/var/run/synsec/"
    13  PID_DIR = $(PREFIX)"/var/run/"
    14  
    15  SYSTEMD_PATH_FILE="/etc/systemd/system/synsec.service"
    16  
    17  all: clean test build
    18  
    19  build: clean
    20  	$(GOBUILD) $(LD_OPTS) -o $(SYNSEC_BIN) -v
    21  
    22  static: clean
    23  	$(GOBUILD) -o $(SYNSEC_BIN) -v -a -tags netgo -ldflags '-w -extldflags "-static"'
    24  
    25  test:
    26  	$(GOTEST) -v ./...
    27  
    28  clean:
    29  	rm -f $(SYNSEC_BIN)
    30  
    31  .PHONY: install
    32  install: install-conf install-bin
    33  
    34  .PHONY: install-conf
    35  install-conf:
    36  	mkdir -p $(DATA_PREFIX) || exit
    37  	(cd ../.. / && find ./data -type f -exec install -Dm 755 "{}" "$(DATA_PREFIX){}" \; && cd ./cmd/synsec) || exit
    38  	(cd ../../config && find ./patterns -type f -exec install -Dm 755 "{}" "$(CFG_PREFIX){}" \; && cd ../cmd/synsec) || exit
    39  	mkdir -p "$(CFG_PREFIX)" || exit
    40  	mkdir -p "$(CFG_PREFIX)/parsers" || exit
    41  	mkdir -p "$(CFG_PREFIX)/scenarios" || exit
    42  	mkdir -p "$(CFG_PREFIX)/postoverflows" || exit
    43  	mkdir -p "$(CFG_PREFIX)/collections" || exit
    44  	mkdir -p "$(CFG_PREFIX)/patterns" || exit
    45  	install -v -m 755 -D ../../config/prod.yaml "$(CFG_PREFIX)" || exit
    46  	install -v -m 755 -D ../../config/dev.yaml "$(CFG_PREFIX)" || exit
    47  	install -v -m 755 -D ../../config/acquis.yaml "$(CFG_PREFIX)" || exit
    48  	install -v -m 755 -D ../../config/profiles.yaml "$(CFG_PREFIX)" || exit
    49  	install -v -m 755 -D ../../config/api.yaml "$(CFG_PREFIX)" || exit
    50  	mkdir -p $(PID_DIR) || exit
    51  	PID=$(PID_DIR) DATA=$(DATA_PREFIX)"/data/" CFG=$(CFG_PREFIX) envsubst < ../../config/prod.yaml > $(CFG_PREFIX)"/default.yaml"	
    52  
    53  .PHONY: install-bin
    54  install-bin:
    55  	install -v -m 755 -D "$(SYNSEC_BIN)" "$(BIN_PREFIX)/$(SYNSEC_BIN)" || exit
    56  
    57  .PHONY: systemd"$(BIN_PREFI"$(BIN_PREFIX)/$(SYNSEC_BIN)""$(BIN_PREFIX)/$(SYNSEC_BIN)"X)/$(SYNSEC_BIN)"
    58  systemd: install
    59  	CFG=$(CFG_PREFIX) PID=$(PID_DIR) BIN=$(BIN_PREFIX)"/"$(SYNSEC_BIN) envsubst < ../../config/synsec.service > "$(SYSTEMD_PATH_FILE)"
    60  	systemctl daemon-reload
    61  
    62  .PHONY: uninstall
    63  uninstall:
    64  	rm -rf $(CFG_PREFIX)
    65  	rm -rf $(DATA_PREFIX)
    66  	rm -f "$(BIN_PREFIX)/$(SYNSEC_BIN)"
    67  	rm -f "$(SYSTEMD_PATH_FILE)"