ci: make shadow debug able

This commit is contained in:
yunlzheng
2020-03-12 10:45:53 +08:00
parent e670e22af2
commit f4ffe7b972
5 changed files with 24 additions and 27 deletions
-1
View File
@@ -4,7 +4,6 @@ output
docs
build
.vscode
artifacts
bin
node_modules
.DS_Store
+17 -9
View File
@@ -9,28 +9,36 @@ SERVER_IMAGE = kt-connect-server
# run unit test
unit-test:
mkdir -p artifacts/report
go test -v -json -cover -coverprofile artifacts/report/cover.out ./...
mkdir -p artifacts/report/coverage
go test -v -json -cover -coverprofile artifacts/report/coverage/cover.out ./...
go tool cover -html=artifacts/report/coverage/cover.out -o artifacts/report/coverage/index.html
# build this first,it's the base image
build-builder:
docker build -t $(PREFIX)/$(BUILDER_IMAGE):$(TAG) -f docker/builder/Dockerfile .
# build kt project
build: build-connect build-shadow
# build ktctl
build-connect:
bin/build-ktctl
bin/archive
# build this image before shadow
build-shadow-base:
docker build -t $(PREFIX)/$(SHADOW_BASE_IMAGE):$(TAG) -f docker/shadow/Dockerfile_base .
# build shadow
build-shadow:
GOARCH=amd64 GOOS=linux go build -gcflags "all=-N -l" -o artifacts/shadow/shadow-linux-amd64 cmd/shadow/main.go
docker build -t $(PREFIX)/$(SHADOW_IMAGE):$(TAG) -f docker/shadow/Dockerfile .
docker push $(PREFIX)/$(SHADOW_IMAGE):$(TAG)
# build this first,it's the base image
build-builder:
docker build -t $(PREFIX)/$(BUILDER_IMAGE):$(TAG) -f docker/builder/Dockerfile .
# dlv for debug
build-shadow-dlv:
bin/build-shadow-dlv
build-connect:
bin/build-ktctl
bin/archive
build-dashboard:
docker build -t $(PREFIX)/$(DASHBOARD_IMAGE):$(TAG) -f docker/dashboard/Dockerfile . && \
-10
View File
@@ -1,10 +0,0 @@
FROM registry.cn-hangzhou.aliyuncs.com/rdc-incubator/builder
ENV GO111MODULE on
WORKDIR /go/src/github.com/alibaba/kt-connect/
COPY . .
RUN GOARCH=amd64 GOOS=linux go build -o "output/ktctl/ktctl_linux_amd64" ./cmd/ktctl
RUN GOARCH=386 GOOS=linux go build -o "output/ktctl/ktctl_linux_386" ./cmd/ktctl
RUN GOARCH=amd64 GOOS=darwin go build -o "output/ktctl/ktctl_darwin_amd64" ./cmd/ktctl
RUN GOARCH=386 GOOS=darwin go build -o "output/ktctl/ktctl_darwin_386" ./cmd/ktctl
RUN GOARCH=386 GOOS=windows go build -o "output/ktctl/ktctl_windows_386.exe" ./cmd/ktctl
RUN GOARCH=amd64 GOOS=windows go build -o "output/ktctl/ktctl_windows_amd64.exe" ./cmd/ktctl
+5 -5
View File
@@ -1,11 +1,11 @@
FROM registry.cn-hangzhou.aliyuncs.com/rdc-incubator/builder
FROM golang:1.13
ENV GO111MODULE on
WORKDIR /go/src/github.com/alibaba/kt-connect/
COPY . .
RUN GOARCH=amd64 GOOS=linux go build -gcflags "all=-N -l" -o bin/kt-shadow cmd/shadow/main.go
# Install go debugger
RUN go get -u github.com/go-delve/delve/cmd/dlv
FROM registry.cn-hangzhou.aliyuncs.com/rdc-incubator/shadow-base
COPY --from=0 /go/src/github.com/alibaba/kt-connect/bin/kt-shadow /usr/sbin/kt-shadow
COPY artifacts/shadow/shadow-linux-amd64 /usr/sbin/shadow-linux-amd64
COPY --from=0 /go/bin/dlv /usr/sbin/dlv
RUN apt-get install -y net-tools
ADD docker/shadow/run.sh /run.sh
RUN chmod 755 /run.sh
+2 -2
View File
@@ -5,7 +5,7 @@ cp /root/authorized/authorized_keys /root/.ssh
/usr/sbin/sshd -D &
if [[ "${1}" = "--debug" ]]; then
/usr/sbin/dlv --listen=:2345 --headless=true --api-version=2 --accept-multiclient exec /usr/sbin/kt-shadow
/usr/sbin/dlv --listen=:2345 --headless=true --api-version=2 --accept-multiclient exec /usr/sbin/shadow-linux-amd64
else
/usr/sbin/kt-shadow
/usr/sbin/shadow-linux-amd64
fi