github.com/qiniu/go-sdk/v7@v7.27.0/internal/env/env.go (about)

     1  package env
     2  
     3  import (
     4  	"os"
     5  	"strings"
     6  )
     7  
     8  const (
     9  	environmentVariableNameQiniuAccessKey                 = "QINIU_ACCESS_KEY"
    10  	environmentVariableNameQiniuSecretKey                 = "QINIU_SECRET_KEY"
    11  	environmentVariableNameQiniuConfigFile                = "QINIU_CONFIG_FILE"
    12  	environmentVariableNameQiniuProfile                   = "QINIU_PROFILE"
    13  	environmentVariableNameQiniuBucketURL                 = "QINIU_BUCKET_URL"
    14  	environmentVariableNameDisableQiniuSecureProtocol     = "DISABLE_QINIU_SECURE_PROTOCOL"
    15  	environmentVariableNameDisableQiniuTimestampSignature = "DISABLE_QINIU_TIMESTAMP_SIGNATURE"
    16  )
    17  
    18  func CredentialsFromEnvironment() (string, string) {
    19  	accessKey := os.Getenv(environmentVariableNameQiniuAccessKey)
    20  	secretKey := os.Getenv(environmentVariableNameQiniuSecretKey)
    21  	if accessKey == "" || secretKey == "" {
    22  		return "", ""
    23  	}
    24  	return accessKey, secretKey
    25  }
    26  
    27  func ConfigFileFromEnvironment() string {
    28  	return os.Getenv(environmentVariableNameQiniuConfigFile)
    29  }
    30  
    31  func ProfileFromEnvironment() string {
    32  	return os.Getenv(environmentVariableNameQiniuProfile)
    33  }
    34  
    35  func BucketURLsFromEnvironment() []string {
    36  	bucketUrls := os.Getenv(environmentVariableNameQiniuBucketURL)
    37  	if bucketUrls == "" {
    38  		return nil
    39  	}
    40  	urls := strings.Split(bucketUrls, ",")
    41  	for i := range urls {
    42  		urls[i] = strings.TrimSpace(urls[i])
    43  	}
    44  	return urls
    45  }
    46  
    47  func DisableSecureProtocolFromEnvironment() (bool, bool) {
    48  	value := strings.ToLower(os.Getenv(environmentVariableNameDisableQiniuSecureProtocol))
    49  	if value == "" {
    50  		return false, false
    51  	}
    52  	return value == "true" || value == "yes" || value == "y" || value == "1", true
    53  }
    54  
    55  func DisableQiniuTimestampSignatureFromEnvironment() (bool, bool) {
    56  	value := strings.ToLower(os.Getenv(environmentVariableNameDisableQiniuTimestampSignature))
    57  	if value == "" {
    58  		return false, false
    59  	}
    60  	return value == "true" || value == "yes" || value == "y" || value == "1", true
    61  }