diff --git a/src/Aspire.Hosting.AppHost/Aspire.Hosting.AppHost.csproj b/src/Aspire.Hosting.AppHost/Aspire.Hosting.AppHost.csproj
index 1c1054c6cc8..45b7a0f197a 100644
--- a/src/Aspire.Hosting.AppHost/Aspire.Hosting.AppHost.csproj
+++ b/src/Aspire.Hosting.AppHost/Aspire.Hosting.AppHost.csproj
@@ -16,7 +16,7 @@
-
+
diff --git a/src/Aspire.Hosting.AppHost/AspireAppHostConfiguration.json b/src/Aspire.Hosting.AppHost/AspireAppHostConfiguration.json
new file mode 100644
index 00000000000..c0278619618
--- /dev/null
+++ b/src/Aspire.Hosting.AppHost/AspireAppHostConfiguration.json
@@ -0,0 +1,9 @@
+{
+ "type": "object",
+ "properties": {
+ "Parameters": {
+ "description": ".NET Aspire parameter configuration. A parameter's value will be retrieved from the property with the same name.",
+ "type": "object"
+ }
+ }
+}
diff --git a/src/Aspire.Hosting.AppHost/build/Aspire.Hosting.AppHost.targets b/src/Aspire.Hosting.AppHost/build/Aspire.Hosting.AppHost.targets
index 515139a4268..25f74ebe88a 100644
--- a/src/Aspire.Hosting.AppHost/build/Aspire.Hosting.AppHost.targets
+++ b/src/Aspire.Hosting.AppHost/build/Aspire.Hosting.AppHost.targets
@@ -12,6 +12,11 @@
+
+
+
+
diff --git a/src/Aspire.Hosting.Azure/Aspire.Hosting.Azure.csproj b/src/Aspire.Hosting.Azure/Aspire.Hosting.Azure.csproj
index e9c3d39719d..fa92f7e675b 100644
--- a/src/Aspire.Hosting.Azure/Aspire.Hosting.Azure.csproj
+++ b/src/Aspire.Hosting.Azure/Aspire.Hosting.Azure.csproj
@@ -24,6 +24,10 @@
+
+
+
+
diff --git a/src/Aspire.Hosting.Azure/AspireAzureConfigurationSchema.json b/src/Aspire.Hosting.Azure/AspireAzureConfigurationSchema.json
new file mode 100644
index 00000000000..cb56857f97d
--- /dev/null
+++ b/src/Aspire.Hosting.Azure/AspireAzureConfigurationSchema.json
@@ -0,0 +1,44 @@
+{
+ "type": "object",
+ "properties": {
+ "Azure": {
+ "description": "Azure provisioning information. This section is used to create Azure resources for the app.",
+ "type": "object",
+ "properties": {
+ "SubscriptionId": {
+ "description": "Azure Subscription Id that will be used to host the resources.",
+ "type": "string"
+ },
+ "ResourceGroup": {
+ "description": "Azure Resource Group name where to create resources.",
+ "type": "string"
+ },
+ "ResourceGroupPrefix": {
+ "description": "Azure Resource Group prefix used in resource groups names created.",
+ "type": "string"
+ },
+ "AllowResourceGroupCreation": {
+ "description": "Flag that shows if it is allowed to create a resource group if not exists. Defaults to false if ResourceGroup is provided.",
+ "type": "boolean"
+ },
+ "Location": {
+ "description": "Azure Location that will be used to create resources.",
+ "type": "string"
+ },
+ "CredentialSource": {
+ "description": "Configures which Azure credential to use for provisioning.",
+ "enum": [
+ "AzureCli",
+ "AzurePowerShell",
+ "VisualStudio",
+ "VisualStudioCode",
+ "AzureDeveloperCli",
+ "InteractiveBrowser",
+ "Default"
+ ],
+ "default": "Default"
+ }
+ }
+ }
+ }
+}
diff --git a/src/Aspire.Hosting.Azure/buildTransitive/Aspire.Hosting.Azure.targets b/src/Aspire.Hosting.Azure/buildTransitive/Aspire.Hosting.Azure.targets
new file mode 100644
index 00000000000..43be5a0642c
--- /dev/null
+++ b/src/Aspire.Hosting.Azure/buildTransitive/Aspire.Hosting.Azure.targets
@@ -0,0 +1,6 @@
+
+
+
+
+