diff options
| author | Christine Dodrill <me@christine.website> | 2018-10-05 14:03:55 -0700 |
|---|---|---|
| committer | Christine Dodrill <me@christine.website> | 2018-10-05 14:31:22 -0700 |
| commit | c63e73391d634bdb25b3df1c582bb56b6d9a0963 (patch) | |
| tree | 81ec642a36c4ca84b3d0d4dfd8d2a91d09f762cd /mastodon | |
| parent | dbeba1e5c5c0bc534a515eb298ee4f1d49df4d20 (diff) | |
| download | x-c63e73391d634bdb25b3df1c582bb56b6d9a0963.tar.xz x-c63e73391d634bdb25b3df1c582bb56b6d9a0963.zip | |
mastodon/sona-pi-toki-pona: build and deploy in go, not shell
Diffstat (limited to 'mastodon')
| -rw-r--r-- | mastodon/sona-pi-toki-pona/build.go | 54 | ||||
| -rwxr-xr-x | mastodon/sona-pi-toki-pona/build.sh | 7 |
2 files changed, 54 insertions, 7 deletions
diff --git a/mastodon/sona-pi-toki-pona/build.go b/mastodon/sona-pi-toki-pona/build.go new file mode 100644 index 0000000..4c8010c --- /dev/null +++ b/mastodon/sona-pi-toki-pona/build.go @@ -0,0 +1,54 @@ +//+build ignore + +// Builds and deploys the application to minipaas. +package main + +import ( + "context" + "log" + "os" + + "github.com/Xe/x/internal" + "github.com/Xe/x/internal/greedo" + "github.com/Xe/x/internal/minipaas" +) + +func main() { + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + + env := append(os.Environ(), []string{"CGO_ENABLED=0", "GOOS=linux"}...) + internal.ShouldWork(ctx, env, internal.WD, "vgo", "build", "-o=sona-pi-toki-pona") + internal.ShouldWork(ctx, env, internal.WD, "appsluggr", "-worker=sona-pi-toki-pona") + fin, err := os.Open("slug.tar.gz") + if err != nil { + log.Fatal(err) + } + defer fin.Close() + + fname := "sona-pi-toki-pona-" + internal.DateTag + ".tar.gz" + pubURL, err := greedo.CopyFile(fname, fin) + if err != nil { + log.Fatal(err) + } + + mp, err := minipaas.Dial() + if err != nil { + log.Fatal(err) + } + defer mp.Close() + + sess, err := mp.NewSession() + if err != nil { + log.Fatal(err) + } + defer sess.Close() + sess.Stdin = os.Stdin + sess.Stdout = os.Stdout + sess.Stderr = os.Stderr + + err = sess.Run("tar:from sona-pi-toki-pona " + pubURL) + if err != nil { + log.Fatal(err) + } +} diff --git a/mastodon/sona-pi-toki-pona/build.sh b/mastodon/sona-pi-toki-pona/build.sh deleted file mode 100755 index a92b6f8..0000000 --- a/mastodon/sona-pi-toki-pona/build.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -CGO_ENABLED=0 GOOS=linux go build -o sona-pi-toki-pona -appsluggr -fname sona-pi-toki-pona.tar.gz -worker sona-pi-toki-pona -scp sona-pi-toki-pona.tar.gz xena@greedo.xeserv.us:public_html/files -ssh dokku@minipaas.xeserv.us tar:from sona-pi-toki-pona https://xena.greedo.xeserv.us/files/sona-pi-toki-pona.tar.gz - |
