Skip to content

Commit 9f1a302

Browse files
authored
[Update] mv Makefile (jumpserver#221)
1 parent 9b1536b commit 9f1a302

3 files changed

Lines changed: 46 additions & 57 deletions

File tree

Makefile

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
BRANCH := $(shell git symbolic-ref HEAD 2>/dev/null | cut -d"/" -f 3)
2+
BUILD := $(shell git rev-parse --short HEAD)
3+
VERSION = $(BRANCH)-$(BUILD)
4+
BASEPATH := $(shell pwd)
5+
6+
NAME := koko
7+
SOFTWARENAME:=$(NAME)-$(VERSION)
8+
BUILDDIR:=$(BASEPATH)/build
9+
DIRNAME := kokodir
10+
KOKOSRCFILE:= $(BASEPATH)/cmd/koko.go
11+
VERSIONFLAGS="-X 'main.Buildstamp=`date -u '+%Y-%m-%d %I:%M:%S%p'`' -X 'main.Githash=`git rev-parse HEAD`' -X 'main.Goversion=`go version`'"
12+
PLATFORMS := linux darwin
13+
14+
.PHONY: release
15+
release: linux darwin Asset
16+
@echo "编译完成"
17+
rm -rf $(BUILDDIR)/$(DIRNAME)
18+
ls $(BUILDDIR)/koko*
19+
20+
.PHONY: Asset
21+
Asset:
22+
@[ -d $(BUILDDIR) ] || mkdir -p $(BUILDDIR)
23+
@[ -d $(BUILDDIR)/$(DIRNAME) ] || mkdir -p $(BUILDDIR)/$(DIRNAME)
24+
cp -r $(BASEPATH)/cmd/locale $(BUILDDIR)/$(DIRNAME)
25+
cp -r $(BASEPATH)/cmd/static $(BUILDDIR)/$(DIRNAME)
26+
cp -r $(BASEPATH)/cmd/templates $(BUILDDIR)/$(DIRNAME)
27+
cp -r $(BASEPATH)/cmd/config_example.yml $(BUILDDIR)/$(DIRNAME)
28+
29+
.PHONY: $(PLATFORMS)
30+
$(PLATFORMS): Asset
31+
@echo "编译" $@
32+
CGO_ENABLED=0 GOOS=$@ GOARCH=amd64 go build -ldflags $(VERSIONFLAGS) -x -o $(BUILDDIR)/$(NAME)-$@ $(KOKOSRCFILE)
33+
cp $(BUILDDIR)/$(NAME)-$@ $(BUILDDIR)/$(DIRNAME)/$(NAME)
34+
tar czvf $(BUILDDIR)/$(SOFTWARENAME)-$@-amd64.tar.gz -C $(BUILDDIR) $(DIRNAME)
35+
rm $(BUILDDIR)/$(NAME)-$@
36+
37+
.PHONY: docker
38+
docker:
39+
@echo "build docker images"
40+
docker build -t koko --build-arg GOPROXY=$(GOPROXY) .
41+
42+
.PHONY: clean
43+
clean:
44+
-rm -rf $(BUILDDIR)

README.md

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,12 @@ go get github.com/jumpserver/koko
2323

2424
2.编译应用
2525

26-
先进入cmd文件夹, 并构建应用.
27-
```shell
28-
cd cmd
29-
```
26+
在 koko 项目下构建应用.
3027
```shell
3128
make linux
3229
```
3330
> 如果构建成功,会在项目下自动生成build文件夹,里面包含当前分支的linux 64位版本压缩包.
34-
因为使用go mod进行依赖管理,可以设置GOPROXY=https://goproxy.io代理下载部分依赖包
31+
因为使用go mod进行依赖管理,可以设置环境变量 GOPROXY=https://goproxy.io 代理下载部分依赖包
3532

3633
## 使用
3734

@@ -56,10 +53,6 @@ cd kokodir
5653

5754
## 构建docker镜像
5855

59-
进入cmd文件夹
60-
```shell
61-
cd cmd
62-
```
6356
```shell
6457
make docker
6558
```

cmd/Makefile

Lines changed: 0 additions & 48 deletions
This file was deleted.

0 commit comments

Comments
 (0)