in tasks/Node/src/tasks/AzureDtlCreateVM/task.ts [278:300]
async function removeFailedResources(armClient: ResourceManagementClient, labRgName: string, deploymentName: string, deleteLabVm: boolean, deleteDeployment: boolean): Promise<void> {
try {
// Delete the failed lab VM.
if (deleteLabVm) {
const resourceId: string = await deployutil.getDeploymentTargetResourceId(armClient, labRgName, deploymentName);
if (resourceId) {
console.log(`Removing previously created lab virtual machine with resource ID '${resourceId}'.`);
await armClient.resources.deleteById(resourceId, '2018-10-15-preview');
}
else {
console.log('Resource identifier is not available, will not attempt to remove corresponding resouce before retrying.');
}
}
// Delete the failed deployment.
if (deleteDeployment) {
console.log(`Removing previously created deployment '${deploymentName}' in resource group '${labRgName}'.`);
await armClient.deployments.deleteMethod(labRgName, deploymentName);
}
} catch (error) {
tl.warning(`Unable to clean-up failed resources. Operation failed with error ${JSON.stringify(error)}`);
}
}