protected override void ProcessRecord()
{
string rawJson;
Experiment exp = Sdk.GetExperimentById(GetWorkspaceSetting(), ExperimentId, out rawJson);
if (exp.Status.StatusCode != "Finished")
{
WriteWarning("Experiment is not a finished state. The transform may have not been produced, or it may be a cached version from a previous run.");
}
string familyId = null;
if (Overwrite.IsPresent) // overwrite an existing transform of the same name, if it exists
{
UserAsset[] transforms = Sdk.GetTransforms(GetWorkspaceSetting());
UserAsset transformToOverwrite = transforms.SingleOrDefault(aa => aa.Name.ToLower().Trim() == TransformName.ToLower().Trim());
if (transformToOverwrite != null)
familyId = transformToOverwrite.FamilyId;
}
Sdk.PromoteUserAsset(GetWorkspaceSetting(), ExperimentId, TransformModuleNodeId, NodeOutputPortName, TransformName, TransformDescription, UserAssetType.Transform, familyId);
WriteObject(string.Format("Transform \"{0}\" has been successfully promoted.", TransformName));
}
}