public List <OptionSettingItem> GetDeploymentBundleSettings(DeploymentBundleTypes deploymentBundleTypes) { var deploymentBundleDefinitionsPath = DeploymentBundleDefinitionLocator.FindDeploymentBundleDefinitionPath(); try { foreach (var deploymentBundleFile in Directory.GetFiles(deploymentBundleDefinitionsPath, "*.deploymentbundle", SearchOption.TopDirectoryOnly)) { try { var content = File.ReadAllText(deploymentBundleFile); var definition = JsonConvert.DeserializeObject <DeploymentBundleDefinition>(content); if (definition.Type.Equals(deploymentBundleTypes)) { return(definition.Parameters); } } catch (Exception e) { throw new Exception($"Failed to Deserialize Deployment Bundle [{deploymentBundleFile}]: {e.Message}", e); } } } catch (IOException) { throw new NoDeploymentBundleDefinitionsFoundException("Failed to find a deployment bundle definition"); } throw new NoDeploymentBundleDefinitionsFoundException("Failed to find a deployment bundle definition"); }
public DeploymentBundleDefinition GetDeploymentBundleDefinition(Recommendation recommendation) { var deploymentBundleDefinitionsPath = DeploymentBundleDefinitionLocator.FindDeploymentBundleDefinitionPath(); try { foreach (var deploymentBundleFile in Directory.GetFiles(deploymentBundleDefinitionsPath, "*.deploymentbundle", SearchOption.TopDirectoryOnly)) { try { var content = File.ReadAllText(deploymentBundleFile); var definition = JsonConvert.DeserializeObject <DeploymentBundleDefinition>(content); if (definition.Type.Equals(recommendation.Recipe.DeploymentBundle)) { return(definition); } } catch (Exception e) { throw new Exception($"Failed to Deserialize Deployment Bundle [{deploymentBundleFile}]: {e.Message}", e); } } } catch (IOException) { throw new NoDeploymentBundleDefinitionsFoundException(); } throw new NoDeploymentBundleDefinitionsFoundException(); }