private static string ReplaceSqlPasswords()

in Source/Actions/Microsoft.Deployment.Actions.AzureCustom/Reddit/DeployRedditAzureMLWebServiceFromFile.cs [133:192]


        private static string ReplaceSqlPasswords(SqlCredentials sqlCredentials, string json)
        {
            JObject obj = JsonUtility.GetJsonObjectFromJsonString(json);
            var nodes = obj["properties"]?["package"]?["nodes"];
            if (nodes != null)
            {
                foreach (var node in nodes.Children())
                {
                    var nodeConverted = node.Children().First();

                    if (nodeConverted.SelectToken("parameters") != null)
                    {
                        if (nodeConverted["parameters"]["Database Server Name"] != null && nodeConverted["parameters"]["Database Server Name"]["value"] != null)
                        {
                            nodeConverted["parameters"]["Database Server Name"]["value"] = sqlCredentials.Server;
                        }

                        if (nodeConverted["parameters"]["Database Name"] != null && nodeConverted["parameters"]["Database Name"]["value"] != null)
                        {
                            nodeConverted["parameters"]["Database Name"]["value"] = sqlCredentials.Database;
                        }

                        if (nodeConverted["parameters"]["Server User Account Name"] != null && nodeConverted["parameters"]["Server User Account Name"]["value"] != null)
                        {
                            nodeConverted["parameters"]["Server User Account Name"]["value"] = sqlCredentials.Username;
                        }

                        if (nodeConverted["parameters"]["Server User Account Password"] != null && nodeConverted["parameters"]["Server User Account Password"]["value"] != null)
                        {
                            nodeConverted["parameters"]["Server User Account Password"]["value"] = sqlCredentials.Password;
                        }
                    }
                }


                if (obj["properties"].SelectToken("parameters") != null)
                {
                    if (obj["properties"]["parameters"]["database server name"] != null && obj["properties"]["parameters"]["database server name"]["value"] != null)
                    {
                        obj["properties"]["parameters"]["database server name"]["value"] = sqlCredentials.Server;
                    }

                    if (obj["properties"]["parameters"]["database name"] != null && obj["properties"]["parameters"]["database name"]["value"] != null)
                    {
                        obj["properties"]["parameters"]["database name"]["value"] = sqlCredentials.Database;
                    }

                    if (obj["properties"]["parameters"]["user name"] != null && obj["properties"]["parameters"]["user name"]["value"] != null)
                    {
                        obj["properties"]["parameters"]["user name"]["value"] = sqlCredentials.Username;
                    }

                    if (obj["properties"]["parameters"]["Server User Account Password"] != null && obj["properties"]["parameters"]["Server User Account Password"]["value"] != null)
                    {
                        obj["properties"]["parameters"]["Server User Account Password"]["value"] = sqlCredentials.Password;
                    }
                }
            }
            return obj.ToString();
        }