Skip to content

Commit 8b3a818

Browse files
authored
Project ARM template fixes. (#34318)
* remove managed network creation from project template * remove LAW creation from project ARM template * update project test
1 parent e3c6bf9 commit 8b3a818

File tree

2 files changed

+26
-27
lines changed

2 files changed

+26
-27
lines changed

sdk/ai/azure-ai-resources/tests/projects/e2etests/test_project_operations.py

Lines changed: 26 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
import pytest
33

44
from azure.ai.resources.client import AIClient
5-
from azure.ai.resources.entities import Project
5+
from azure.ai.resources.entities import Project, AIResource
66
from azure.core.exceptions import ResourceNotFoundError
77
from devtools_testutils import is_live
88

@@ -33,22 +33,34 @@ def test_project_get_and_list(self, ai_client: AIClient):
3333
# DEV NOTE: due to how long it takes for 3 LROPollers to resolve, this test can easily take a couple minutes to run in live mode
3434
@pytest.mark.skipif(condition=not is_live(), reason="Random generation in ARM template(?) makes create recordings useless.")
3535
def test_create_update_and_delete(self, ai_client: AIClient, rand_num: Callable[[], str]):
36-
new_local_project = Project(
37-
name="e2eTestProj" + rand_num(),
38-
ai_resource=f"/subscriptions/{ai_client.subscription_id}/resourceGroups/{ai_client.resource_group_name}"
39-
+ f"/providers/Microsoft.MachineLearningServices/workspaces/{ai_client.ai_resource_name}",
40-
description="Transient test project. Delete if seen.",
41-
)
42-
created_project = ai_client.projects.begin_create(project=new_local_project).result()
43-
assert created_project.name == new_local_project.name
44-
assert created_project.ai_resource == new_local_project.ai_resource
36+
try:
37+
# Create none values to make cleanup easier
38+
created_project = None
39+
created_resource = None
40+
# create AI resource to house project
41+
created_resource = ai_client.ai_resources.begin_create(ai_resource=AIResource(
42+
name="e2eTestResource" + rand_num(),
43+
)).result()
4544

45+
# Create project with above AI resource as parent.
46+
new_local_project = Project(
47+
name="e2eTestProj" + rand_num(),
48+
ai_resource=created_resource.id,
49+
description="Transient test project. Delete if seen.",
50+
)
51+
created_project = ai_client.projects.begin_create(project=new_local_project).result()
52+
assert created_project.name == new_local_project.name
53+
assert created_project.ai_resource == new_local_project.ai_resource
54+
finally:
55+
if created_project:
56+
ai_client.projects.begin_delete(name=created_project.name, delete_dependent_resources=True).wait()
57+
# Ensure that project was deleted
58+
with pytest.raises(ResourceNotFoundError):
59+
ai_client.projects.get(name=created_project.name)
60+
if created_resource:
61+
ai_client.ai_resources.begin_delete(name=created_resource.name, delete_dependent_resources=True).wait()
4662

47-
delete_poller = ai_client.projects.begin_delete(name=created_project.name, delete_dependent_resources=True)
48-
delete_poller.wait()
4963

50-
with pytest.raises(ResourceNotFoundError):
51-
ai_client.projects.get(name=created_project.name)
5264

5365
# This test should be run live as little as possible, since it requires a special client setup that
5466
# most users don't have locally, and doesn't clean up easily. Because of this, this test shouldn't ever

sdk/ml/azure-ai-ml/azure/ai/ml/_arm_deployments/arm_templates/workspace_project.json

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -663,18 +663,6 @@
663663
"containerRegistryList": "[if(not(equals(parameters('containerRegistryOption'), 'none')), array(variables('containerRegistry')), variables('emptyArray'))]"
664664
},
665665
"resources": [
666-
{
667-
"condition": "[and(variables('enablePE'), equals(parameters('applicationInsightsOption'), 'new'))]",
668-
"type": "Microsoft.OperationalInsights/workspaces",
669-
"tags": "[parameters('tagValues')]",
670-
"apiVersion": "2020-08-01",
671-
"name": "[parameters('logAnalyticsName')]",
672-
"location": "[if(or(equals(toLower(parameters('applicationInsightsLocation')),'westcentralus'), equals(toLower(parameters('applicationInsightsLocation')),'eastus2euap'), equals(toLower(parameters('applicationInsightsLocation')),'centraluseuap')),'southcentralus', parameters('applicationInsightsLocation'))]",
673-
"kind": "web",
674-
"properties": {
675-
"Application_Type": "web"
676-
}
677-
},
678666
{
679667
"condition": "[variables('enablePE')]",
680668
"type": "Microsoft.MachineLearningServices/workspaces",
@@ -690,7 +678,6 @@
690678
"primaryUserAssignedIdentity": "[parameters('primaryUserAssignedIdentity')]",
691679
"hubResourceId": "[parameters('workspace_hub')]",
692680
"enableDataIsolation": "[parameters('enable_data_isolation')]",
693-
"managedNetwork": "[parameters('managedNetwork')]",
694681
"publicNetworkAccess": "[parameters('publicNetworkAccess')]",
695682
"serverlessComputeSettings": "[parameters('serverless_compute_settings')]"
696683
}

0 commit comments

Comments
 (0)