diff options
| author | Christine Dodrill <me@christine.website> | 2019-06-15 17:44:13 +0000 |
|---|---|---|
| committer | Christine Dodrill <me@christine.website> | 2019-06-15 17:44:13 +0000 |
| commit | d6c93f6c9ebe6efa26180d04cfeedda9ddec31c6 (patch) | |
| tree | 4cbad2b9edd37c33364ebac14cf2d7b461a5dabd | |
| parent | e9968ab535959d6733af1dba3d84f186a7b9579f (diff) | |
| download | x-d6c93f6c9ebe6efa26180d04cfeedda9ddec31c6.tar.xz x-d6c93f6c9ebe6efa26180d04cfeedda9ddec31c6.zip | |
simplifications
| -rw-r--r-- | cmd/within.website/build.go | 1 | ||||
| -rw-r--r-- | docker.go | 19 | ||||
| -rw-r--r-- | internal/yeet/yeet.go | 14 |
3 files changed, 16 insertions, 18 deletions
diff --git a/cmd/within.website/build.go b/cmd/within.website/build.go index 43923fb..7a7a237 100644 --- a/cmd/within.website/build.go +++ b/cmd/within.website/build.go @@ -18,6 +18,7 @@ func main() { defer cancel() env := append(os.Environ(), []string{"CGO_ENABLED=0", "GOOS=linux"}...) + yeet.ShouldWork(ctx, env, yeet.WD, "go", "generate") yeet.ShouldWork(ctx, env, yeet.WD, "go", "build", "-o=web") yeet.ShouldWork(ctx, env, yeet.WD, "appsluggr", "-web=web") fin, err := os.Open("slug.tar.gz") @@ -16,16 +16,10 @@ func main() { defer cancel() tag := "xena/xperimental" - yeet.ShouldWork(ctx, nil, yeet.WD, "docker", "build", "-t", tag, ".") + yeet.DockerBuild(ctx, yeet.WD, tag) - resTag, err := yeet.DockerTag(ctx, "xena", "xperimental", tag) - if err != nil { - log.Fatal(err) - } - otherResTag, err := yeet.DockerTag(ctx, "docker.pkg.github.com/xe/x", "xperimental", tag) - if err != nil { - log.Fatal(err) - } + resTag := yeet.DockerTag(ctx, "xena", "xperimental", tag) + otherResTag := yeet.DockerTag(ctx, "docker.pkg.github.com/xe/x", "xperimental", tag) gitTag, err := yeet.GitTag(ctx) if err != nil { @@ -34,11 +28,8 @@ func main() { dnsdTag := "xena/dnsd:" + gitTag - yeet.ShouldWork(ctx, nil, filepath.Join(yeet.WD, "cmd", "dnsd"), "docker", "build", "-t", dnsdTag, "--build-arg", "X_VERSION="+gitTag, ".") - dnsdGithubTag, err := yeet.DockerTag(ctx, "docker.pkg.github.com/xe/x", "dnsd", dnsdTag) - if err != nil { - log.Fatal(err) - } + yeet.DockerBuild(ctx, filepath.Join(yeet.WD, "cmd", "dnsd"), dnsdTag, "--build-arg", "X_VERSION="+gitTag) + dnsdGithubTag := yeet.DockerTag(ctx, "docker.pkg.github.com/xe/x", "dnsd", dnsdTag) yeet.ShouldWork(ctx, nil, yeet.WD, "docker", "push", resTag) yeet.ShouldWork(ctx, nil, yeet.WD, "docker", "push", dnsdTag) diff --git a/internal/yeet/yeet.go b/internal/yeet/yeet.go index d066cf0..e769cf6 100644 --- a/internal/yeet/yeet.go +++ b/internal/yeet/yeet.go @@ -45,7 +45,7 @@ func ShouldWork(ctx context.Context, env []string, dir string, cmdName string, a log.Printf("starting process, pwd: %s, cmd: %s, args: %v", dir, loc, args) err = cmd.Run() if err != nil { - log.Fatal(err) + panic(err) } } @@ -77,15 +77,21 @@ func GitTag(ctx context.Context) (string, error) { } // DockerTag tags a docker image -func DockerTag(ctx context.Context, org, repo, image string) (string, error) { +func DockerTag(ctx context.Context, org, repo, image string) string { tag, err := GitTag(ctx) if err != nil { - return "", err + panic(err) } repoTag := fmt.Sprintf("%s/%s:%s", org, repo, tag) ShouldWork(ctx, nil, WD, "docker", "tag", image, repoTag) - return repoTag, nil + return repoTag +} + +// DockerBuild builds a docker image with the given working directory and tag. +func DockerBuild(ctx context.Context, dir, tag string, args ...string) { + args = append([]string{"build", "-t", tag}, args...) + ShouldWork(ctx, nil, dir, "docker", args...) } |
