]> Nishi Git Mirror - aya.git/commitdiff
Add support for -p/--production global variable
authorJames Mills <prologic@shortcircuit.net.au>
Sat, 18 Mar 2023 03:06:33 +0000 (13:06 +1000)
committerJames Mills <prologic@shortcircuit.net.au>
Sat, 18 Mar 2023 03:06:33 +0000 (13:06 +1000)
main.go

diff --git a/main.go b/main.go
index a6cd21fb5569224b362c12e15becc48809397682..c0c7dd43e0fd5c42ce5e2a3c6070f54ac4d4280c 100644 (file)
--- a/main.go
+++ b/main.go
@@ -52,6 +52,11 @@ README.md`
 // Ignore holds a set of patterns to ignore from parsing a .zsignore file
 var Ignore *ignore.GitIgnore
 
+var (
+       // Production is a global variable to conditionally build for production
+       Production = false
+)
+
 // Vars holds a map of global variables
 type Vars map[string]string
 
@@ -236,6 +241,11 @@ func renameExt(path, oldext, newext string) string {
 // with ZS_ prefix as Vars, so the values can be used inside templates
 func globals() Vars {
        vars := Vars{}
+
+       if Production {
+               vars["production"] = "1"
+       }
+
        for _, e := range os.Environ() {
                pair := strings.Split(e, "=")
                if strings.HasPrefix(pair[0], "ZS_") {
@@ -578,13 +588,11 @@ func ensureFirstPath(p string) {
 }
 
 func init() {
-       RootCmd.PersistentFlags().BoolP(
-               "debug", "d", false,
-               "Enable debug logging",
-       )
+       RootCmd.PersistentFlags().BoolP("debug", "d", false, "enable debug logging $($ZS_DEBUG)")
+       RootCmd.PersistentFlags().BoolVarP(&Production, "production", "p", false, "enable production mode ($ZS_PRODUCTION)")
 
-       ServeCmd.Flags().StringP("bind", "b", ":8000", "Set the [<address>]:<port> to listen on")
-       ServeCmd.Flags().StringP("root", "r", PUBDIR, "Set the root directory to serve")
+       ServeCmd.Flags().StringP("bind", "b", ":8000", "set the [<address>]:<port> to listen on")
+       ServeCmd.Flags().StringP("root", "r", PUBDIR, "set the root directory to serve")
 
        RootCmd.AddCommand(BuildCmd)
        RootCmd.AddCommand(ServeCmd)