diff --git a/cli.go b/cli.go new file mode 100644 index 0000000..56014c3 --- /dev/null +++ b/cli.go @@ -0,0 +1,26 @@ +package main + +import ( + "encoding/json" + "log" + "os" + + "gitea.nulo.in/Nulo/repro-run/runner" +) + +func main() { + config, err := readConfig() + must(err) + must(runner.Run(config, "rootfs/", "cache/")) +} + +func must(err error, where ...string) { + if err != nil { + log.Fatal(err, where) + } +} + +func readConfig() (config runner.Config, err error) { + err = json.NewDecoder(os.Stdin).Decode(&config) + return +} diff --git a/config.go b/config.go deleted file mode 100644 index 793b781..0000000 --- a/config.go +++ /dev/null @@ -1,16 +0,0 @@ -package main - -import ( - "encoding/json" - "os" -) - -type Config struct { - Command string - Cache []string -} - -func readConfig() (config Config, err error) { - err = json.NewDecoder(os.Stdin).Decode(&config) - return -} diff --git a/alpine/keys/alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub b/runner/alpine/keys/alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub similarity index 100% rename from alpine/keys/alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub rename to runner/alpine/keys/alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub diff --git a/alpine/keys/alpine-devel@lists.alpinelinux.org-5243ef4b.rsa.pub b/runner/alpine/keys/alpine-devel@lists.alpinelinux.org-5243ef4b.rsa.pub similarity index 100% rename from alpine/keys/alpine-devel@lists.alpinelinux.org-5243ef4b.rsa.pub rename to runner/alpine/keys/alpine-devel@lists.alpinelinux.org-5243ef4b.rsa.pub diff --git a/alpine/keys/alpine-devel@lists.alpinelinux.org-5261cecb.rsa.pub b/runner/alpine/keys/alpine-devel@lists.alpinelinux.org-5261cecb.rsa.pub similarity index 100% rename from alpine/keys/alpine-devel@lists.alpinelinux.org-5261cecb.rsa.pub rename to runner/alpine/keys/alpine-devel@lists.alpinelinux.org-5261cecb.rsa.pub diff --git a/alpine/keys/alpine-devel@lists.alpinelinux.org-6165ee59.rsa.pub b/runner/alpine/keys/alpine-devel@lists.alpinelinux.org-6165ee59.rsa.pub similarity index 100% rename from alpine/keys/alpine-devel@lists.alpinelinux.org-6165ee59.rsa.pub rename to runner/alpine/keys/alpine-devel@lists.alpinelinux.org-6165ee59.rsa.pub diff --git a/alpine/keys/alpine-devel@lists.alpinelinux.org-61666e3f.rsa.pub b/runner/alpine/keys/alpine-devel@lists.alpinelinux.org-61666e3f.rsa.pub similarity index 100% rename from alpine/keys/alpine-devel@lists.alpinelinux.org-61666e3f.rsa.pub rename to runner/alpine/keys/alpine-devel@lists.alpinelinux.org-61666e3f.rsa.pub diff --git a/runner/config.go b/runner/config.go new file mode 100644 index 0000000..8ce4f0a --- /dev/null +++ b/runner/config.go @@ -0,0 +1,6 @@ +package runner + +type Config struct { + Command string + Cache []string +} diff --git a/main.go b/runner/runner.go similarity index 91% rename from main.go rename to runner/runner.go index 43baa9a..a447c41 100644 --- a/main.go +++ b/runner/runner.go @@ -1,4 +1,4 @@ -package main +package runner import ( "embed" @@ -14,14 +14,7 @@ import ( //go:embed alpine/keys var alpineKeys embed.FS -func main() { - config, err := readConfig() - must(err) - must(run(config, "rootfs/", "cache/")) - -} - -func run(config Config, rootfs string, cache string) (err error) { +func Run(config Config, rootfs string, cache string) (err error) { if err = os.RemoveAll("rootfs/"); err != nil { return } @@ -124,9 +117,3 @@ https://dl-cdn.alpinelinux.org/alpine/v3.17/community`), 0600); err != nil { return } - -func must(err error, where ...string) { - if err != nil { - log.Fatal(err, where) - } -}