public PSArtifact CreateArtifact(string scope, string blueprintName, string artifactName, Artifact artifactObject) { var artifact = blueprintManagementClient.Artifacts.CreateOrUpdate(scope, blueprintName, artifactName, artifactObject); PSArtifact psArtifact = null; switch (artifact) { case TemplateArtifact templateArtifact: psArtifact = PSTemplateArtifact.FromArtifactModel(artifact as TemplateArtifact, scope); break; case PolicyAssignmentArtifact policyArtifact: psArtifact = PSPolicyAssignmentArtifact.FromArtifactModel(artifact as PolicyAssignmentArtifact, scope); break; case RoleAssignmentArtifact roleAssignmentArtifact: psArtifact = PSRoleAssignmentArtifact.FromArtifactModel(artifact as RoleAssignmentArtifact, scope); break; default: throw new NotSupportedException(Resources.ArtifactTypeNotSupported); } return(psArtifact); }
public PSArtifact GetArtifact(string scope, string blueprintName, string artifactName, string version) { var artifact = string.IsNullOrEmpty(version) ? blueprintManagementClient.Artifacts.Get(scope, blueprintName, artifactName) : blueprintManagementClient.PublishedArtifacts.Get(scope, blueprintName, artifactName, version); PSArtifact psArtifact = null; switch (artifact) { case TemplateArtifact templateArtifact: psArtifact = PSTemplateArtifact.FromArtifactModel(artifact as TemplateArtifact, scope); break; case PolicyAssignmentArtifact policyArtifact: psArtifact = PSPolicyAssignmentArtifact.FromArtifactModel(artifact as PolicyAssignmentArtifact, scope); break; case RoleAssignmentArtifact roleAssignmentArtifact: psArtifact = PSRoleAssignmentArtifact.FromArtifactModel(artifact as RoleAssignmentArtifact, scope); break; default: throw new NotSupportedException(Resources.ArtifactTypeNotSupported); } return(psArtifact); }
protected void ThrowIfArtifactExits(string scope, string blueprintName, string artifactName) { PSArtifact artifact = null; try { artifact = BlueprintClient.GetArtifact(scope, blueprintName, artifactName, null); } catch (Exception ex) { if (ex is CloudException cex && cex.Response.StatusCode != System.Net.HttpStatusCode.NotFound) { // if exception is for a reason other than .NotFound, pass it to the caller. throw; } } if (artifact != null) { throw new Exception(string.Format(Resources.ArtifactExists, artifactName, blueprintName)); } }
public string GetBlueprintArtifactJsonFromObject(string scope, string blueprintName, PSArtifact artifact, string version) { var artifactObj = string.IsNullOrEmpty(version) ? blueprintManagementClient.Artifacts.Get(scope, blueprintName, artifact.Name) : blueprintManagementClient.PublishedArtifacts.Get(scope, blueprintName, version, artifact.Name); return(JsonConvert.SerializeObject(artifactObj, DefaultJsonSettings.SerializerSettings)); }