mirror of
https://github.com/golang/go
synced 2024-11-05 17:26:11 -07:00
ee6b03148c
See bug for more details on exactly what was migrated. Notably: * No more Google-internal deployment scripts; see README.godoc-app and the Makefile for details. * Build tag "golangorg" is used for the godoc configuration used for golang.org. * Use of App Engine libraries replaced with GCP client libraries. * Redis is used to replace App Engine memcache. * Google analytics is controlled by an environment variable. * Regression tests have been migrated from Google-internal. * hg -> git hash map is moved from Google-internal. Updates golang/go#27205. Change-Id: Ia0a983f239c50eda8be2363494c8b784f60c2c6d Reviewed-on: https://go-review.googlesource.com/133355 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
42 lines
873 B
Go
42 lines
873 B
Go
// Copyright 2018 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
// Package env provides environment information for the godoc server running on
|
|
// golang.org.
|
|
package env
|
|
|
|
import (
|
|
"log"
|
|
"os"
|
|
"strconv"
|
|
)
|
|
|
|
var (
|
|
isProd = boolEnv("GODOC_PROD")
|
|
enforceHosts = boolEnv("GODOC_ENFORCE_HOSTS")
|
|
)
|
|
|
|
// IsProd reports whether the server is running in its production configuration
|
|
// on golang.org.
|
|
func IsProd() bool {
|
|
return isProd
|
|
}
|
|
|
|
// EnforceHosts reports whether host filtering should be enforced.
|
|
func EnforceHosts() bool {
|
|
return enforceHosts
|
|
}
|
|
|
|
func boolEnv(key string) bool {
|
|
v := os.Getenv(key)
|
|
if v == "" {
|
|
return false
|
|
}
|
|
b, err := strconv.ParseBool(v)
|
|
if err != nil {
|
|
log.Fatalf("environment variable %s (%q) must be a boolean", key, v)
|
|
}
|
|
return b
|
|
}
|