diff --git a/cmd/gitlock/README.md b/cmd/gitlock/README.md deleted file mode 100644 index 9683f58cc7..0000000000 --- a/cmd/gitlock/README.md +++ /dev/null @@ -1,7 +0,0 @@ - - -[![GoDoc](https://godoc.org/golang.org/x/build/cmd/gitlock?status.svg)](https://godoc.org/golang.org/x/build/cmd/gitlock) - -# golang.org/x/build/cmd/gitlock - -The gitlock command helps write Dockerfiles with a bunch of lines to lock git dependencies in place. diff --git a/cmd/gitlock/gitlock.go b/cmd/gitlock/gitlock.go deleted file mode 100644 index 410fce23d1..0000000000 --- a/cmd/gitlock/gitlock.go +++ /dev/null @@ -1,199 +0,0 @@ -// Copyright 2017 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// The gitlock command helps write Dockerfiles with a bunch of lines -// to lock git dependencies in place. -package main - -import ( - "bufio" - "bytes" - "flag" - "fmt" - "go/build" - "io" - "io/ioutil" - "log" - "os" - "os/exec" - "path/filepath" - "sort" - "strings" -) - -var ( - ignorePrefixFlag = flag.String("ignore", "golang.org/x/build", "comma-separated list of package prefixes to ignore") - updateFile = flag.String("update", "", "if non-empty, the Dockerfile to update. must have \"# BEGIN deps\" and \"# END deps\" lines.") - tags = flag.String("tags", "", "space-separated tags to pass on to 'go list -tags=XXX target'") -) - -var ignorePrefixes []string - -func parseDockerFile() (header, footer []byte) { - if *updateFile == "" { - return nil, nil - } - var headBuf, footBuf bytes.Buffer - slurp, err := ioutil.ReadFile(*updateFile) - if err != nil { - log.Fatal(err) - } - var sawBegin, sawEnd bool - bs := bufio.NewScanner(bytes.NewReader(slurp)) - for bs.Scan() { - if !sawBegin { - headBuf.Write(bs.Bytes()) - headBuf.WriteByte('\n') - if strings.HasPrefix(bs.Text(), "# BEGIN deps") { - sawBegin = true - continue - } - continue - } - if strings.HasPrefix(bs.Text(), "# END deps") { - sawEnd = true - } - if sawEnd { - footBuf.Write(bs.Bytes()) - footBuf.WriteByte('\n') - } - } - if err := bs.Err(); err != nil { - log.Fatalf("error parsing %s: %v", *updateFile, err) - } - if !sawBegin { - log.Fatalf(`file %s is missing a "# BEGIN deps" line`, *updateFile) - } - if !sawEnd { - log.Fatalf(`file %s is missing a "# END deps" line`, *updateFile) - } - return headBuf.Bytes(), footBuf.Bytes() -} - -func main() { - flag.Parse() - ignorePrefixes = strings.Split(*ignorePrefixFlag, ",") - if flag.NArg() != 1 { - log.SetFlags(0) - log.Fatalf("Usage: gitlock ") - } - mainPkg := flag.Arg(0) // not necessary "package main", but almost certainly. - header, footer := parseDockerFile() - - depOut, err := exec.Command("go", "list", - "-tags="+*tags, - "-f", "{{range .Deps}}{{.}}\n{{end}}", mainPkg).Output() - if err != nil { - log.Fatalf("listing deps of %q: %v", mainPkg, formatExecErr(err)) - } - - var deps []string - for _, pkg := range strings.Split(string(depOut), "\n") { - if ignorePkg(pkg) { - continue - } - deps = append(deps, pkg) - } - sort.Strings(deps) - - // Build a map of root git dir => packages using that root git dir. - var gitDirPkgs = map[string][]string{} - for _, pkg := range deps { - buildPkg, err := build.Import(pkg, "", build.FindOnly) - if err != nil { - log.Fatalf("importing %s: %v", pkg, err) - } - pkgDir := buildPkg.Dir - gitDir, err := findGitDir(pkgDir) - if err != nil { - log.Fatalf("finding git dir of %s: %v", pkgDir, err) - } - gitDirPkgs[gitDir] = append(gitDirPkgs[gitDir], pkg) - } - - // Sorted list of unique git root dirs. - var gitDirs []string - for d := range gitDirPkgs { - gitDirs = append(gitDirs, d) - } - sort.Strings(gitDirs) - - var buf bytes.Buffer - var out io.Writer = os.Stdout - if *updateFile != "" { - buf.Write(header) - buf.WriteByte('\n') - out = &buf - } - for _, gitDir := range gitDirs { - cmd := exec.Command("git", "log", "-n", "1", "--pretty=%H %ci") - cmd.Dir = gitDir - stdout, err := cmd.Output() - if err != nil { - log.Fatal(err) - } - f := strings.SplitN(strings.TrimSpace(string(stdout)), " ", 2) - hash, ymd := f[0], f[1][:10] - - repoName := gitDir[strings.Index(gitDir, "/src/")+5:] - - var comment string - if n := len(gitDirPkgs[gitDir]); n > 1 { - comment = fmt.Sprintf(" `#and %d other pkgs`", n) - } - fmt.Fprintf(out, "# Repo %s at %s (%s)\n", repoName, hash[:7], ymd) - fmt.Fprintf(out, "ENV REV=%s\n", hash) - fmt.Fprintf(out, "RUN go get -d %s%s &&\\\n", gitDirPkgs[gitDir][0], comment) - fmt.Fprintf(out, " (cd /go/src/%s && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV)\n\n", repoName) - } - - fmt.Fprintf(out, "# Optimization to speed up iterative development, not necessary for correctness:\n") - fmt.Fprintf(out, "RUN go install %s\n", strings.Join(deps, " \\\n\t")) - - if *updateFile == "" { - return - } - buf.Write(footer) - if err := ioutil.WriteFile(*updateFile, buf.Bytes(), 0644); err != nil { - log.Fatal(err) - } -} - -func findGitDir(dir string) (string, error) { - dir0 := dir - var lastDir string - for dir != "" && dir != "." && dir != lastDir { - fi, err := os.Stat(filepath.Join(dir, ".git")) - if err == nil && fi.IsDir() { - return dir, nil - } - if err != nil && !os.IsNotExist(err) { - return "", err - } - lastDir = dir - dir = filepath.Dir(dir) - } - return "", fmt.Errorf("no git dir found for %s", dir0) -} - -// ignorePkg reports whether pkg, if it appears as a dependency of the -// root package, should be omitted from the output. -func ignorePkg(pkg string) bool { - if strings.HasPrefix(pkg, "vendor/") || !strings.Contains(pkg, ".") { - return true - } - for _, pfx := range ignorePrefixes { - if strings.HasPrefix(pkg, pfx) { - return true - } - } - return false -} - -func formatExecErr(err error) string { - if ee, ok := err.(*exec.ExitError); ok && len(ee.Stderr) > 0 { - return fmt.Sprintf("%s: %s", err, ee.Stderr) - } - return fmt.Sprint(err) -} diff --git a/cmd/gitmirror/Dockerfile b/cmd/gitmirror/Dockerfile index 332cea8416..d174a648cb 100644 --- a/cmd/gitmirror/Dockerfile +++ b/cmd/gitmirror/Dockerfile @@ -1,7 +1,40 @@ # Copyright 2017 The Go Authors. All rights reserved. # Use of this source code is governed by a BSD-style # license that can be found in the LICENSE file. -FROM debian:jessie + +FROM golang:1.12 AS build +LABEL maintainer "golang-dev@googlegroups.com" + +ENV GO111MODULE=on +ENV GOPROXY=https://proxy.golang.org + +RUN mkdir /gocache +ENV GOCACHE /gocache + +COPY go.mod /go/src/golang.org/x/build/go.mod +COPY go.sum /go/src/golang.org/x/build/go.sum + +WORKDIR /go/src/golang.org/x/build + +# Optimization for iterative docker build speed, not necessary for correctness: +# TODO: write a tool to make writing Go module-friendly Dockerfiles easier. +RUN go install cloud.google.com/go/compute/metadata +COPY gerrit /go/src/golang.org/x/build/gerrit +RUN go install golang.org/x/build/gerrit +COPY buildenv /go/src/golang.org/x/build/buildenv +RUN go install golang.org/x/build/buildenv +COPY maintner /go/src/golang.org/x/build/maintner +COPY cmd/pubsubhelper /go/src/golang.org/x/build/cmd/pubsubhelper +RUN go install golang.org/x/build/maintner/maintnerd/apipb +RUN go install golang.org/x/build/maintner/godata + +COPY . /go/src/golang.org/x/build/ +WORKDIR /go/src/golang.org/x/build/ + +COPY . /go/src/golang.org/x/build/ +RUN go install golang.org/x/build/cmd/gitmirror + +FROM debian:stretch LABEL maintainer "golang-dev@googlegroups.com" # For interacting with the Go source & subrepos @@ -10,7 +43,7 @@ RUN apt-get update && apt-get install -y \ ca-certificates \ git-core \ openssh-client \ - gnupg \ + gnupg dirmngr \ && rm -rf /var/lib/apt/lists/* # See https://github.com/golang/go/issues/23705 @@ -30,5 +63,5 @@ RUN mkdir -p ~/.ssh/ \ && echo "|1|HygGkfOGLovavKfixjXWFJ7Yk1I=|lb/724row8KDTMC1dZiJlHyjxWM= ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==" >> ~/.ssh/known_hosts \ && chmod 0600 ~/.ssh/known_hosts -COPY gitmirror / +COPY --from=build /go/bin/gitmirror / ENTRYPOINT ["/tini", "--", "/gitmirror"] diff --git a/cmd/gitmirror/Dockerfile.0 b/cmd/gitmirror/Dockerfile.0 deleted file mode 100644 index df4b14c723..0000000000 --- a/cmd/gitmirror/Dockerfile.0 +++ /dev/null @@ -1,96 +0,0 @@ -# Copyright 2017 The Go Authors. All rights reserved. -# Use of this source code is governed by a BSD-style -# license that can be found in the LICENSE file. - -# Note that OpenSSH 6.5+ is required for the Github SSH private key, which requires -# at least Debian Jessie (not Wheezy). This uses Jessie: -FROM golang:1.10 -LABEL maintainer "golang-dev@googlegroups.com" - -# BEGIN deps (run `make update-deps` to update) - -# Repo cloud.google.com/go at 5e6e482 (2018-06-26) -ENV REV=5e6e4824f48ade4393d647a2d621fa27238b5954 -RUN go get -d cloud.google.com/go/compute/metadata &&\ - (cd /go/src/cloud.google.com/go && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo github.com/golang/protobuf at 9eb2c01 (2018-06-22) -ENV REV=9eb2c01ac278a5d89ce4b2be68fe4500955d8179 -RUN go get -d github.com/golang/protobuf/proto `#and 5 other pkgs` &&\ - (cd /go/src/github.com/golang/protobuf && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo github.com/google/go-github at 60d040d (2018-06-23) -ENV REV=60d040d2dafa18fa3e86cbf22fbc3208ef9ef1e0 -RUN go get -d github.com/google/go-github/github &&\ - (cd /go/src/github.com/google/go-github && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo github.com/google/go-querystring at 53e6ce1 (2017-01-11) -ENV REV=53e6ce116135b80d037921a7fdd5138cf32d7a8a -RUN go get -d github.com/google/go-querystring/query &&\ - (cd /go/src/github.com/google/go-querystring && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo github.com/gregjones/httpcache at 9cad4c3 (2018-03-06) -ENV REV=9cad4c3443a7200dd6400aef47183728de563a38 -RUN go get -d github.com/gregjones/httpcache &&\ - (cd /go/src/github.com/gregjones/httpcache && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo go4.org at fba789b (2018-01-03) -ENV REV=fba789b7e39ba524b9e60c45c37a50fae63a2a09 -RUN go get -d go4.org/types &&\ - (cd /go/src/go4.org && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo golang.org/x/net at afe8f62 (2018-06-21) -ENV REV=afe8f62b1d6bbd81f31868121a50b06d8188e1f9 -RUN go get -d golang.org/x/net/context `#and 2 other pkgs` &&\ - (cd /go/src/golang.org/x/net && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo golang.org/x/oauth2 at ef14785 (2018-06-20) -ENV REV=ef147856a6ddbb60760db74283d2424e98c87bff -RUN go get -d golang.org/x/oauth2 `#and 5 other pkgs` &&\ - (cd /go/src/golang.org/x/oauth2 && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo golang.org/x/sync at 1d60e46 (2018-03-14) -ENV REV=1d60e4601c6fd243af51cc01ddf169918a5407ca -RUN go get -d golang.org/x/sync/errgroup &&\ - (cd /go/src/golang.org/x/sync && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo golang.org/x/time at fbb02b2 (2018-04-12) -ENV REV=fbb02b2291d28baffd63558aa44b4b56f178d650 -RUN go get -d golang.org/x/time/rate &&\ - (cd /go/src/golang.org/x/time && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo google.golang.org/api at 3639d6d (2018-06-21) -ENV REV=3639d6d93f377f39a1de765fa4ef37b3c7ca8bd9 -RUN go get -d google.golang.org/api/compute/v1 `#and 5 other pkgs` &&\ - (cd /go/src/google.golang.org/api && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Optimization to speed up iterative development, not necessary for correctness: -RUN go install cloud.google.com/go/compute/metadata \ - github.com/golang/protobuf/proto \ - github.com/golang/protobuf/ptypes \ - github.com/golang/protobuf/ptypes/any \ - github.com/golang/protobuf/ptypes/duration \ - github.com/golang/protobuf/ptypes/timestamp \ - github.com/google/go-github/github \ - github.com/google/go-querystring/query \ - github.com/gregjones/httpcache \ - go4.org/types \ - golang.org/x/net/context \ - golang.org/x/net/context/ctxhttp \ - golang.org/x/oauth2 \ - golang.org/x/oauth2/google \ - golang.org/x/oauth2/internal \ - golang.org/x/oauth2/jws \ - golang.org/x/oauth2/jwt \ - golang.org/x/sync/errgroup \ - golang.org/x/time/rate \ - google.golang.org/api/compute/v1 \ - google.golang.org/api/gensupport \ - google.golang.org/api/googleapi \ - google.golang.org/api/googleapi/internal/uritemplates \ - google.golang.org/api/oauth2/v2 -# END deps - -COPY . /go/src/golang.org/x/build/ - -RUN go install golang.org/x/build/cmd/gitmirror diff --git a/cmd/gitmirror/Makefile b/cmd/gitmirror/Makefile index 0cd48e2e6b..d1dcdaa5e4 100644 --- a/cmd/gitmirror/Makefile +++ b/cmd/gitmirror/Makefile @@ -8,26 +8,11 @@ VERSION ?= $(shell git rev-parse --short HEAD) IMAGE_STAGING := gcr.io/go-dashboard-dev/gitmirror IMAGE_PROD := gcr.io/symbolic-datum-552/gitmirror -DOCKER_IMAGE_build0=build0/gitmirror:latest -DOCKER_CTR_build0=gitmirror-build0 - -build0: *.go Dockerfile.0 - docker build --force-rm -f Dockerfile.0 --tag=$(DOCKER_IMAGE_build0) ../.. - -gitmirror: build0 - docker create --name $(DOCKER_CTR_build0) $(DOCKER_IMAGE_build0) - docker cp $(DOCKER_CTR_build0):/go/bin/$@ $@ - docker rm $(DOCKER_CTR_build0) - -update-deps: - go install golang.org/x/build/cmd/gitlock - gitlock --update=Dockerfile.0 golang.org/x/build/cmd/gitmirror - -docker-prod: Dockerfile gitmirror - docker build --force-rm --tag=$(IMAGE_PROD):$(VERSION) . +docker-prod: + docker build -f Dockerfile --force-rm --tag=$(IMAGE_PROD):$(VERSION) ../.. docker tag $(IMAGE_PROD):$(VERSION) $(IMAGE_PROD):$(MUTABLE_VERSION) -docker-staging: Dockerfile gitmirror - docker build --force-rm --tag=$(IMAGE_STAGING):$(VERSION) . +docker-staging: + docker build -f Dockerfile --force-rm --tag=$(IMAGE_STAGING):$(VERSION) ../.. docker tag $(IMAGE_STAGING):$(VERSION) $(IMAGE_STAGING):$(MUTABLE_VERSION) push-prod: docker-prod @@ -41,7 +26,3 @@ deploy-prod: push-prod kubectl rolling-update gitmirror-rc --image=$(IMAGE_PROD):$(VERSION) deploy-staging: push-staging kubectl rolling-update gitmirror-rc --image=$(IMAGE_STAGING):$(VERSION) - -.PHONY: clean -clean: - $(RM) gitmirror diff --git a/cmd/pubsubhelper/Dockerfile b/cmd/pubsubhelper/Dockerfile index 402677dbb8..cfff76f848 100644 --- a/cmd/pubsubhelper/Dockerfile +++ b/cmd/pubsubhelper/Dockerfile @@ -1,9 +1,36 @@ # Copyright 2017 The Go Authors. All rights reserved. # Use of this source code is governed by a BSD-style # license that can be found in the LICENSE file. -FROM scratch + +FROM golang:1.12 AS build +LABEL maintainer "golang-dev@googlegroups.com" + +ENV GO111MODULE=on +ENV GOPROXY=https://proxy.golang.org + +RUN mkdir /gocache +ENV GOCACHE /gocache + +COPY go.mod /go/src/golang.org/x/build/go.mod +COPY go.sum /go/src/golang.org/x/build/go.sum + +WORKDIR /go/src/golang.org/x/build + +# Optimization for iterative docker build speed, not necessary for correctness: +# TODO: write a tool to make writing Go module-friendly Dockerfiles easier. +RUN go install cloud.google.com/go/compute/metadata +RUN go install github.com/bradfitz/go-smtpd/smtpd +RUN go install github.com/jellevandenhooff/dkim +RUN go install go4.org/types +RUN go install golang.org/x/crypto/acme/autocert + +COPY . /go/src/golang.org/x/build/ + +# Install binary to /go/bin: +RUN go install golang.org/x/build/cmd/pubsubhelper + +FROM debian:stretch LABEL maintainer "golang-dev@googlegroups.com" -COPY ca-certificates.crt /etc/ssl/certs/ -COPY pubsubhelper / +COPY --from=build /go/bin/pubsubhelper / ENTRYPOINT ["/pubsubhelper"] diff --git a/cmd/pubsubhelper/Dockerfile.0 b/cmd/pubsubhelper/Dockerfile.0 deleted file mode 100644 index c8b305ee2f..0000000000 --- a/cmd/pubsubhelper/Dockerfile.0 +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright 2017 The Go Authors. All rights reserved. -# Use of this source code is governed by a BSD-style -# license that can be found in the LICENSE file. -FROM golang:1.10 -LABEL maintainer "golang-dev@googlegroups.com" - -# BEGIN deps (run `make update-deps` to update) - -# Repo cloud.google.com/go at 1d0c2da (2018-01-30) -ENV REV=1d0c2da40456a9b47f5376165f275424acc15c09 -RUN go get -d cloud.google.com/go/compute/metadata &&\ - (cd /go/src/cloud.google.com/go && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo github.com/bradfitz/go-smtpd at deb6d62 (2017-04-04) -ENV REV=deb6d623762522f8ad4a55b952001e4215a76cf4 -RUN go get -d github.com/bradfitz/go-smtpd/smtpd &&\ - (cd /go/src/github.com/bradfitz/go-smtpd && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo github.com/jellevandenhooff/dkim at f50fe3d (2015-03-30) -ENV REV=f50fe3d243e1a9c9369eea29813517f3af190518 -RUN go get -d github.com/jellevandenhooff/dkim &&\ - (cd /go/src/github.com/jellevandenhooff/dkim && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo go4.org at 034d17a (2017-05-25) -ENV REV=034d17a462f7b2dcd1a4a73553ec5357ff6e6c6e -RUN go get -d go4.org/types &&\ - (cd /go/src/go4.org && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo golang.org/x/crypto at 1875d0a (2018-01-27) -ENV REV=1875d0a70c90e57f11972aefd42276df65e895b9 -RUN go get -d golang.org/x/crypto/acme `#and 2 other pkgs` &&\ - (cd /go/src/golang.org/x/crypto && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Repo golang.org/x/net at 0ed95ab (2018-01-24) -ENV REV=0ed95abb35c445290478a5348a7b38bb154135fd -RUN go get -d golang.org/x/net/context `#and 2 other pkgs` &&\ - (cd /go/src/golang.org/x/net && (git cat-file -t $REV 2>/dev/null || git fetch -q origin $REV) && git reset --hard $REV) - -# Optimization to speed up iterative development, not necessary for correctness: -RUN go install cloud.google.com/go/compute/metadata \ - github.com/bradfitz/go-smtpd/smtpd \ - github.com/jellevandenhooff/dkim \ - go4.org/types \ - golang.org/x/crypto/acme \ - golang.org/x/crypto/acme/autocert \ - golang.org/x/net/context \ - golang.org/x/net/context/ctxhttp -# END deps - -COPY . /go/src/golang.org/x/build/ - -RUN go install -ldflags "-linkmode=external -extldflags '-static -pthread'" golang.org/x/build/cmd/pubsubhelper diff --git a/cmd/pubsubhelper/Makefile b/cmd/pubsubhelper/Makefile index cf03a77aa6..c8368a7b98 100644 --- a/cmd/pubsubhelper/Makefile +++ b/cmd/pubsubhelper/Makefile @@ -8,31 +8,11 @@ VERSION ?= $(shell git rev-parse --short HEAD) IMAGE_STAGING := gcr.io/go-dashboard-dev/pubsubhelper IMAGE_PROD := gcr.io/symbolic-datum-552/pubsubhelper -DOCKER_IMAGE_build0=build0/pubsubhelper:latest -DOCKER_CTR_build0=pubsubhelper-build0 - -build0: *.go Dockerfile.0 - docker build --force-rm -f Dockerfile.0 --tag=$(DOCKER_IMAGE_build0) ../.. - -pubsubhelper: build0 - docker create --name $(DOCKER_CTR_build0) $(DOCKER_IMAGE_build0) - docker cp $(DOCKER_CTR_build0):/go/bin/$@ $@ - docker rm $(DOCKER_CTR_build0) - -ca-certificates.crt: - docker create --name $(DOCKER_CTR_build0) $(DOCKER_IMAGE_build0) - docker cp $(DOCKER_CTR_build0):/etc/ssl/certs/$@ $@ - docker rm $(DOCKER_CTR_build0) - -update-deps: - go install golang.org/x/build/cmd/gitlock - gitlock --update=Dockerfile.0 golang.org/x/build/cmd/pubsubhelper - -docker-prod: Dockerfile pubsubhelper ca-certificates.crt - docker build --force-rm --tag=$(IMAGE_PROD):$(VERSION) . +docker-prod: + docker build -f Dockerfile --force-rm --tag=$(IMAGE_PROD):$(VERSION) ../.. docker tag $(IMAGE_PROD):$(VERSION) $(IMAGE_PROD):$(MUTABLE_VERSION) -docker-staging: Dockerfile pubsubhelper ca-certificates.crt - docker build --force-rm --tag=$(IMAGE_STAGING):$(VERSION) . +docker-staging: + docker build -f Dockerfile --force-rm --tag=$(IMAGE_STAGING):$(VERSION) ../.. docker tag $(IMAGE_STAGING):$(VERSION) $(IMAGE_STAGING):$(MUTABLE_VERSION) push-prod: docker-prod @@ -48,8 +28,3 @@ deploy-prod: push-prod deploy-staging: push-staging go install golang.org/x/build/cmd/xb xb --staging kubectl set image deployment/pubsubhelper-deployment pubsubhelper=$(IMAGE_STAGING):$(VERSION) - -.PHONY: clean -clean: - $(RM) pubsubhelper - $(RM) ca-certificates.crt diff --git a/maintner/maintnerd/Makefile b/maintner/maintnerd/Makefile index a289014204..e572d44373 100644 --- a/maintner/maintnerd/Makefile +++ b/maintner/maintnerd/Makefile @@ -31,8 +31,3 @@ deploy-prod: push-prod deploy-staging: push-staging go install golang.org/x/build/cmd/xb xb --staging kubectl set image deployment/maintnerd-deployment maintnerd=$(IMAGE_STAGING):$(VERSION) - -.PHONY: clean -clean: - $(RM) maintnerd - $(RM) ca-certificates.crt