fix: make env vars name more persistent
This commit is contained in:
parent
844e867d96
commit
1ac060136a
|
@ -22,11 +22,11 @@ const (
|
||||||
// EnvKeyDatabaseURL key for env variable DATABASE_URL
|
// EnvKeyDatabaseURL key for env variable DATABASE_URL
|
||||||
EnvKeyDatabaseURL = "DATABASE_URL"
|
EnvKeyDatabaseURL = "DATABASE_URL"
|
||||||
// EnvAwsRegion key for env variable AWS REGION
|
// EnvAwsRegion key for env variable AWS REGION
|
||||||
EnvAwsRegion = "REGION"
|
EnvAwsRegion = "AWS_REGION"
|
||||||
// EnvAwsAccessKey key for env variable AWS_ACCESS_KEY
|
// EnvAwsAccessKeyID key for env variable AWS_ACCESS_KEY_ID
|
||||||
EnvAwsAccessKey = "AWS_ACCESS_KEY"
|
EnvAwsAccessKeyID = "AWS_ACCESS_KEY_ID"
|
||||||
// EnvAwsAccessKey key for env variable AWS_SECRET_KEY
|
// EnvAwsAccessKey key for env variable AWS_SECRET_ACCESS_KEY
|
||||||
EnvAwsSecretKey = "AWS_SECRET_KEY"
|
EnvAwsSecretAccessKey = "AWS_SECRET_ACCESS_KEY"
|
||||||
// EnvKeyDatabaseName key for env variable DATABASE_NAME
|
// EnvKeyDatabaseName key for env variable DATABASE_NAME
|
||||||
EnvKeyDatabaseName = "DATABASE_NAME"
|
EnvKeyDatabaseName = "DATABASE_NAME"
|
||||||
// EnvKeyDatabaseUsername key for env variable DATABASE_USERNAME
|
// EnvKeyDatabaseUsername key for env variable DATABASE_USERNAME
|
||||||
|
|
|
@ -1,16 +1,18 @@
|
||||||
package dynamodb
|
package dynamodb
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
"github.com/authorizerdev/authorizer/server/constants"
|
|
||||||
"github.com/authorizerdev/authorizer/server/db/models"
|
|
||||||
"github.com/authorizerdev/authorizer/server/memorystore"
|
|
||||||
"github.com/aws/aws-sdk-go/aws"
|
"github.com/aws/aws-sdk-go/aws"
|
||||||
"github.com/aws/aws-sdk-go/aws/credentials"
|
"github.com/aws/aws-sdk-go/aws/credentials"
|
||||||
"github.com/aws/aws-sdk-go/aws/session"
|
"github.com/aws/aws-sdk-go/aws/session"
|
||||||
"github.com/guregu/dynamo"
|
"github.com/guregu/dynamo"
|
||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
|
|
||||||
|
"github.com/authorizerdev/authorizer/server/constants"
|
||||||
|
"github.com/authorizerdev/authorizer/server/db/models"
|
||||||
|
"github.com/authorizerdev/authorizer/server/memorystore"
|
||||||
)
|
)
|
||||||
|
|
||||||
type provider struct {
|
type provider struct {
|
||||||
|
@ -21,8 +23,8 @@ type provider struct {
|
||||||
func NewProvider() (*provider, error) {
|
func NewProvider() (*provider, error) {
|
||||||
dbURL := memorystore.RequiredEnvStoreObj.GetRequiredEnv().DatabaseURL
|
dbURL := memorystore.RequiredEnvStoreObj.GetRequiredEnv().DatabaseURL
|
||||||
awsRegion := os.Getenv(constants.EnvAwsRegion)
|
awsRegion := os.Getenv(constants.EnvAwsRegion)
|
||||||
accessKey := os.Getenv(constants.EnvAwsAccessKey)
|
accessKey := os.Getenv(constants.EnvAwsAccessKeyID)
|
||||||
secretKey := os.Getenv(constants.EnvAwsSecretKey)
|
secretKey := os.Getenv(constants.EnvAwsSecretAccessKey)
|
||||||
|
|
||||||
config := aws.Config{
|
config := aws.Config{
|
||||||
MaxRetries: aws.Int(3),
|
MaxRetries: aws.Int(3),
|
||||||
|
@ -33,6 +35,16 @@ func NewProvider() (*provider, error) {
|
||||||
config.Region = aws.String(awsRegion)
|
config.Region = aws.String(awsRegion)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if accessKey == "" {
|
||||||
|
log.Debugf("%s not found", constants.EnvAwsAccessKeyID)
|
||||||
|
return nil, fmt.Errorf("invalid aws credentials. %s not found", constants.EnvAwsAccessKeyID)
|
||||||
|
}
|
||||||
|
|
||||||
|
if secretKey == "" {
|
||||||
|
log.Debugf("%s not found", constants.EnvAwsSecretAccessKey)
|
||||||
|
return nil, fmt.Errorf("invalid aws credentials. %s not found", constants.EnvAwsSecretAccessKey)
|
||||||
|
}
|
||||||
|
|
||||||
// custom accessKey, secretkey took first priority, if not then fetch config from aws credentials
|
// custom accessKey, secretkey took first priority, if not then fetch config from aws credentials
|
||||||
if accessKey != "" && secretKey != "" {
|
if accessKey != "" && secretKey != "" {
|
||||||
config.Credentials = credentials.NewStaticCredentials(accessKey, secretKey, "")
|
config.Credentials = credentials.NewStaticCredentials(accessKey, secretKey, "")
|
||||||
|
@ -40,8 +52,6 @@ func NewProvider() (*provider, error) {
|
||||||
// static config in case of testing or local-setup
|
// static config in case of testing or local-setup
|
||||||
config.Credentials = credentials.NewStaticCredentials("key", "key", "")
|
config.Credentials = credentials.NewStaticCredentials("key", "key", "")
|
||||||
config.Endpoint = aws.String(dbURL)
|
config.Endpoint = aws.String(dbURL)
|
||||||
} else {
|
|
||||||
log.Info("REGION, AWS_ACCESS_KEY and AWS_SECRET_KEY not found in .env, trying to load default profile from aws credentials")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
session := session.Must(session.NewSession(&config))
|
session := session.Must(session.NewSession(&config))
|
||||||
|
|
20
server/env/env.go
vendored
20
server/env/env.go
vendored
|
@ -78,8 +78,8 @@ func InitAllEnv() error {
|
||||||
osOrganizationName := os.Getenv(constants.EnvKeyOrganizationName)
|
osOrganizationName := os.Getenv(constants.EnvKeyOrganizationName)
|
||||||
osOrganizationLogo := os.Getenv(constants.EnvKeyOrganizationLogo)
|
osOrganizationLogo := os.Getenv(constants.EnvKeyOrganizationLogo)
|
||||||
osAwsRegion := os.Getenv(constants.EnvAwsRegion)
|
osAwsRegion := os.Getenv(constants.EnvAwsRegion)
|
||||||
osAwsAccessKey := os.Getenv(constants.EnvAwsAccessKey)
|
osAwsAccessKey := os.Getenv(constants.EnvAwsAccessKeyID)
|
||||||
osAwsSecretKey := os.Getenv(constants.EnvAwsSecretKey)
|
osAwsSecretKey := os.Getenv(constants.EnvAwsSecretAccessKey)
|
||||||
|
|
||||||
// os bool vars
|
// os bool vars
|
||||||
osAppCookieSecure := os.Getenv(constants.EnvKeyAppCookieSecure)
|
osAppCookieSecure := os.Getenv(constants.EnvKeyAppCookieSecure)
|
||||||
|
@ -129,18 +129,18 @@ func InitAllEnv() error {
|
||||||
envData[constants.EnvAwsRegion] = osAwsRegion
|
envData[constants.EnvAwsRegion] = osAwsRegion
|
||||||
}
|
}
|
||||||
|
|
||||||
if val, ok := envData[constants.EnvAwsAccessKey]; !ok || val == "" {
|
if val, ok := envData[constants.EnvAwsAccessKeyID]; !ok || val == "" {
|
||||||
envData[constants.EnvAwsAccessKey] = osAwsAccessKey
|
envData[constants.EnvAwsAccessKeyID] = osAwsAccessKey
|
||||||
}
|
}
|
||||||
if osAwsAccessKey != "" && envData[constants.EnvAwsAccessKey] != osAwsRegion {
|
if osAwsAccessKey != "" && envData[constants.EnvAwsAccessKeyID] != osAwsRegion {
|
||||||
envData[constants.EnvAwsAccessKey] = osAwsAccessKey
|
envData[constants.EnvAwsAccessKeyID] = osAwsAccessKey
|
||||||
}
|
}
|
||||||
|
|
||||||
if val, ok := envData[constants.EnvAwsSecretKey]; !ok || val == "" {
|
if val, ok := envData[constants.EnvAwsSecretAccessKey]; !ok || val == "" {
|
||||||
envData[constants.EnvAwsSecretKey] = osAwsSecretKey
|
envData[constants.EnvAwsSecretAccessKey] = osAwsSecretKey
|
||||||
}
|
}
|
||||||
if osAwsSecretKey != "" && envData[constants.EnvAwsSecretKey] != osAwsRegion {
|
if osAwsSecretKey != "" && envData[constants.EnvAwsSecretAccessKey] != osAwsRegion {
|
||||||
envData[constants.EnvAwsSecretKey] = osAwsSecretKey
|
envData[constants.EnvAwsSecretAccessKey] = osAwsSecretKey
|
||||||
}
|
}
|
||||||
|
|
||||||
if val, ok := envData[constants.EnvKeyAppURL]; !ok || val == "" {
|
if val, ok := envData[constants.EnvKeyAppURL]; !ok || val == "" {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user