diff --git a/README.md b/README.md index ac8f5747..a53ce8d6 100644 --- a/README.md +++ b/README.md @@ -141,16 +141,15 @@ docker push $ACR_SERVER/fabrikam.dronedelivery.deliveryservice:0.1.0 Create Kubernetes secrets ```bash +export REDIS_CONNECTION_STRING=[YOUR_REDIS_CONNECTION_STRING] + export COSMOSDB_KEY=$(az cosmosdb list-keys --name $COSMOSDB_NAME --resource-group $RESOURCE_GROUP --query primaryMasterKey) && \ export COSMOSDB_ENDPOINT=$(az cosmosdb show --name $COSMOSDB_NAME --resource-group $RESOURCE_GROUP --query documentEndpoint) && \ -export REDIS_HOSTNAME=$(az redis show -n $REDIS_NAME -g $RESOURCE_GROUP --query hostName) && \ -export REDIS_KEY=$(az redis list-keys --name $REDIS_NAME --resource-group $RESOURCE_GROUP --query primaryKey) kubectl --namespace bc-shipping create --save-config=true secret generic delivery-storageconf \ --from-literal=CosmosDB_Key=${COSMOSDB_KEY[@]//\"/} \ --from-literal=CosmosDB_Endpoint=${COSMOSDB_ENDPOINT[@]//\"/} \ - --from-literal=Redis_HostName=${REDIS_HOSTNAME[@]//\"/} \ - --from-literal=Redis_PrimaryKey=${REDIS_KEY[@]//\"/} \ + --from-literal=Redis_ConnectionString=${REDIS_CONNECTION_STRING} \ --from-literal=EH_ConnectionString= \ --from-literal=Redis_SecondaryKey= ``` diff --git a/k8s/delivery.yaml b/k8s/delivery.yaml index 8503f5fe..01a1e2d1 100644 --- a/k8s/delivery.yaml +++ b/k8s/delivery.yaml @@ -64,27 +64,11 @@ spec: - name: DOCDB_COLLECTIONID valueFrom: value: "CosmosDB_CollectionId" - - name: REDIS_HOSTNAME - valueFrom: - secretKeyRef: - name: delivery-storageconf - key: Redis_HostName - - name: REDIS_PRIMARYKEY - valueFrom: - secretKeyRef: - name: delivery-storageconf - key: Redis_PrimaryKey - - name: REDIS_SECONDARYKEY + - name: REDIS_CONNSTR valueFrom: secretKeyRef: name: delivery-storageconf - key: Redis_SecondaryKey - - name: REDIS_SSLPORT - value: "6380" - - name: REDIS_PORT - value: "6379" - - name: REDIS_SSL - value: "false" + key: Redis_ConnectionString - name: EH_CONNSTR valueFrom: secretKeyRef: diff --git a/src/bc-shipping/delivery/Fabrikam.DroneDelivery.DeliveryService/Services/RedisCache.cs b/src/bc-shipping/delivery/Fabrikam.DroneDelivery.DeliveryService/Services/RedisCache.cs index 04251931..dbfad577 100644 --- a/src/bc-shipping/delivery/Fabrikam.DroneDelivery.DeliveryService/Services/RedisCache.cs +++ b/src/bc-shipping/delivery/Fabrikam.DroneDelivery.DeliveryService/Services/RedisCache.cs @@ -49,16 +49,10 @@ private static IDatabase cache } } - public static void Configure(int db, string sslPort, string nonSSLPort, string ssl, string hostName, string primaryKey, string secondaryKey, ILoggerFactory loggerFactory) + public static void Configure(int db, string connectionString, ILoggerFactory loggerFactory) { DB = db; - var dnsTask = System.Net.Dns.GetHostAddressesAsync(hostName); - var addresses = dnsTask.Result; - var connect = string.Join(",", addresses.Select(x => x.MapToIPv4().ToString() + ":" + nonSSLPort)); - if (ssl.ToLower().Equals("false")) - ConnectionString = $"{connect},abortConnect=false,ssl={ssl.ToLower()},password={primaryKey}"; - else - ConnectionString = $"{hostName},abortConnect=false,ssl={ssl.ToLower()},password={primaryKey}"; + ConnectionString = connectionString; logger = loggerFactory.CreateLogger(nameof(RedisCache)); } diff --git a/src/bc-shipping/delivery/Fabrikam.DroneDelivery.DeliveryService/Startup.cs b/src/bc-shipping/delivery/Fabrikam.DroneDelivery.DeliveryService/Startup.cs index 6c5b2979..97580799 100644 --- a/src/bc-shipping/delivery/Fabrikam.DroneDelivery.DeliveryService/Startup.cs +++ b/src/bc-shipping/delivery/Fabrikam.DroneDelivery.DeliveryService/Startup.cs @@ -89,8 +89,8 @@ public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerF //TODO look into creating a factory of DocDBRepos/RedisCache/EventHubMessenger DocumentDBRepository.Configure(Configuration["DOCDB_ENDPOINT"], Configuration["DOCDB_KEY"], Configuration["DOCDB_DATABASEID"], Configuration["DOCDB_COLLECTIONID"], loggerFactory); - RedisCache.Configure(Constants.RedisCacheDBId_Delivery, Configuration["REDIS_SSLPORT"], Configuration["REDIS_PORT"], Configuration["REDIS_SSL"], Configuration["REDIS_HOSTNAME"], Configuration["REDIS_PRIMARYKEY"], Configuration["REDIS_SECONDARYKEY"], loggerFactory); - RedisCache.Configure(Constants.RedisCacheDBId_DeliveryStatus, Configuration["REDIS_SSLPORT"], Configuration["REDIS_PORT"], Configuration["REDIS_SSL"], Configuration["REDIS_HOSTNAME"], Configuration["REDIS_PRIMARYKEY"], Configuration["REDIS_SECONDARYKEY"], loggerFactory); + RedisCache.Configure(Constants.RedisCacheDBId_Delivery, Configuration["REDIS_CONNSTR"], loggerFactory); + RedisCache.Configure(Constants.RedisCacheDBId_DeliveryStatus, Configuration["REDIS_CONNSTR"], loggerFactory); EventHubSender.Configure(Configuration["EH_CONNSTR"], Configuration["EH_ENTITYPATH"]);