aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristine Dodrill <me@christine.website>2019-06-15 17:44:13 +0000
committerChristine Dodrill <me@christine.website>2019-06-15 17:44:13 +0000
commitd6c93f6c9ebe6efa26180d04cfeedda9ddec31c6 (patch)
tree4cbad2b9edd37c33364ebac14cf2d7b461a5dabd
parente9968ab535959d6733af1dba3d84f186a7b9579f (diff)
downloadx-d6c93f6c9ebe6efa26180d04cfeedda9ddec31c6.tar.xz
x-d6c93f6c9ebe6efa26180d04cfeedda9ddec31c6.zip
simplifications
-rw-r--r--cmd/within.website/build.go1
-rw-r--r--docker.go19
-rw-r--r--internal/yeet/yeet.go14
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")
diff --git a/docker.go b/docker.go
index 823f4f4..3c210a5 100644
--- a/docker.go
+++ b/docker.go
@@ -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...)
}