From 30bfd2ebef8b8538c61a34779c33141b4c900ef3 Mon Sep 17 00:00:00 2001 From: Maksym Pavlenko Date: Sun, 24 Feb 2019 14:19:55 -0800 Subject: [PATCH] Use Makefile --- .gitignore | 2 +- Dockerfile | 13 ------------- Makefile | 23 +++++++++++++++++++++++ build.sh | 4 ---- buildspec.yml | 9 ++------- cmd/app/.gitignore | 1 + cmd/app/Dockerfile | 4 ++++ cmd/app/Makefile | 14 ++++++++++++++ cmd/nginx/Makefile | 4 ++++ cmd/ytdl/Makefile | 4 ++++ cmd/ytdl/build.sh | 4 ---- nginx.sh | 4 ---- 12 files changed, 53 insertions(+), 33 deletions(-) delete mode 100644 Dockerfile create mode 100644 Makefile delete mode 100755 build.sh create mode 100644 cmd/app/.gitignore create mode 100644 cmd/app/Dockerfile create mode 100644 cmd/app/Makefile create mode 100644 cmd/nginx/Makefile create mode 100644 cmd/ytdl/Makefile delete mode 100755 cmd/ytdl/build.sh delete mode 100755 nginx.sh diff --git a/.gitignore b/.gitignore index 29f951d..def6daa 100644 --- a/.gitignore +++ b/.gitignore @@ -24,7 +24,7 @@ _testmain.go *.prof .idea/ - +bin/ node_modules/ dist/ venv/ diff --git a/Dockerfile b/Dockerfile deleted file mode 100644 index 54a268f..0000000 --- a/Dockerfile +++ /dev/null @@ -1,13 +0,0 @@ -FROM golang:1.11.2 AS backend_builder -WORKDIR /podsync -COPY . . -ENV GOOS=linux -ENV GOARCH=amd64 -ENV CGO_ENABLED=0 -RUN go build -o server -v ./cmd/app - -FROM alpine -RUN apk --update --no-cache add ca-certificates -WORKDIR /app/ -COPY --from=backend_builder /podsync/server . -ENTRYPOINT ["/app/server"] \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..abd514e --- /dev/null +++ b/Makefile @@ -0,0 +1,23 @@ +SUBDIRS := cmd/app cmd/nginx cmd/ytdl +GOLANGCI := ./bin/golangci-lint + +.PHONY: push +push: + for d in $(SUBDIRS); do $(MAKE) -C $$d push; done + +$(GOLANGCI): + curl -sfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh| sh -s -- -b ./bin v1.15.0 + ./bin/golangci-lint --version + +.PHONY: lint +lint: $(GOLANGCI) + ./bin/golangci-lint run + +.PHONY: test +test: + go test -short ./... + +.PHONY: up +up: + docker-compose pull + docker-compose up -d diff --git a/build.sh b/build.sh deleted file mode 100755 index 0110d28..0000000 --- a/build.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash - -docker build -t mxpv/podsync . -docker push mxpv/podsync diff --git a/buildspec.yml b/buildspec.yml index 5649a99..ff0def3 100644 --- a/buildspec.yml +++ b/buildspec.yml @@ -8,12 +8,7 @@ env: VIMEO_TEST_API_KEY: "/CodeBuild/vimeoKey" phases: - install: - commands: - - go version - - curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b /usr/local/bin v1.12.5 - - golangci-lint --version build: commands: - - go test -short ./... - - golangci-lint run \ No newline at end of file + - make lint + - make test diff --git a/cmd/app/.gitignore b/cmd/app/.gitignore new file mode 100644 index 0000000..13cd1fa --- /dev/null +++ b/cmd/app/.gitignore @@ -0,0 +1 @@ +server \ No newline at end of file diff --git a/cmd/app/Dockerfile b/cmd/app/Dockerfile new file mode 100644 index 0000000..defbaa0 --- /dev/null +++ b/cmd/app/Dockerfile @@ -0,0 +1,4 @@ +FROM alpine +RUN apk --update --no-cache add ca-certificates +COPY ./server /server +ENTRYPOINT ["/server"] \ No newline at end of file diff --git a/cmd/app/Makefile b/cmd/app/Makefile new file mode 100644 index 0000000..4d04c51 --- /dev/null +++ b/cmd/app/Makefile @@ -0,0 +1,14 @@ +OUT := server +SRC := $(wildcard *.go) + +build: $(SRC) + GOOS=linux go build -v -o $(OUT) + +.PHONY: push +push: build + docker build -t mxpv/podsync . + docker push mxpv/podsync + +.PHONY: clean +clean: + - rm -f $(OUT) diff --git a/cmd/nginx/Makefile b/cmd/nginx/Makefile new file mode 100644 index 0000000..2f9d2bc --- /dev/null +++ b/cmd/nginx/Makefile @@ -0,0 +1,4 @@ +.PHONY: push +push: + docker build -t mxpv/nginx -f Dockerfile ../../ + docker push mxpv/nginx diff --git a/cmd/ytdl/Makefile b/cmd/ytdl/Makefile new file mode 100644 index 0000000..85816ce --- /dev/null +++ b/cmd/ytdl/Makefile @@ -0,0 +1,4 @@ +.PHONY: push +push: + docker build -t mxpv/ytdl . + docker push mxpv/ytdl \ No newline at end of file diff --git a/cmd/ytdl/build.sh b/cmd/ytdl/build.sh deleted file mode 100755 index bf33ee7..0000000 --- a/cmd/ytdl/build.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash - -docker build -t mxpv/ytdl . -docker push mxpv/ytdl \ No newline at end of file diff --git a/nginx.sh b/nginx.sh deleted file mode 100755 index 9c36004..0000000 --- a/nginx.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/env bash - -docker build -t mxpv/nginx -f cmd/nginx/Dockerfile . -docker push mxpv/nginx